@sjcrh/proteinpaint-client 2.181.0 → 2.182.0

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 (950) hide show
  1. package/dist/2dmaf-SLBAWGPG.js +1371 -0
  2. package/dist/AIProjectAdmin-6SH5X3AF.js +830 -0
  3. package/dist/AppHeader-MVYNRMC7.js +833 -0
  4. package/dist/BoxPlot-HLGWW3IK.js +1295 -0
  5. package/dist/CorrelationVolcano-TZCYC3NI.js +617 -0
  6. package/dist/DE-2J2SK5UT.js +93 -0
  7. package/dist/DE-2J2SK5UT.js.map +7 -0
  8. package/dist/DEinput-QM3GOQHM.js +297 -0
  9. package/dist/DEinput-QM3GOQHM.js.map +7 -0
  10. package/dist/DifferentialAnalysis-DS7CQOT6.js +238 -0
  11. package/dist/Disco-U5I6NJUT.js +3199 -0
  12. package/dist/Disco.UI-J2B7GGEZ.js +242 -0
  13. package/dist/DmrPlot-D5W76QPY.js +640 -0
  14. package/dist/GB-LM5SGUG4.js +1125 -0
  15. package/dist/HicApp-YNBGAGKM.js +2248 -0
  16. package/dist/NumBinaryEditor-4QA5DQJT.js +268 -0
  17. package/dist/NumBinaryEditor-4QA5DQJT.js.map +7 -0
  18. package/dist/NumBinaryEditor.unit.spec-YWSIFTOJ.js +284 -0
  19. package/dist/NumContEditor-ZPLVZFLH.js +105 -0
  20. package/dist/NumContEditor.unit.spec-NBCFOCOX.js +167 -0
  21. package/dist/NumCustomBinEditor-TXEYRVPL.js +36 -0
  22. package/dist/NumCustomBinEditor.unit.spec-SQM63H4B.js +282 -0
  23. package/dist/NumDiscreteEditor-6C4OWX62.js +177 -0
  24. package/dist/NumDiscreteEditor-6C4OWX62.js.map +7 -0
  25. package/dist/NumDiscreteEditor.unit.spec-4HC4AGAM.js +200 -0
  26. package/dist/NumRegularBinEditor-VQAS3OXK.js +36 -0
  27. package/dist/NumRegularBinEditor.unit.spec-RGVEPB3Z.js +225 -0
  28. package/dist/NumSplineEditor-SXOJICHU.js +190 -0
  29. package/dist/NumSplineEditor-SXOJICHU.js.map +7 -0
  30. package/dist/NumSplineEditor.unit.spec-HF5E6ANH.js +197 -0
  31. package/dist/NumericDensity-LMLPMOSE.js +36 -0
  32. package/dist/NumericDensity.unit.spec-3ZI5EVON.js +219 -0
  33. package/dist/NumericHandler-Q6F6ANOS.js +37 -0
  34. package/dist/NumericHandler.unit.spec-E6Z5HUNZ.js +217 -0
  35. package/dist/RunChart2-XSNWNAIL.js +756 -0
  36. package/dist/SC-RA46YM57.js +733 -0
  37. package/dist/Volcano-75UDYPVB.js +1187 -0
  38. package/dist/WSIViewer-GYUUXCSJ.js +47933 -0
  39. package/dist/WsiSamplesPlot-KMI5S2EL.js +163 -0
  40. package/dist/adSandbox-JTK5XEQL.js +36 -0
  41. package/dist/alphaGenome-JRAV6WIY.js +173 -0
  42. package/dist/app-JKDZL23V.js +35 -0
  43. package/dist/app-OEARXM6E.js +47 -0
  44. package/dist/app.js +20 -20
  45. package/dist/bam-CYEPLBK4.js +857 -0
  46. package/dist/bam-CYEPLBK4.js.map +7 -0
  47. package/dist/barchart-GG5UFDG4.js +45 -0
  48. package/dist/barchart.data-KXA66FAL.js +22 -0
  49. package/dist/barchart.events-P2USOIR7.js +45 -0
  50. package/dist/barchart.integration.spec-5QSPQQLJ.js +1675 -0
  51. package/dist/block-6DVPQBSH.js +6200 -0
  52. package/dist/block-6DVPQBSH.js.map +7 -0
  53. package/dist/block.init-ZHX6DFWF.js +36 -0
  54. package/dist/block.mds.expressionrank-YMGYXXYT.js +357 -0
  55. package/dist/block.mds.geneboxplot-IAILQYX4.js +826 -0
  56. package/dist/block.mds.junction-BRNFNQMU.js +1543 -0
  57. package/dist/block.mds.svcnv-OHKC7YPO.js +6799 -0
  58. package/dist/block.svg-PNGK45HW.js +162 -0
  59. package/dist/block.tk.aicheck-SCIOJ4WN.js +281 -0
  60. package/dist/block.tk.ase-BABJ73GG.js +363 -0
  61. package/dist/block.tk.bam-LZWJ5BCQ.js +1904 -0
  62. package/dist/block.tk.bedgraphdot-7NQLC3XJ.js +382 -0
  63. package/dist/block.tk.bigwig.ui-VNY4SFD5.js +209 -0
  64. package/dist/block.tk.hicstraw-36A7VDRM.js +821 -0
  65. package/dist/block.tk.junction-D373YEMK.js +2362 -0
  66. package/dist/block.tk.junction.textmatrixui-FFII7J3X.js +197 -0
  67. package/dist/block.tk.ld-XGB6KMDO.js +97 -0
  68. package/dist/block.tk.menu-PEZANZBZ.js +1027 -0
  69. package/dist/block.tk.pgv-MU5BPTT2.js +942 -0
  70. package/dist/brainImaging-LVJON47N.js +421 -0
  71. package/dist/chat-5FDIAQJ4.js +148 -0
  72. package/dist/chunk-22NJUYET.js +281 -0
  73. package/dist/chunk-22NJUYET.js.map +7 -0
  74. package/dist/chunk-2J3566TA.js +215 -0
  75. package/dist/chunk-2J3566TA.js.map +7 -0
  76. package/dist/chunk-2OSEZCWZ.js +205 -0
  77. package/dist/chunk-5OHXYXLD.js +46 -0
  78. package/dist/chunk-5OHXYXLD.js.map +7 -0
  79. package/dist/chunk-6MSCYO7K.js +119 -0
  80. package/dist/chunk-7A7NMCQ3.js +534 -0
  81. package/dist/chunk-7FEHI46K.js +20456 -0
  82. package/dist/chunk-7FEHI46K.js.map +7 -0
  83. package/dist/chunk-AETE4F7R.js +252 -0
  84. package/dist/chunk-AZYDW5T7.js +441 -0
  85. package/dist/chunk-B6HCIAM3.js +34 -0
  86. package/dist/chunk-BEWDIM6H.js +42 -0
  87. package/dist/chunk-BEWDIM6H.js.map +7 -0
  88. package/dist/chunk-CCIZJAXB.js +2815 -0
  89. package/dist/chunk-DHZL3FBC.js +107 -0
  90. package/dist/chunk-DONWY7TP.js +39 -0
  91. package/dist/chunk-DVDDXOWT.js +815 -0
  92. package/dist/chunk-E6DRQJJT.js +480 -0
  93. package/dist/chunk-ESKU6LNC.js +36 -0
  94. package/dist/chunk-F6V4AYWP.js +177 -0
  95. package/dist/chunk-FBAJTPBU.js +302 -0
  96. package/dist/chunk-FGMPKWT5.js +371 -0
  97. package/dist/chunk-FK4MYVW2.js +261 -0
  98. package/dist/chunk-FMBJ4SKC.js +98 -0
  99. package/dist/chunk-FOEZG4VX.js +505 -0
  100. package/dist/chunk-FOEZG4VX.js.map +7 -0
  101. package/dist/chunk-FQRLSKJC.js +226 -0
  102. package/dist/chunk-G6ELKVBG.js +629 -0
  103. package/dist/chunk-GKK3CZ6H.js +4207 -0
  104. package/dist/chunk-GKK3CZ6H.js.map +7 -0
  105. package/dist/chunk-GO5SIPFE.js +194 -0
  106. package/dist/chunk-GPOECA3V.js +386 -0
  107. package/dist/chunk-GTOY3JJO.js +288 -0
  108. package/dist/chunk-GTOY3JJO.js.map +7 -0
  109. package/dist/chunk-GW7DHJYH.js +439 -0
  110. package/dist/chunk-H2D7EVUA.js +158 -0
  111. package/dist/chunk-H2D7EVUA.js.map +7 -0
  112. package/dist/chunk-H2K5KZP7.js +95 -0
  113. package/dist/chunk-H5XFH3FV.js +153 -0
  114. package/dist/chunk-HAMDFQIX.js +228 -0
  115. package/dist/chunk-HH4QLSTK.js +4952 -0
  116. package/dist/chunk-IBTPGSYI.js +526 -0
  117. package/dist/chunk-IGEQI6MR.js +1561 -0
  118. package/dist/chunk-IGEQI6MR.js.map +7 -0
  119. package/dist/chunk-IIRU6VK2.js +2672 -0
  120. package/dist/chunk-ILF2GKBY.js +1205 -0
  121. package/dist/chunk-ILF2GKBY.js.map +7 -0
  122. package/dist/chunk-IP4T477W.js +92 -0
  123. package/dist/chunk-IQIXGTQV.js +84 -0
  124. package/dist/chunk-IQIXGTQV.js.map +7 -0
  125. package/dist/chunk-IXT4U5CE.js +91 -0
  126. package/dist/chunk-IXT4U5CE.js.map +7 -0
  127. package/dist/chunk-JHOGX5VE.js +272 -0
  128. package/dist/chunk-JOXUBWN3.js +381 -0
  129. package/dist/chunk-K57RR3FD.js +142 -0
  130. package/dist/chunk-K6JLCMVL.js +129 -0
  131. package/dist/chunk-KSFSM46X.js +100 -0
  132. package/dist/chunk-KVG7FTTK.js +470 -0
  133. package/dist/chunk-LEDPPLQK.js +158 -0
  134. package/dist/chunk-LUTT3MBZ.js +1150 -0
  135. package/dist/chunk-MDL2HG3N.js +257 -0
  136. package/dist/chunk-MDL2HG3N.js.map +7 -0
  137. package/dist/chunk-MNRYCG2S.js +1271 -0
  138. package/dist/chunk-MNRYCG2S.js.map +7 -0
  139. package/dist/chunk-MPJHDHBA.js +2784 -0
  140. package/dist/chunk-MXI3NXRB.js +407 -0
  141. package/dist/chunk-MXI3NXRB.js.map +7 -0
  142. package/dist/chunk-O4PXELXF.js +615 -0
  143. package/dist/chunk-ORPCSG6T.js +14 -0
  144. package/dist/chunk-OUKDZKSZ.js +334 -0
  145. package/dist/chunk-P5HLYAHP.js +1087 -0
  146. package/dist/chunk-PIACSJPH.js +148 -0
  147. package/dist/chunk-PQABAAEZ.js +31 -0
  148. package/dist/chunk-PSMDCZET.js +46 -0
  149. package/dist/chunk-RFIVPTMS.js +217 -0
  150. package/dist/chunk-RSU37SVQ.js +54 -0
  151. package/dist/chunk-RTC4U4PH.js +2327 -0
  152. package/dist/chunk-RTC4U4PH.js.map +7 -0
  153. package/dist/chunk-RZ5JP44H.js +276 -0
  154. package/dist/chunk-RZ5JP44H.js.map +7 -0
  155. package/dist/chunk-SPAIFVM2.js +1155 -0
  156. package/dist/chunk-T2HYA2KL.js +55 -0
  157. package/dist/chunk-TCPU43TU.js +1741 -0
  158. package/dist/chunk-TCPU43TU.js.map +7 -0
  159. package/dist/chunk-TE3DK3A6.js +147 -0
  160. package/dist/chunk-TIQPSXFJ.js +237 -0
  161. package/dist/chunk-TN5GSG34.js +26 -0
  162. package/dist/chunk-UBGTQMOO.js +52 -0
  163. package/dist/chunk-UE5ZYM63.js +48 -0
  164. package/dist/chunk-UQACPOCM.js +102 -0
  165. package/dist/chunk-UR3C4SCH.js +446 -0
  166. package/dist/chunk-UWX7W22M.js +121 -0
  167. package/dist/chunk-VJ37HKM6.js +368 -0
  168. package/dist/chunk-VJ37HKM6.js.map +7 -0
  169. package/dist/chunk-VLTDUJRM.js +293 -0
  170. package/dist/chunk-W6UUEAEP.js +6364 -0
  171. package/dist/chunk-X6UPDFDX.js +229 -0
  172. package/dist/chunk-X6UPDFDX.js.map +7 -0
  173. package/dist/chunk-XD6BFNMR.js +172 -0
  174. package/dist/chunk-XD6BFNMR.js.map +7 -0
  175. package/dist/chunk-XOBD3EAM.js +1425 -0
  176. package/dist/chunk-XOBD3EAM.js.map +7 -0
  177. package/dist/chunk-Y3TDC7NU.js +170 -0
  178. package/dist/chunk-YOTWMCT5.js +824 -0
  179. package/dist/chunk-YUMPQ3CJ.js +203 -0
  180. package/dist/chunk-ZIBWLDQI.js +230 -0
  181. package/dist/chunk-ZIBWLDQI.js.map +7 -0
  182. package/dist/condition-VHP2L4GM.js +330 -0
  183. package/dist/controls-N5Q7U7JR.js +39 -0
  184. package/dist/controls.config-NJMW4SLR.js +37 -0
  185. package/dist/correlation-3LDASF5I.js +96 -0
  186. package/dist/cuminc-UWJ23W6C.js +1147 -0
  187. package/dist/cuminc.integration.spec-OZYYET3W.js +676 -0
  188. package/dist/customdata.inputui-2FVCVSE4.js +285 -0
  189. package/dist/dataDownload-4S4PE5HX.js +328 -0
  190. package/dist/dataDownload.integration.spec-B57LEKFZ.js +191 -0
  191. package/dist/databrowser.ui-N6GHEQ2P.js +419 -0
  192. package/dist/dictionary-UP46QRYZ.js +98 -0
  193. package/dist/dnaMethylation-BOGAUAWA.js +36 -0
  194. package/dist/dnaMethylation.integration.spec-UAHBJSSJ.js +179 -0
  195. package/dist/e2pca-L5EBQJNP.js +348 -0
  196. package/dist/ep-Z67ORKUX.js +1254 -0
  197. package/dist/expclust.gdc.spec-SP7VOL64.js +305 -0
  198. package/dist/facet-HDB4VDGU.js +519 -0
  199. package/dist/geneExpClustering-6ZPOLTDJ.js +246 -0
  200. package/dist/geneExpression-T6YIG4XQ.js +312 -0
  201. package/dist/geneExpression-T7QUHV5S.js +36 -0
  202. package/dist/geneExpression.unit.spec-DO52L5IB.js +100 -0
  203. package/dist/geneORA-KOUDUWUO.js +276 -0
  204. package/dist/geneVariant-FVR76F6I.js +39 -0
  205. package/dist/geneVariant-I5QUITKG.js +37 -0
  206. package/dist/geneVariant.integration.spec-D4IRM7B5.js +196 -0
  207. package/dist/genefusion.ui-35IYSZD7.js +249 -0
  208. package/dist/geneset-7ZHJ5KWK.js +194 -0
  209. package/dist/genomeBrowser.spec-VXASVLNH.js +279 -0
  210. package/dist/grin2-7NM56COO.js +1554 -0
  211. package/dist/grin2-IY26UUQI.js +1031 -0
  212. package/dist/gsea-TORO46C6.js +45 -0
  213. package/dist/hierCluster-3BKEGW6P.js +58 -0
  214. package/dist/hierCluster-HM3LOM6V.js +62 -0
  215. package/dist/hierCluster.config-LDO5IGQ5.js +38 -0
  216. package/dist/hierCluster.integration.spec-XO5R6CQT.js +374 -0
  217. package/dist/hierCluster.interactivity-NVQ6262K.js +52 -0
  218. package/dist/hierCluster.renderers-SWPPNBLU.js +21 -0
  219. package/dist/imagePlot-V4WLAPV6.js +139 -0
  220. package/dist/importPlot-NZKQEOX4.js +8 -0
  221. package/dist/isoformExpression-TIZBIGNL.js +38 -0
  222. package/dist/isoformExpression.unit.spec-WHH5LPFG.js +124 -0
  223. package/dist/isoformExpression.unit.spec-WHH5LPFG.js.map +7 -0
  224. package/dist/launch.adhoc-JYEN42NM.js +40 -0
  225. package/dist/leftlabel.sample-43DL3J3H.js +257 -0
  226. package/dist/legacyDataset-QRSNRVUA.js +119 -0
  227. package/dist/lollipop-NMWZ4FVF.js +166 -0
  228. package/dist/maf-DS3EOVGV.js +450 -0
  229. package/dist/maf-DS3EOVGV.js.map +7 -0
  230. package/dist/maftimeline-ZB2753S7.js +591 -0
  231. package/dist/matrix-RCGQWQ3C.js +57 -0
  232. package/dist/matrix-WTTEK4FT.js +62 -0
  233. package/dist/matrix.cells-UO5ASQ35.js +28 -0
  234. package/dist/matrix.config-3UQAT3QR.js +39 -0
  235. package/dist/matrix.controls-PRZ77K5L.js +37 -0
  236. package/dist/matrix.data-4W73RQ3H.js +25 -0
  237. package/dist/matrix.groups-5VMPI7SA.js +26 -0
  238. package/dist/matrix.integration.spec-2F5LDLC2.js +3070 -0
  239. package/dist/matrix.interactivity-MIPZ6ELV.js +40 -0
  240. package/dist/matrix.layout-EO5LVYRO.js +42 -0
  241. package/dist/matrix.legend-QBFBFEUG.js +22 -0
  242. package/dist/matrix.renderers-ERJXVCQL.js +36 -0
  243. package/dist/matrix.serieses-E23EPXHA.js +21 -0
  244. package/dist/matrix.sort-I4UGMEXR.js +27 -0
  245. package/dist/matrix.sort.unit.spec-CRGF6CSE.js +470 -0
  246. package/dist/matrix.sorterUi-YLSYTYLE.js +18 -0
  247. package/dist/matrix.sorterUi.unit.spec-ENG3ICOO.js +340 -0
  248. package/dist/mavb-5WR7OJHI.js +730 -0
  249. package/dist/mds.fimo-3ZRH7BBJ.js +516 -0
  250. package/dist/mds.samplescatterplot-RPXR2FVK.js +1548 -0
  251. package/dist/mds.survivalplot-WSSMYUZD.js +481 -0
  252. package/dist/oncomatrix-JKYPUJQR.js +293 -0
  253. package/dist/oncomatrix-JKYPUJQR.js.map +7 -0
  254. package/dist/oncomatrix.spec-OEGU4DYK.js +446 -0
  255. package/dist/plot.2dvaf-ZGARLQNK.js +375 -0
  256. package/dist/plot.app-TKUJH3LK.js +39 -0
  257. package/dist/plot.barplot-FEIPGDZ2.js +100 -0
  258. package/dist/plot.boxplot-6RASUMZB.js +150 -0
  259. package/dist/plot.brainImaging-ZJPFWX2W.js +51 -0
  260. package/dist/plot.disco-2KTKB3XX.js +101 -0
  261. package/dist/plot.dzi-PC34YI6Y.js +33 -0
  262. package/dist/plot.ssgq-Z4UNJKWO.js +137 -0
  263. package/dist/plot.vaf2cov-NZ4WULKT.js +257 -0
  264. package/dist/plot.wsi-YYXFAZWY.js +36 -0
  265. package/dist/polar-X2GPIBLB.js +184 -0
  266. package/dist/polar2-TZ553QQH.js +226 -0
  267. package/dist/profile.spec-VB6VMFLY.js +78 -0
  268. package/dist/profileBarchart-SKJSTC7B.js +265 -0
  269. package/dist/profileForms-RLOGSMAQ.js +438 -0
  270. package/dist/profilePlot-267ZS3RG.js +52 -0
  271. package/dist/profileRadar-KGOBHCSF.js +261 -0
  272. package/dist/profileRadarFacility-MCJKSHUM.js +261 -0
  273. package/dist/proteomeAbundance-JUYAYO5I.js +63 -0
  274. package/dist/proteomeAbundance-PGHZSVAF.js +19 -0
  275. package/dist/qualitative-3IECKKJM.js +41 -0
  276. package/dist/regression-J6FFRPXN.js +54 -0
  277. package/dist/regression.inputs-T7LWBSYZ.js +46 -0
  278. package/dist/regression.inputs.term-TT7PNX6G.js +46 -0
  279. package/dist/regression.inputs.values.table-SHFUNKCS.js +43 -0
  280. package/dist/regression.integration.spec-QKHMJTHA.js +784 -0
  281. package/dist/regression.results-D4WX6VIV.js +38 -0
  282. package/dist/regression.spec-7SW55L7X.js +706 -0
  283. package/dist/report-QYOZ4BRF.js +220 -0
  284. package/dist/sampleScatter.spec-JCHFMGNF.js +200 -0
  285. package/dist/sampleView-7RPKNAZC.js +46 -0
  286. package/dist/samplelst-4WNPHZVG.js +109 -0
  287. package/dist/samplematrix-CG52DSXJ.js +2196 -0
  288. package/dist/sc-OJSWILSA.js +84 -0
  289. package/dist/scatter-LG2RMMEC.js +800 -0
  290. package/dist/scatter.integration.spec-QPANYTKW.js +1194 -0
  291. package/dist/selectGenomeWithTklst-QXRVE6N4.js +132 -0
  292. package/dist/singleCellCellType-XBSRL33U.js +36 -0
  293. package/dist/singleCellCellType.unit.spec-YZX4CSXA.js +177 -0
  294. package/dist/singleCellGeneExpression-64ECP62X.js +36 -0
  295. package/dist/singleCellGeneExpression.unit.spec-CFHFXMA6.js +163 -0
  296. package/dist/singleCellPlot-E5F62JY6.js +51 -0
  297. package/dist/singlecell-FCY5EOUV.js +84 -0
  298. package/dist/singlecell-S7B5V7NK.js +1570 -0
  299. package/dist/snp-ACKX4GRX.js +36 -0
  300. package/dist/snp.unit.spec-QBGHKKUD.js +174 -0
  301. package/dist/snplocus-7EUOW7J7.js +206 -0
  302. package/dist/spliceevent.a53ss.diagram-ALQZA35Z.js +149 -0
  303. package/dist/spliceevent.exonskip.diagram-UF7WJA5R.js +275 -0
  304. package/dist/spliceevent.noeventdiagram-4HPGRNRR.js +458 -0
  305. package/dist/ssGSEA-FDRBBBLJ.js +36 -0
  306. package/dist/ssGSEA.unit.spec-EZEOWJVV.js +86 -0
  307. package/dist/summarizeCnvGeneexp-FTL2MGAJ.js +158 -0
  308. package/dist/summarizeGeneexpSurvival-DDIF4UW6.js +105 -0
  309. package/dist/summarizeMutationCnv-L3GL5YDY.js +159 -0
  310. package/dist/summarizeMutationDiagnosis-LALOJTHV.js +38 -0
  311. package/dist/summarizeMutationSurvival-TSNTSOBZ.js +97 -0
  312. package/dist/summary-YRHVS64T.js +47 -0
  313. package/dist/summary.integration.spec-766YQLQA.js +412 -0
  314. package/dist/summaryInput-VQ2X6GSX.js +218 -0
  315. package/dist/sunburst-XFOONS6K.js +282 -0
  316. package/dist/survival-FQXZH2MM.js +44 -0
  317. package/dist/survival-TVA3ZWVP.js +56 -0
  318. package/dist/survival.integration.spec-WFIOPD6A.js +787 -0
  319. package/dist/svgraph-4BFBO7EL.js +1385 -0
  320. package/dist/svmr-ML7GAIIA.js +3840 -0
  321. package/dist/table-SMLMUWPP.js +198 -0
  322. package/dist/termCollection-22CPTISZ.js +36 -0
  323. package/dist/termCollection-EE6AOIVA.js +177 -0
  324. package/dist/termCollection.unit.spec-4DIW3CJ3.js +206 -0
  325. package/dist/tk-ITZCKOQ5.js +44 -0
  326. package/dist/tp.ui-R6HVKCBC.js +1457 -0
  327. package/dist/tvs.density-AQ5GD437.js +18 -0
  328. package/dist/tvs.dt-2263TBEJ.js +37 -0
  329. package/dist/tvs.dtcnv.categorical-TRRHL33N.js +38 -0
  330. package/dist/tvs.dtcnv.continuous-GREYNF52.js +70 -0
  331. package/dist/tvs.dtfusion-XOX46L3M.js +38 -0
  332. package/dist/tvs.dtsnvindel-IDMXT53F.js +38 -0
  333. package/dist/tvs.dtsv-ZDWFYH2C.js +38 -0
  334. package/dist/tvs.numeric-ZN2R7BH3.js +21 -0
  335. package/dist/tvs.samplelst-GAP76HRH.js +102 -0
  336. package/dist/tvs.termCollection-GQ65UKSI.js +151 -0
  337. package/dist/violin-JGDL62YA.js +44 -0
  338. package/dist/violin.integration.spec-W4NN7LBY.js +1417 -0
  339. package/dist/violin.interactivity-H4RP4K5U.js +36 -0
  340. package/dist/violin.renderer-QPHLACDC.js +38 -0
  341. package/dist/vocabulary-7JACY4J2.js +39 -0
  342. package/package.json +2 -2
  343. package/dist/2dmaf-PFPBHIUI.js +0 -1371
  344. package/dist/AIProjectAdmin-H2GB5ZOX.js +0 -830
  345. package/dist/AppHeader-FCWML6WH.js +0 -833
  346. package/dist/BoxPlot-QKXGF76K.js +0 -1295
  347. package/dist/CorrelationVolcano-ZJ7Q6JBC.js +0 -617
  348. package/dist/DifferentialAnalysis-PWCFCWFY.js +0 -238
  349. package/dist/Disco-IE5JKIF2.js +0 -3199
  350. package/dist/Disco.UI-SR7LSJE3.js +0 -242
  351. package/dist/DmrPlot-UDY7GOSY.js +0 -640
  352. package/dist/GB-GNTOP5C6.js +0 -1125
  353. package/dist/HicApp-FZTJL3OA.js +0 -2248
  354. package/dist/NumBinaryEditor-R5QVG3C4.js +0 -266
  355. package/dist/NumBinaryEditor-R5QVG3C4.js.map +0 -7
  356. package/dist/NumBinaryEditor.unit.spec-BMVRI24W.js +0 -284
  357. package/dist/NumContEditor-6JT5D6IW.js +0 -105
  358. package/dist/NumContEditor.unit.spec-XBQF2SW6.js +0 -167
  359. package/dist/NumCustomBinEditor-MEKEFOQI.js +0 -36
  360. package/dist/NumCustomBinEditor.unit.spec-LEMQJHDT.js +0 -282
  361. package/dist/NumDiscreteEditor-U3N37XRQ.js +0 -170
  362. package/dist/NumDiscreteEditor-U3N37XRQ.js.map +0 -7
  363. package/dist/NumDiscreteEditor.unit.spec-WQM4DLKO.js +0 -200
  364. package/dist/NumRegularBinEditor-HQR5Y6P7.js +0 -36
  365. package/dist/NumRegularBinEditor.unit.spec-FL4IFT7L.js +0 -225
  366. package/dist/NumSplineEditor-OESWMWP5.js +0 -188
  367. package/dist/NumSplineEditor-OESWMWP5.js.map +0 -7
  368. package/dist/NumSplineEditor.unit.spec-HYOXO45B.js +0 -197
  369. package/dist/NumericDensity-GJZ4BBJS.js +0 -36
  370. package/dist/NumericDensity.unit.spec-6LXWAXW7.js +0 -219
  371. package/dist/NumericHandler-LZIMPOHS.js +0 -37
  372. package/dist/NumericHandler.unit.spec-ZSU35AMD.js +0 -217
  373. package/dist/RunChart2-7XV6TIFO.js +0 -756
  374. package/dist/SC-E4EYAG26.js +0 -733
  375. package/dist/Volcano-Z7TJK6PW.js +0 -1187
  376. package/dist/WSIViewer-ZH2XABLC.js +0 -47933
  377. package/dist/WsiSamplesPlot-BL47MDHQ.js +0 -163
  378. package/dist/adSandbox-V3NTKVBC.js +0 -36
  379. package/dist/alphaGenome-IQVFCSWQ.js +0 -173
  380. package/dist/app-GJLZ2G2U.js +0 -47
  381. package/dist/app-YSD2U64Q.js +0 -35
  382. package/dist/bam-TRIF3AIQ.js +0 -849
  383. package/dist/bam-TRIF3AIQ.js.map +0 -7
  384. package/dist/barchart-GLLUYTAJ.js +0 -45
  385. package/dist/barchart.data-FRYRGKH3.js +0 -22
  386. package/dist/barchart.events-WODVSHRN.js +0 -45
  387. package/dist/barchart.integration.spec-6POS3V3T.js +0 -1675
  388. package/dist/block-2QM37YSE.js +0 -6300
  389. package/dist/block-2QM37YSE.js.map +0 -7
  390. package/dist/block.init-7HDLKQVX.js +0 -36
  391. package/dist/block.mds.expressionrank-UIB25S6E.js +0 -357
  392. package/dist/block.mds.geneboxplot-4PQYO3MR.js +0 -826
  393. package/dist/block.mds.junction-DWFYZEC2.js +0 -1543
  394. package/dist/block.mds.svcnv-N3KJJ4GQ.js +0 -6799
  395. package/dist/block.svg-2HBDI7BT.js +0 -162
  396. package/dist/block.tk.aicheck-2M4522IQ.js +0 -281
  397. package/dist/block.tk.ase-URIKF6JD.js +0 -363
  398. package/dist/block.tk.bam-HTDMASHX.js +0 -1904
  399. package/dist/block.tk.bedgraphdot-RVKMSFCQ.js +0 -382
  400. package/dist/block.tk.bigwig.ui-7JPEOIKM.js +0 -209
  401. package/dist/block.tk.hicstraw-72J7UJ2J.js +0 -821
  402. package/dist/block.tk.junction-GGFMBCV5.js +0 -2362
  403. package/dist/block.tk.junction.textmatrixui-44SAYYWE.js +0 -197
  404. package/dist/block.tk.ld-XDKJFEOL.js +0 -97
  405. package/dist/block.tk.menu-46FOTM7H.js +0 -1027
  406. package/dist/block.tk.pgv-ZVONRT4B.js +0 -942
  407. package/dist/brainImaging-CSLO7ODJ.js +0 -421
  408. package/dist/chat-GMD22F3K.js +0 -148
  409. package/dist/chunk-22KWZOCN.js +0 -153
  410. package/dist/chunk-2K5DSRBJ.js +0 -84
  411. package/dist/chunk-2K5DSRBJ.js.map +0 -7
  412. package/dist/chunk-2NQ4TM74.js +0 -48
  413. package/dist/chunk-2TIYJ3PH.js +0 -815
  414. package/dist/chunk-2UWHV2SB.js +0 -261
  415. package/dist/chunk-2UWHV2SB.js.map +0 -7
  416. package/dist/chunk-3656ZY4T.js +0 -237
  417. package/dist/chunk-3TU6TRLQ.js +0 -98
  418. package/dist/chunk-4FJ5GS6P.js +0 -4202
  419. package/dist/chunk-4FJ5GS6P.js.map +0 -7
  420. package/dist/chunk-4FO7KZY2.js +0 -534
  421. package/dist/chunk-4OEOQX4L.js +0 -334
  422. package/dist/chunk-5HCB4HNL.js +0 -147
  423. package/dist/chunk-5ZICCKEH.js +0 -4952
  424. package/dist/chunk-6UU7VPDO.js +0 -272
  425. package/dist/chunk-6YLQN7FF.js +0 -441
  426. package/dist/chunk-74QJDBIP.js +0 -480
  427. package/dist/chunk-7FXPMQRW.js +0 -34
  428. package/dist/chunk-A2Y3GEUH.js +0 -228
  429. package/dist/chunk-AAEXTQT3.js +0 -330
  430. package/dist/chunk-AAEXTQT3.js.map +0 -7
  431. package/dist/chunk-AG6HVFQY.js +0 -504
  432. package/dist/chunk-AG6HVFQY.js.map +0 -7
  433. package/dist/chunk-AHLUW2BN.js +0 -129
  434. package/dist/chunk-AQ4OP4GR.js +0 -39
  435. package/dist/chunk-AYDXOUFX.js +0 -1275
  436. package/dist/chunk-AYDXOUFX.js.map +0 -7
  437. package/dist/chunk-BBIPZ2UF.js +0 -52
  438. package/dist/chunk-BBVOZ5BY.js +0 -230
  439. package/dist/chunk-BBVOZ5BY.js.map +0 -7
  440. package/dist/chunk-BHVDOW3W.js +0 -470
  441. package/dist/chunk-BNN32RI2.js +0 -36
  442. package/dist/chunk-BQLC6QOH.js +0 -368
  443. package/dist/chunk-BQLC6QOH.js.map +0 -7
  444. package/dist/chunk-C5QOWZK6.js +0 -629
  445. package/dist/chunk-CJJ6LDZM.js +0 -170
  446. package/dist/chunk-CJJ6LDZM.js.map +0 -7
  447. package/dist/chunk-D4U5X2QQ.js +0 -261
  448. package/dist/chunk-DV444SFD.js +0 -26
  449. package/dist/chunk-DWWAB4YQ.js +0 -102
  450. package/dist/chunk-FP5VKE3Z.js +0 -170
  451. package/dist/chunk-FVWCYGJL.js +0 -121
  452. package/dist/chunk-G2MAZI6I.js +0 -205
  453. package/dist/chunk-HLRNIO5K.js +0 -158
  454. package/dist/chunk-HTHH2B6D.js +0 -46
  455. package/dist/chunk-I7X6K4OL.js +0 -217
  456. package/dist/chunk-ITYEOGLB.js +0 -302
  457. package/dist/chunk-J6XKDYNZ.js +0 -276
  458. package/dist/chunk-J6XKDYNZ.js.map +0 -7
  459. package/dist/chunk-JDX4E7ZO.js +0 -381
  460. package/dist/chunk-JWX7GYHP.js +0 -95
  461. package/dist/chunk-KLFROH3F.js +0 -203
  462. package/dist/chunk-KQSN7PUK.js +0 -215
  463. package/dist/chunk-KQSN7PUK.js.map +0 -7
  464. package/dist/chunk-L2ED35QZ.js +0 -2815
  465. package/dist/chunk-L4QG7XZE.js +0 -46
  466. package/dist/chunk-L4QG7XZE.js.map +0 -7
  467. package/dist/chunk-LI7FE335.js +0 -371
  468. package/dist/chunk-LLPFFNLV.js +0 -526
  469. package/dist/chunk-LRV4VWRF.js +0 -94
  470. package/dist/chunk-LRV4VWRF.js.map +0 -7
  471. package/dist/chunk-M464GTNI.js +0 -615
  472. package/dist/chunk-MDN3K2BG.js +0 -229
  473. package/dist/chunk-MDN3K2BG.js.map +0 -7
  474. package/dist/chunk-N46WTUX7.js +0 -286
  475. package/dist/chunk-N46WTUX7.js.map +0 -7
  476. package/dist/chunk-NBMJ2UMA.js +0 -194
  477. package/dist/chunk-NI7VSKJI.js +0 -293
  478. package/dist/chunk-NTVM4ZPG.js +0 -2784
  479. package/dist/chunk-O64UTRAC.js +0 -252
  480. package/dist/chunk-OM326NV3.js +0 -100
  481. package/dist/chunk-P4ENJUBN.js +0 -386
  482. package/dist/chunk-PEKVBCIH.js +0 -824
  483. package/dist/chunk-PF6MKI4X.js +0 -92
  484. package/dist/chunk-PJTQP6RL.js +0 -54
  485. package/dist/chunk-PVSRVJBE.js +0 -1201
  486. package/dist/chunk-PVSRVJBE.js.map +0 -7
  487. package/dist/chunk-PZ3L3KM6.js +0 -55
  488. package/dist/chunk-QEHUEG4X.js +0 -1788
  489. package/dist/chunk-QEHUEG4X.js.map +0 -7
  490. package/dist/chunk-QXCVG66S.js +0 -2672
  491. package/dist/chunk-RIGZHHCP.js +0 -119
  492. package/dist/chunk-SEIANPCX.js +0 -142
  493. package/dist/chunk-SEQLC4AD.js +0 -177
  494. package/dist/chunk-SK7YVOQN.js +0 -148
  495. package/dist/chunk-SPPZB5ZQ.js +0 -158
  496. package/dist/chunk-SPPZB5ZQ.js.map +0 -7
  497. package/dist/chunk-T5KFRIP4.js +0 -1087
  498. package/dist/chunk-TTSNECVD.js +0 -1413
  499. package/dist/chunk-TTSNECVD.js.map +0 -7
  500. package/dist/chunk-TV74I3Y5.js +0 -43
  501. package/dist/chunk-TV74I3Y5.js.map +0 -7
  502. package/dist/chunk-TVXESYIR.js +0 -439
  503. package/dist/chunk-U3UR3U3F.js +0 -446
  504. package/dist/chunk-UFYU7AKL.js +0 -107
  505. package/dist/chunk-VIYGTRUZ.js +0 -6364
  506. package/dist/chunk-WCTH7CB3.js +0 -31
  507. package/dist/chunk-WGSWVYHY.js +0 -1155
  508. package/dist/chunk-WYZ4COTF.js +0 -226
  509. package/dist/chunk-WZRXJ5LL.js +0 -2370
  510. package/dist/chunk-WZRXJ5LL.js.map +0 -7
  511. package/dist/chunk-XZZLEHWC.js +0 -20328
  512. package/dist/chunk-XZZLEHWC.js.map +0 -7
  513. package/dist/chunk-Y7JAPSMG.js +0 -406
  514. package/dist/chunk-Y7JAPSMG.js.map +0 -7
  515. package/dist/chunk-YJ2HC4CP.js +0 -1150
  516. package/dist/chunk-ZLH4PJKX.js +0 -1658
  517. package/dist/chunk-ZLH4PJKX.js.map +0 -7
  518. package/dist/chunk-ZZSDYKD5.js +0 -14
  519. package/dist/condition-S52W57ZO.js +0 -330
  520. package/dist/controls-B4MTTPWO.js +0 -39
  521. package/dist/controls.config-6KBCTIPN.js +0 -37
  522. package/dist/correlation-VSBCBFFP.js +0 -96
  523. package/dist/cuminc-T5ZPAGVB.js +0 -1147
  524. package/dist/cuminc.integration.spec-2QT3IPHU.js +0 -676
  525. package/dist/customdata.inputui-5MHQQHJL.js +0 -285
  526. package/dist/dataDownload-S4EBNHMW.js +0 -328
  527. package/dist/dataDownload.integration.spec-OVSIWI34.js +0 -191
  528. package/dist/databrowser.ui-EAJS3NXV.js +0 -419
  529. package/dist/dictionary-CQHSMVYF.js +0 -98
  530. package/dist/dnaMethylation-G3F2INDH.js +0 -36
  531. package/dist/dnaMethylation.integration.spec-FWF4353K.js +0 -179
  532. package/dist/e2pca-SLXGPVHP.js +0 -348
  533. package/dist/ep-4HGUSDGJ.js +0 -1254
  534. package/dist/expclust.gdc.spec-JJ42ESKE.js +0 -305
  535. package/dist/facet-6WVTVKDV.js +0 -519
  536. package/dist/geneExpClustering-5LOZPD5X.js +0 -246
  537. package/dist/geneExpression-BJ46UGXW.js +0 -312
  538. package/dist/geneExpression-PTSZWKCM.js +0 -36
  539. package/dist/geneExpression.unit.spec-NW5HTO7F.js +0 -100
  540. package/dist/geneORA-H65EZ7QO.js +0 -276
  541. package/dist/geneVariant-T6GWOVZD.js +0 -39
  542. package/dist/geneVariant-WTDFZTXG.js +0 -37
  543. package/dist/geneVariant.integration.spec-OPSBRUM3.js +0 -196
  544. package/dist/genefusion.ui-RSBCC37C.js +0 -249
  545. package/dist/geneset-B67PAZVL.js +0 -194
  546. package/dist/genomeBrowser.spec-AUTULF4C.js +0 -279
  547. package/dist/grin2-CMBP7XVH.js +0 -1031
  548. package/dist/grin2-JVCNH3KW.js +0 -1554
  549. package/dist/gsea-H774WVPQ.js +0 -45
  550. package/dist/hierCluster-IQTXQUMI.js +0 -58
  551. package/dist/hierCluster-ZQJDXYBD.js +0 -62
  552. package/dist/hierCluster.config-ZHJTZK5L.js +0 -38
  553. package/dist/hierCluster.integration.spec-MSJ5GHHK.js +0 -374
  554. package/dist/hierCluster.interactivity-H2GNO6AA.js +0 -52
  555. package/dist/hierCluster.renderers-2TE6HMK2.js +0 -21
  556. package/dist/imagePlot-FMNMB7JZ.js +0 -139
  557. package/dist/importPlot-N66G43XX.js +0 -8
  558. package/dist/isoformExpression-B64WLO3H.js +0 -38
  559. package/dist/isoformExpression.unit.spec-D2R6CRKO.js +0 -126
  560. package/dist/isoformExpression.unit.spec-D2R6CRKO.js.map +0 -7
  561. package/dist/launch.adhoc-MPRAJ3GN.js +0 -40
  562. package/dist/leftlabel.sample-4JCKYXED.js +0 -257
  563. package/dist/legacyDataset-PBCPC5I7.js +0 -119
  564. package/dist/lollipop-25ADHT7O.js +0 -166
  565. package/dist/maf-POYTGXT4.js +0 -442
  566. package/dist/maf-POYTGXT4.js.map +0 -7
  567. package/dist/maftimeline-FOQF6O3X.js +0 -591
  568. package/dist/matrix-LHLAYDTQ.js +0 -57
  569. package/dist/matrix-ZKF7NRAD.js +0 -62
  570. package/dist/matrix.cells-H4TS74FJ.js +0 -28
  571. package/dist/matrix.config-HE7QUDER.js +0 -39
  572. package/dist/matrix.controls-VILCLNSC.js +0 -37
  573. package/dist/matrix.data-2OUWYD35.js +0 -25
  574. package/dist/matrix.groups-5BGJIOOJ.js +0 -26
  575. package/dist/matrix.integration.spec-DSXZHAEY.js +0 -3070
  576. package/dist/matrix.interactivity-VK3NWX5M.js +0 -40
  577. package/dist/matrix.layout-PUNMMNCC.js +0 -42
  578. package/dist/matrix.legend-QMERGVYU.js +0 -22
  579. package/dist/matrix.renderers-2KQ2NXSQ.js +0 -36
  580. package/dist/matrix.serieses-24G3XPJD.js +0 -21
  581. package/dist/matrix.sort-HTVT4K7C.js +0 -27
  582. package/dist/matrix.sort.unit.spec-EUVL76NB.js +0 -470
  583. package/dist/matrix.sorterUi-PJPFXWOJ.js +0 -18
  584. package/dist/matrix.sorterUi.unit.spec-QWL5Y4DQ.js +0 -340
  585. package/dist/mavb-UGM5SHEF.js +0 -730
  586. package/dist/mds.fimo-64US7RTE.js +0 -516
  587. package/dist/mds.samplescatterplot-JMXLXVIE.js +0 -1548
  588. package/dist/mds.survivalplot-RJ5UD3IU.js +0 -481
  589. package/dist/oncomatrix-ZFT3DRAP.js +0 -293
  590. package/dist/oncomatrix-ZFT3DRAP.js.map +0 -7
  591. package/dist/oncomatrix.spec-4YLKDGFE.js +0 -446
  592. package/dist/plot.2dvaf-DYSU6BBN.js +0 -375
  593. package/dist/plot.app-NFBVLAXZ.js +0 -39
  594. package/dist/plot.barplot-DBGTDK7J.js +0 -100
  595. package/dist/plot.boxplot-MCKZUROP.js +0 -150
  596. package/dist/plot.brainImaging-BBAVUEB4.js +0 -51
  597. package/dist/plot.disco-VGOEQYRL.js +0 -101
  598. package/dist/plot.dzi-YQIFOTZQ.js +0 -33
  599. package/dist/plot.ssgq-MU3BRTMC.js +0 -137
  600. package/dist/plot.vaf2cov-KDHZ7JXJ.js +0 -257
  601. package/dist/plot.wsi-G2TUGQF7.js +0 -36
  602. package/dist/polar-RCCZXZIU.js +0 -184
  603. package/dist/polar2-COQ3WIGW.js +0 -226
  604. package/dist/profile.spec-A4ZASR2T.js +0 -78
  605. package/dist/profileBarchart-GB4RK5DF.js +0 -265
  606. package/dist/profileForms-O5KBHRF6.js +0 -438
  607. package/dist/profilePlot-COCLCP5B.js +0 -52
  608. package/dist/profileRadar-4EE3YDOH.js +0 -261
  609. package/dist/profileRadarFacility-JYTSGA5H.js +0 -261
  610. package/dist/proteomeAbundance-JBVXUSD6.js +0 -19
  611. package/dist/proteomeAbundance-NQVU4DOW.js +0 -63
  612. package/dist/qualitative-QROOPDSI.js +0 -41
  613. package/dist/regression-7FQZ22OO.js +0 -54
  614. package/dist/regression.inputs-F62CES3A.js +0 -46
  615. package/dist/regression.inputs.term-BCGP7PX4.js +0 -46
  616. package/dist/regression.inputs.values.table-D3ZXZSH7.js +0 -43
  617. package/dist/regression.integration.spec-P2BBTT2O.js +0 -784
  618. package/dist/regression.results-JX6RJQQP.js +0 -38
  619. package/dist/regression.spec-ROME7T33.js +0 -706
  620. package/dist/report-B6MM4T6B.js +0 -220
  621. package/dist/sampleScatter.spec-EPCMC3SR.js +0 -200
  622. package/dist/sampleView-77EAJ75T.js +0 -46
  623. package/dist/samplelst-CX4NQWA7.js +0 -109
  624. package/dist/samplematrix-PYQFAH64.js +0 -2196
  625. package/dist/sc-X6SI5VVI.js +0 -84
  626. package/dist/scatter-ZFFHAI4F.js +0 -800
  627. package/dist/scatter.integration.spec-NN43OXRN.js +0 -1194
  628. package/dist/selectGenomeWithTklst-CZMVTBMD.js +0 -132
  629. package/dist/singleCellCellType-GOBX7JKV.js +0 -36
  630. package/dist/singleCellCellType.unit.spec-F344QMTQ.js +0 -177
  631. package/dist/singleCellGeneExpression-BLMNMEAI.js +0 -36
  632. package/dist/singleCellGeneExpression.unit.spec-6ZEPUFWC.js +0 -163
  633. package/dist/singleCellPlot-HLD7PLQH.js +0 -51
  634. package/dist/singlecell-HL4GLGIA.js +0 -1570
  635. package/dist/singlecell-JQFPINRS.js +0 -84
  636. package/dist/snp-EAUNFDAV.js +0 -36
  637. package/dist/snp.unit.spec-AVLPMAWI.js +0 -174
  638. package/dist/snplocus-2J7OA6OL.js +0 -206
  639. package/dist/spliceevent.a53ss.diagram-4DU2U7NW.js +0 -149
  640. package/dist/spliceevent.exonskip.diagram-GG5FGXOK.js +0 -275
  641. package/dist/spliceevent.noeventdiagram-T6RNIMCM.js +0 -458
  642. package/dist/ssGSEA-XJWLRVFQ.js +0 -36
  643. package/dist/ssGSEA.unit.spec-MQ23ODYO.js +0 -86
  644. package/dist/summarizeCnvGeneexp-CJPC76RM.js +0 -158
  645. package/dist/summarizeGeneexpSurvival-FGCFZTVG.js +0 -105
  646. package/dist/summarizeMutationCnv-4E7R2NHQ.js +0 -159
  647. package/dist/summarizeMutationDiagnosis-ZVX7AZK7.js +0 -38
  648. package/dist/summarizeMutationSurvival-EWXD7TCT.js +0 -97
  649. package/dist/summary-VUYBKQOC.js +0 -47
  650. package/dist/summary.integration.spec-EPBV5XCT.js +0 -412
  651. package/dist/summaryInput-YX5IRGWM.js +0 -218
  652. package/dist/sunburst-HPDML45I.js +0 -282
  653. package/dist/survival-E6SRRXBB.js +0 -44
  654. package/dist/survival-XOXDPXZR.js +0 -56
  655. package/dist/survival.integration.spec-SJBPJZGJ.js +0 -787
  656. package/dist/svgraph-D23WG3UE.js +0 -1385
  657. package/dist/svmr-UFC4TKWV.js +0 -3840
  658. package/dist/table-US2K6IYZ.js +0 -198
  659. package/dist/termCollection-E7S57CIN.js +0 -177
  660. package/dist/termCollection-ZMP3VE2G.js +0 -36
  661. package/dist/termCollection.unit.spec-MDWK6XH3.js +0 -206
  662. package/dist/tk-TLQJK6R4.js +0 -44
  663. package/dist/tp.ui-NQEAKWUH.js +0 -1457
  664. package/dist/tvs.density-HSVPDDGA.js +0 -18
  665. package/dist/tvs.dt-U2MINIBH.js +0 -37
  666. package/dist/tvs.dtcnv.categorical-2OOAZJKC.js +0 -38
  667. package/dist/tvs.dtcnv.continuous-5ETKBJ52.js +0 -70
  668. package/dist/tvs.dtfusion-EB4PPR3Y.js +0 -38
  669. package/dist/tvs.dtsnvindel-IRQPTKQF.js +0 -38
  670. package/dist/tvs.dtsv-TOVXZJCR.js +0 -38
  671. package/dist/tvs.numeric-ICUGA4WY.js +0 -21
  672. package/dist/tvs.samplelst-4SCH543Y.js +0 -102
  673. package/dist/tvs.termCollection-GGN5F6HC.js +0 -151
  674. package/dist/violin-7D7DN74I.js +0 -44
  675. package/dist/violin.integration.spec-KE76AL54.js +0 -1417
  676. package/dist/violin.interactivity-YPJ2H6SQ.js +0 -36
  677. package/dist/violin.renderer-UK7WSA2Z.js +0 -38
  678. package/dist/vocabulary-KLWZ6LRP.js +0 -39
  679. /package/dist/{2dmaf-PFPBHIUI.js.map → 2dmaf-SLBAWGPG.js.map} +0 -0
  680. /package/dist/{AIProjectAdmin-H2GB5ZOX.js.map → AIProjectAdmin-6SH5X3AF.js.map} +0 -0
  681. /package/dist/{AppHeader-FCWML6WH.js.map → AppHeader-MVYNRMC7.js.map} +0 -0
  682. /package/dist/{BoxPlot-QKXGF76K.js.map → BoxPlot-HLGWW3IK.js.map} +0 -0
  683. /package/dist/{CorrelationVolcano-ZJ7Q6JBC.js.map → CorrelationVolcano-TZCYC3NI.js.map} +0 -0
  684. /package/dist/{DifferentialAnalysis-PWCFCWFY.js.map → DifferentialAnalysis-DS7CQOT6.js.map} +0 -0
  685. /package/dist/{Disco-IE5JKIF2.js.map → Disco-U5I6NJUT.js.map} +0 -0
  686. /package/dist/{Disco.UI-SR7LSJE3.js.map → Disco.UI-J2B7GGEZ.js.map} +0 -0
  687. /package/dist/{DmrPlot-UDY7GOSY.js.map → DmrPlot-D5W76QPY.js.map} +0 -0
  688. /package/dist/{GB-GNTOP5C6.js.map → GB-LM5SGUG4.js.map} +0 -0
  689. /package/dist/{HicApp-FZTJL3OA.js.map → HicApp-YNBGAGKM.js.map} +0 -0
  690. /package/dist/{NumBinaryEditor.unit.spec-BMVRI24W.js.map → NumBinaryEditor.unit.spec-YWSIFTOJ.js.map} +0 -0
  691. /package/dist/{NumContEditor-6JT5D6IW.js.map → NumContEditor-ZPLVZFLH.js.map} +0 -0
  692. /package/dist/{NumContEditor.unit.spec-XBQF2SW6.js.map → NumContEditor.unit.spec-NBCFOCOX.js.map} +0 -0
  693. /package/dist/{NumCustomBinEditor-MEKEFOQI.js.map → NumCustomBinEditor-TXEYRVPL.js.map} +0 -0
  694. /package/dist/{NumCustomBinEditor.unit.spec-LEMQJHDT.js.map → NumCustomBinEditor.unit.spec-SQM63H4B.js.map} +0 -0
  695. /package/dist/{NumDiscreteEditor.unit.spec-WQM4DLKO.js.map → NumDiscreteEditor.unit.spec-4HC4AGAM.js.map} +0 -0
  696. /package/dist/{NumRegularBinEditor-HQR5Y6P7.js.map → NumRegularBinEditor-VQAS3OXK.js.map} +0 -0
  697. /package/dist/{NumRegularBinEditor.unit.spec-FL4IFT7L.js.map → NumRegularBinEditor.unit.spec-RGVEPB3Z.js.map} +0 -0
  698. /package/dist/{NumSplineEditor.unit.spec-HYOXO45B.js.map → NumSplineEditor.unit.spec-HF5E6ANH.js.map} +0 -0
  699. /package/dist/{NumericDensity-GJZ4BBJS.js.map → NumericDensity-LMLPMOSE.js.map} +0 -0
  700. /package/dist/{NumericDensity.unit.spec-6LXWAXW7.js.map → NumericDensity.unit.spec-3ZI5EVON.js.map} +0 -0
  701. /package/dist/{NumericHandler-LZIMPOHS.js.map → NumericHandler-Q6F6ANOS.js.map} +0 -0
  702. /package/dist/{NumericHandler.unit.spec-ZSU35AMD.js.map → NumericHandler.unit.spec-E6Z5HUNZ.js.map} +0 -0
  703. /package/dist/{RunChart2-7XV6TIFO.js.map → RunChart2-XSNWNAIL.js.map} +0 -0
  704. /package/dist/{SC-E4EYAG26.js.map → SC-RA46YM57.js.map} +0 -0
  705. /package/dist/{Volcano-Z7TJK6PW.js.map → Volcano-75UDYPVB.js.map} +0 -0
  706. /package/dist/{WSIViewer-ZH2XABLC.js.map → WSIViewer-GYUUXCSJ.js.map} +0 -0
  707. /package/dist/{WsiSamplesPlot-BL47MDHQ.js.map → WsiSamplesPlot-KMI5S2EL.js.map} +0 -0
  708. /package/dist/{adSandbox-V3NTKVBC.js.map → adSandbox-JTK5XEQL.js.map} +0 -0
  709. /package/dist/{alphaGenome-IQVFCSWQ.js.map → alphaGenome-JRAV6WIY.js.map} +0 -0
  710. /package/dist/{app-GJLZ2G2U.js.map → app-JKDZL23V.js.map} +0 -0
  711. /package/dist/{app-YSD2U64Q.js.map → app-OEARXM6E.js.map} +0 -0
  712. /package/dist/{barchart-GLLUYTAJ.js.map → barchart-GG5UFDG4.js.map} +0 -0
  713. /package/dist/{barchart.data-FRYRGKH3.js.map → barchart.data-KXA66FAL.js.map} +0 -0
  714. /package/dist/{barchart.events-WODVSHRN.js.map → barchart.events-P2USOIR7.js.map} +0 -0
  715. /package/dist/{barchart.integration.spec-6POS3V3T.js.map → barchart.integration.spec-5QSPQQLJ.js.map} +0 -0
  716. /package/dist/{block.init-7HDLKQVX.js.map → block.init-ZHX6DFWF.js.map} +0 -0
  717. /package/dist/{block.mds.expressionrank-UIB25S6E.js.map → block.mds.expressionrank-YMGYXXYT.js.map} +0 -0
  718. /package/dist/{block.mds.geneboxplot-4PQYO3MR.js.map → block.mds.geneboxplot-IAILQYX4.js.map} +0 -0
  719. /package/dist/{block.mds.junction-DWFYZEC2.js.map → block.mds.junction-BRNFNQMU.js.map} +0 -0
  720. /package/dist/{block.mds.svcnv-N3KJJ4GQ.js.map → block.mds.svcnv-OHKC7YPO.js.map} +0 -0
  721. /package/dist/{block.svg-2HBDI7BT.js.map → block.svg-PNGK45HW.js.map} +0 -0
  722. /package/dist/{block.tk.aicheck-2M4522IQ.js.map → block.tk.aicheck-SCIOJ4WN.js.map} +0 -0
  723. /package/dist/{block.tk.ase-URIKF6JD.js.map → block.tk.ase-BABJ73GG.js.map} +0 -0
  724. /package/dist/{block.tk.bam-HTDMASHX.js.map → block.tk.bam-LZWJ5BCQ.js.map} +0 -0
  725. /package/dist/{block.tk.bedgraphdot-RVKMSFCQ.js.map → block.tk.bedgraphdot-7NQLC3XJ.js.map} +0 -0
  726. /package/dist/{block.tk.bigwig.ui-7JPEOIKM.js.map → block.tk.bigwig.ui-VNY4SFD5.js.map} +0 -0
  727. /package/dist/{block.tk.hicstraw-72J7UJ2J.js.map → block.tk.hicstraw-36A7VDRM.js.map} +0 -0
  728. /package/dist/{block.tk.junction-GGFMBCV5.js.map → block.tk.junction-D373YEMK.js.map} +0 -0
  729. /package/dist/{block.tk.junction.textmatrixui-44SAYYWE.js.map → block.tk.junction.textmatrixui-FFII7J3X.js.map} +0 -0
  730. /package/dist/{block.tk.ld-XDKJFEOL.js.map → block.tk.ld-XGB6KMDO.js.map} +0 -0
  731. /package/dist/{block.tk.menu-46FOTM7H.js.map → block.tk.menu-PEZANZBZ.js.map} +0 -0
  732. /package/dist/{block.tk.pgv-ZVONRT4B.js.map → block.tk.pgv-MU5BPTT2.js.map} +0 -0
  733. /package/dist/{brainImaging-CSLO7ODJ.js.map → brainImaging-LVJON47N.js.map} +0 -0
  734. /package/dist/{chat-GMD22F3K.js.map → chat-5FDIAQJ4.js.map} +0 -0
  735. /package/dist/{chunk-G2MAZI6I.js.map → chunk-2OSEZCWZ.js.map} +0 -0
  736. /package/dist/{chunk-RIGZHHCP.js.map → chunk-6MSCYO7K.js.map} +0 -0
  737. /package/dist/{chunk-4FO7KZY2.js.map → chunk-7A7NMCQ3.js.map} +0 -0
  738. /package/dist/{chunk-O64UTRAC.js.map → chunk-AETE4F7R.js.map} +0 -0
  739. /package/dist/{chunk-6YLQN7FF.js.map → chunk-AZYDW5T7.js.map} +0 -0
  740. /package/dist/{chunk-7FXPMQRW.js.map → chunk-B6HCIAM3.js.map} +0 -0
  741. /package/dist/{chunk-L2ED35QZ.js.map → chunk-CCIZJAXB.js.map} +0 -0
  742. /package/dist/{chunk-UFYU7AKL.js.map → chunk-DHZL3FBC.js.map} +0 -0
  743. /package/dist/{chunk-AQ4OP4GR.js.map → chunk-DONWY7TP.js.map} +0 -0
  744. /package/dist/{chunk-2TIYJ3PH.js.map → chunk-DVDDXOWT.js.map} +0 -0
  745. /package/dist/{chunk-74QJDBIP.js.map → chunk-E6DRQJJT.js.map} +0 -0
  746. /package/dist/{chunk-BNN32RI2.js.map → chunk-ESKU6LNC.js.map} +0 -0
  747. /package/dist/{chunk-SEQLC4AD.js.map → chunk-F6V4AYWP.js.map} +0 -0
  748. /package/dist/{chunk-ITYEOGLB.js.map → chunk-FBAJTPBU.js.map} +0 -0
  749. /package/dist/{chunk-LI7FE335.js.map → chunk-FGMPKWT5.js.map} +0 -0
  750. /package/dist/{chunk-D4U5X2QQ.js.map → chunk-FK4MYVW2.js.map} +0 -0
  751. /package/dist/{chunk-3TU6TRLQ.js.map → chunk-FMBJ4SKC.js.map} +0 -0
  752. /package/dist/{chunk-WYZ4COTF.js.map → chunk-FQRLSKJC.js.map} +0 -0
  753. /package/dist/{chunk-C5QOWZK6.js.map → chunk-G6ELKVBG.js.map} +0 -0
  754. /package/dist/{chunk-NBMJ2UMA.js.map → chunk-GO5SIPFE.js.map} +0 -0
  755. /package/dist/{chunk-P4ENJUBN.js.map → chunk-GPOECA3V.js.map} +0 -0
  756. /package/dist/{chunk-TVXESYIR.js.map → chunk-GW7DHJYH.js.map} +0 -0
  757. /package/dist/{chunk-JWX7GYHP.js.map → chunk-H2K5KZP7.js.map} +0 -0
  758. /package/dist/{chunk-22KWZOCN.js.map → chunk-H5XFH3FV.js.map} +0 -0
  759. /package/dist/{chunk-A2Y3GEUH.js.map → chunk-HAMDFQIX.js.map} +0 -0
  760. /package/dist/{chunk-5ZICCKEH.js.map → chunk-HH4QLSTK.js.map} +0 -0
  761. /package/dist/{chunk-LLPFFNLV.js.map → chunk-IBTPGSYI.js.map} +0 -0
  762. /package/dist/{chunk-QXCVG66S.js.map → chunk-IIRU6VK2.js.map} +0 -0
  763. /package/dist/{chunk-PF6MKI4X.js.map → chunk-IP4T477W.js.map} +0 -0
  764. /package/dist/{chunk-6UU7VPDO.js.map → chunk-JHOGX5VE.js.map} +0 -0
  765. /package/dist/{chunk-JDX4E7ZO.js.map → chunk-JOXUBWN3.js.map} +0 -0
  766. /package/dist/{chunk-SEIANPCX.js.map → chunk-K57RR3FD.js.map} +0 -0
  767. /package/dist/{chunk-AHLUW2BN.js.map → chunk-K6JLCMVL.js.map} +0 -0
  768. /package/dist/{chunk-OM326NV3.js.map → chunk-KSFSM46X.js.map} +0 -0
  769. /package/dist/{chunk-BHVDOW3W.js.map → chunk-KVG7FTTK.js.map} +0 -0
  770. /package/dist/{chunk-HLRNIO5K.js.map → chunk-LEDPPLQK.js.map} +0 -0
  771. /package/dist/{chunk-YJ2HC4CP.js.map → chunk-LUTT3MBZ.js.map} +0 -0
  772. /package/dist/{chunk-NTVM4ZPG.js.map → chunk-MPJHDHBA.js.map} +0 -0
  773. /package/dist/{chunk-M464GTNI.js.map → chunk-O4PXELXF.js.map} +0 -0
  774. /package/dist/{chunk-ZZSDYKD5.js.map → chunk-ORPCSG6T.js.map} +0 -0
  775. /package/dist/{chunk-4OEOQX4L.js.map → chunk-OUKDZKSZ.js.map} +0 -0
  776. /package/dist/{chunk-T5KFRIP4.js.map → chunk-P5HLYAHP.js.map} +0 -0
  777. /package/dist/{chunk-SK7YVOQN.js.map → chunk-PIACSJPH.js.map} +0 -0
  778. /package/dist/{chunk-WCTH7CB3.js.map → chunk-PQABAAEZ.js.map} +0 -0
  779. /package/dist/{chunk-HTHH2B6D.js.map → chunk-PSMDCZET.js.map} +0 -0
  780. /package/dist/{chunk-I7X6K4OL.js.map → chunk-RFIVPTMS.js.map} +0 -0
  781. /package/dist/{chunk-PJTQP6RL.js.map → chunk-RSU37SVQ.js.map} +0 -0
  782. /package/dist/{chunk-WGSWVYHY.js.map → chunk-SPAIFVM2.js.map} +0 -0
  783. /package/dist/{chunk-PZ3L3KM6.js.map → chunk-T2HYA2KL.js.map} +0 -0
  784. /package/dist/{chunk-5HCB4HNL.js.map → chunk-TE3DK3A6.js.map} +0 -0
  785. /package/dist/{chunk-3656ZY4T.js.map → chunk-TIQPSXFJ.js.map} +0 -0
  786. /package/dist/{chunk-DV444SFD.js.map → chunk-TN5GSG34.js.map} +0 -0
  787. /package/dist/{chunk-BBIPZ2UF.js.map → chunk-UBGTQMOO.js.map} +0 -0
  788. /package/dist/{chunk-2NQ4TM74.js.map → chunk-UE5ZYM63.js.map} +0 -0
  789. /package/dist/{chunk-DWWAB4YQ.js.map → chunk-UQACPOCM.js.map} +0 -0
  790. /package/dist/{chunk-U3UR3U3F.js.map → chunk-UR3C4SCH.js.map} +0 -0
  791. /package/dist/{chunk-FVWCYGJL.js.map → chunk-UWX7W22M.js.map} +0 -0
  792. /package/dist/{chunk-NI7VSKJI.js.map → chunk-VLTDUJRM.js.map} +0 -0
  793. /package/dist/{chunk-VIYGTRUZ.js.map → chunk-W6UUEAEP.js.map} +0 -0
  794. /package/dist/{chunk-FP5VKE3Z.js.map → chunk-Y3TDC7NU.js.map} +0 -0
  795. /package/dist/{chunk-PEKVBCIH.js.map → chunk-YOTWMCT5.js.map} +0 -0
  796. /package/dist/{chunk-KLFROH3F.js.map → chunk-YUMPQ3CJ.js.map} +0 -0
  797. /package/dist/{condition-S52W57ZO.js.map → condition-VHP2L4GM.js.map} +0 -0
  798. /package/dist/{controls-B4MTTPWO.js.map → controls-N5Q7U7JR.js.map} +0 -0
  799. /package/dist/{controls.config-6KBCTIPN.js.map → controls.config-NJMW4SLR.js.map} +0 -0
  800. /package/dist/{correlation-VSBCBFFP.js.map → correlation-3LDASF5I.js.map} +0 -0
  801. /package/dist/{cuminc-T5ZPAGVB.js.map → cuminc-UWJ23W6C.js.map} +0 -0
  802. /package/dist/{cuminc.integration.spec-2QT3IPHU.js.map → cuminc.integration.spec-OZYYET3W.js.map} +0 -0
  803. /package/dist/{customdata.inputui-5MHQQHJL.js.map → customdata.inputui-2FVCVSE4.js.map} +0 -0
  804. /package/dist/{dataDownload-S4EBNHMW.js.map → dataDownload-4S4PE5HX.js.map} +0 -0
  805. /package/dist/{dataDownload.integration.spec-OVSIWI34.js.map → dataDownload.integration.spec-B57LEKFZ.js.map} +0 -0
  806. /package/dist/{databrowser.ui-EAJS3NXV.js.map → databrowser.ui-N6GHEQ2P.js.map} +0 -0
  807. /package/dist/{dictionary-CQHSMVYF.js.map → dictionary-UP46QRYZ.js.map} +0 -0
  808. /package/dist/{dnaMethylation-G3F2INDH.js.map → dnaMethylation-BOGAUAWA.js.map} +0 -0
  809. /package/dist/{dnaMethylation.integration.spec-FWF4353K.js.map → dnaMethylation.integration.spec-UAHBJSSJ.js.map} +0 -0
  810. /package/dist/{e2pca-SLXGPVHP.js.map → e2pca-L5EBQJNP.js.map} +0 -0
  811. /package/dist/{ep-4HGUSDGJ.js.map → ep-Z67ORKUX.js.map} +0 -0
  812. /package/dist/{expclust.gdc.spec-JJ42ESKE.js.map → expclust.gdc.spec-SP7VOL64.js.map} +0 -0
  813. /package/dist/{facet-6WVTVKDV.js.map → facet-HDB4VDGU.js.map} +0 -0
  814. /package/dist/{geneExpClustering-5LOZPD5X.js.map → geneExpClustering-6ZPOLTDJ.js.map} +0 -0
  815. /package/dist/{geneExpression-BJ46UGXW.js.map → geneExpression-T6YIG4XQ.js.map} +0 -0
  816. /package/dist/{geneExpression-PTSZWKCM.js.map → geneExpression-T7QUHV5S.js.map} +0 -0
  817. /package/dist/{geneExpression.unit.spec-NW5HTO7F.js.map → geneExpression.unit.spec-DO52L5IB.js.map} +0 -0
  818. /package/dist/{geneORA-H65EZ7QO.js.map → geneORA-KOUDUWUO.js.map} +0 -0
  819. /package/dist/{geneVariant-T6GWOVZD.js.map → geneVariant-FVR76F6I.js.map} +0 -0
  820. /package/dist/{geneVariant-WTDFZTXG.js.map → geneVariant-I5QUITKG.js.map} +0 -0
  821. /package/dist/{geneVariant.integration.spec-OPSBRUM3.js.map → geneVariant.integration.spec-D4IRM7B5.js.map} +0 -0
  822. /package/dist/{genefusion.ui-RSBCC37C.js.map → genefusion.ui-35IYSZD7.js.map} +0 -0
  823. /package/dist/{geneset-B67PAZVL.js.map → geneset-7ZHJ5KWK.js.map} +0 -0
  824. /package/dist/{genomeBrowser.spec-AUTULF4C.js.map → genomeBrowser.spec-VXASVLNH.js.map} +0 -0
  825. /package/dist/{grin2-JVCNH3KW.js.map → grin2-7NM56COO.js.map} +0 -0
  826. /package/dist/{grin2-CMBP7XVH.js.map → grin2-IY26UUQI.js.map} +0 -0
  827. /package/dist/{gsea-H774WVPQ.js.map → gsea-TORO46C6.js.map} +0 -0
  828. /package/dist/{hierCluster-IQTXQUMI.js.map → hierCluster-3BKEGW6P.js.map} +0 -0
  829. /package/dist/{hierCluster-ZQJDXYBD.js.map → hierCluster-HM3LOM6V.js.map} +0 -0
  830. /package/dist/{hierCluster.config-ZHJTZK5L.js.map → hierCluster.config-LDO5IGQ5.js.map} +0 -0
  831. /package/dist/{hierCluster.integration.spec-MSJ5GHHK.js.map → hierCluster.integration.spec-XO5R6CQT.js.map} +0 -0
  832. /package/dist/{hierCluster.interactivity-H2GNO6AA.js.map → hierCluster.interactivity-NVQ6262K.js.map} +0 -0
  833. /package/dist/{hierCluster.renderers-2TE6HMK2.js.map → hierCluster.renderers-SWPPNBLU.js.map} +0 -0
  834. /package/dist/{imagePlot-FMNMB7JZ.js.map → imagePlot-V4WLAPV6.js.map} +0 -0
  835. /package/dist/{importPlot-N66G43XX.js.map → importPlot-NZKQEOX4.js.map} +0 -0
  836. /package/dist/{isoformExpression-B64WLO3H.js.map → isoformExpression-TIZBIGNL.js.map} +0 -0
  837. /package/dist/{launch.adhoc-MPRAJ3GN.js.map → launch.adhoc-JYEN42NM.js.map} +0 -0
  838. /package/dist/{leftlabel.sample-4JCKYXED.js.map → leftlabel.sample-43DL3J3H.js.map} +0 -0
  839. /package/dist/{legacyDataset-PBCPC5I7.js.map → legacyDataset-QRSNRVUA.js.map} +0 -0
  840. /package/dist/{lollipop-25ADHT7O.js.map → lollipop-NMWZ4FVF.js.map} +0 -0
  841. /package/dist/{maftimeline-FOQF6O3X.js.map → maftimeline-ZB2753S7.js.map} +0 -0
  842. /package/dist/{matrix-LHLAYDTQ.js.map → matrix-RCGQWQ3C.js.map} +0 -0
  843. /package/dist/{matrix-ZKF7NRAD.js.map → matrix-WTTEK4FT.js.map} +0 -0
  844. /package/dist/{matrix.cells-H4TS74FJ.js.map → matrix.cells-UO5ASQ35.js.map} +0 -0
  845. /package/dist/{matrix.config-HE7QUDER.js.map → matrix.config-3UQAT3QR.js.map} +0 -0
  846. /package/dist/{matrix.controls-VILCLNSC.js.map → matrix.controls-PRZ77K5L.js.map} +0 -0
  847. /package/dist/{matrix.data-2OUWYD35.js.map → matrix.data-4W73RQ3H.js.map} +0 -0
  848. /package/dist/{matrix.groups-5BGJIOOJ.js.map → matrix.groups-5VMPI7SA.js.map} +0 -0
  849. /package/dist/{matrix.integration.spec-DSXZHAEY.js.map → matrix.integration.spec-2F5LDLC2.js.map} +0 -0
  850. /package/dist/{matrix.interactivity-VK3NWX5M.js.map → matrix.interactivity-MIPZ6ELV.js.map} +0 -0
  851. /package/dist/{matrix.layout-PUNMMNCC.js.map → matrix.layout-EO5LVYRO.js.map} +0 -0
  852. /package/dist/{matrix.legend-QMERGVYU.js.map → matrix.legend-QBFBFEUG.js.map} +0 -0
  853. /package/dist/{matrix.renderers-2KQ2NXSQ.js.map → matrix.renderers-ERJXVCQL.js.map} +0 -0
  854. /package/dist/{matrix.serieses-24G3XPJD.js.map → matrix.serieses-E23EPXHA.js.map} +0 -0
  855. /package/dist/{matrix.sort-HTVT4K7C.js.map → matrix.sort-I4UGMEXR.js.map} +0 -0
  856. /package/dist/{matrix.sort.unit.spec-EUVL76NB.js.map → matrix.sort.unit.spec-CRGF6CSE.js.map} +0 -0
  857. /package/dist/{matrix.sorterUi-PJPFXWOJ.js.map → matrix.sorterUi-YLSYTYLE.js.map} +0 -0
  858. /package/dist/{matrix.sorterUi.unit.spec-QWL5Y4DQ.js.map → matrix.sorterUi.unit.spec-ENG3ICOO.js.map} +0 -0
  859. /package/dist/{mavb-UGM5SHEF.js.map → mavb-5WR7OJHI.js.map} +0 -0
  860. /package/dist/{mds.fimo-64US7RTE.js.map → mds.fimo-3ZRH7BBJ.js.map} +0 -0
  861. /package/dist/{mds.samplescatterplot-JMXLXVIE.js.map → mds.samplescatterplot-RPXR2FVK.js.map} +0 -0
  862. /package/dist/{mds.survivalplot-RJ5UD3IU.js.map → mds.survivalplot-WSSMYUZD.js.map} +0 -0
  863. /package/dist/{oncomatrix.spec-4YLKDGFE.js.map → oncomatrix.spec-OEGU4DYK.js.map} +0 -0
  864. /package/dist/{plot.2dvaf-DYSU6BBN.js.map → plot.2dvaf-ZGARLQNK.js.map} +0 -0
  865. /package/dist/{plot.app-NFBVLAXZ.js.map → plot.app-TKUJH3LK.js.map} +0 -0
  866. /package/dist/{plot.barplot-DBGTDK7J.js.map → plot.barplot-FEIPGDZ2.js.map} +0 -0
  867. /package/dist/{plot.boxplot-MCKZUROP.js.map → plot.boxplot-6RASUMZB.js.map} +0 -0
  868. /package/dist/{plot.brainImaging-BBAVUEB4.js.map → plot.brainImaging-ZJPFWX2W.js.map} +0 -0
  869. /package/dist/{plot.disco-VGOEQYRL.js.map → plot.disco-2KTKB3XX.js.map} +0 -0
  870. /package/dist/{plot.dzi-YQIFOTZQ.js.map → plot.dzi-PC34YI6Y.js.map} +0 -0
  871. /package/dist/{plot.ssgq-MU3BRTMC.js.map → plot.ssgq-Z4UNJKWO.js.map} +0 -0
  872. /package/dist/{plot.vaf2cov-KDHZ7JXJ.js.map → plot.vaf2cov-NZ4WULKT.js.map} +0 -0
  873. /package/dist/{plot.wsi-G2TUGQF7.js.map → plot.wsi-YYXFAZWY.js.map} +0 -0
  874. /package/dist/{polar-RCCZXZIU.js.map → polar-X2GPIBLB.js.map} +0 -0
  875. /package/dist/{polar2-COQ3WIGW.js.map → polar2-TZ553QQH.js.map} +0 -0
  876. /package/dist/{profile.spec-A4ZASR2T.js.map → profile.spec-VB6VMFLY.js.map} +0 -0
  877. /package/dist/{profileBarchart-GB4RK5DF.js.map → profileBarchart-SKJSTC7B.js.map} +0 -0
  878. /package/dist/{profileForms-O5KBHRF6.js.map → profileForms-RLOGSMAQ.js.map} +0 -0
  879. /package/dist/{profilePlot-COCLCP5B.js.map → profilePlot-267ZS3RG.js.map} +0 -0
  880. /package/dist/{profileRadar-4EE3YDOH.js.map → profileRadar-KGOBHCSF.js.map} +0 -0
  881. /package/dist/{profileRadarFacility-JYTSGA5H.js.map → profileRadarFacility-MCJKSHUM.js.map} +0 -0
  882. /package/dist/{proteomeAbundance-NQVU4DOW.js.map → proteomeAbundance-JUYAYO5I.js.map} +0 -0
  883. /package/dist/{proteomeAbundance-JBVXUSD6.js.map → proteomeAbundance-PGHZSVAF.js.map} +0 -0
  884. /package/dist/{qualitative-QROOPDSI.js.map → qualitative-3IECKKJM.js.map} +0 -0
  885. /package/dist/{regression-7FQZ22OO.js.map → regression-J6FFRPXN.js.map} +0 -0
  886. /package/dist/{regression.inputs-F62CES3A.js.map → regression.inputs-T7LWBSYZ.js.map} +0 -0
  887. /package/dist/{regression.inputs.term-BCGP7PX4.js.map → regression.inputs.term-TT7PNX6G.js.map} +0 -0
  888. /package/dist/{regression.inputs.values.table-D3ZXZSH7.js.map → regression.inputs.values.table-SHFUNKCS.js.map} +0 -0
  889. /package/dist/{regression.integration.spec-P2BBTT2O.js.map → regression.integration.spec-QKHMJTHA.js.map} +0 -0
  890. /package/dist/{regression.results-JX6RJQQP.js.map → regression.results-D4WX6VIV.js.map} +0 -0
  891. /package/dist/{regression.spec-ROME7T33.js.map → regression.spec-7SW55L7X.js.map} +0 -0
  892. /package/dist/{report-B6MM4T6B.js.map → report-QYOZ4BRF.js.map} +0 -0
  893. /package/dist/{sampleScatter.spec-EPCMC3SR.js.map → sampleScatter.spec-JCHFMGNF.js.map} +0 -0
  894. /package/dist/{sampleView-77EAJ75T.js.map → sampleView-7RPKNAZC.js.map} +0 -0
  895. /package/dist/{samplelst-CX4NQWA7.js.map → samplelst-4WNPHZVG.js.map} +0 -0
  896. /package/dist/{samplematrix-PYQFAH64.js.map → samplematrix-CG52DSXJ.js.map} +0 -0
  897. /package/dist/{sc-X6SI5VVI.js.map → sc-OJSWILSA.js.map} +0 -0
  898. /package/dist/{scatter-ZFFHAI4F.js.map → scatter-LG2RMMEC.js.map} +0 -0
  899. /package/dist/{scatter.integration.spec-NN43OXRN.js.map → scatter.integration.spec-QPANYTKW.js.map} +0 -0
  900. /package/dist/{selectGenomeWithTklst-CZMVTBMD.js.map → selectGenomeWithTklst-QXRVE6N4.js.map} +0 -0
  901. /package/dist/{singleCellCellType-GOBX7JKV.js.map → singleCellCellType-XBSRL33U.js.map} +0 -0
  902. /package/dist/{singleCellCellType.unit.spec-F344QMTQ.js.map → singleCellCellType.unit.spec-YZX4CSXA.js.map} +0 -0
  903. /package/dist/{singleCellGeneExpression-BLMNMEAI.js.map → singleCellGeneExpression-64ECP62X.js.map} +0 -0
  904. /package/dist/{singleCellGeneExpression.unit.spec-6ZEPUFWC.js.map → singleCellGeneExpression.unit.spec-CFHFXMA6.js.map} +0 -0
  905. /package/dist/{singleCellPlot-HLD7PLQH.js.map → singleCellPlot-E5F62JY6.js.map} +0 -0
  906. /package/dist/{singlecell-JQFPINRS.js.map → singlecell-FCY5EOUV.js.map} +0 -0
  907. /package/dist/{singlecell-HL4GLGIA.js.map → singlecell-S7B5V7NK.js.map} +0 -0
  908. /package/dist/{snp-EAUNFDAV.js.map → snp-ACKX4GRX.js.map} +0 -0
  909. /package/dist/{snp.unit.spec-AVLPMAWI.js.map → snp.unit.spec-QBGHKKUD.js.map} +0 -0
  910. /package/dist/{snplocus-2J7OA6OL.js.map → snplocus-7EUOW7J7.js.map} +0 -0
  911. /package/dist/{spliceevent.a53ss.diagram-4DU2U7NW.js.map → spliceevent.a53ss.diagram-ALQZA35Z.js.map} +0 -0
  912. /package/dist/{spliceevent.exonskip.diagram-GG5FGXOK.js.map → spliceevent.exonskip.diagram-UF7WJA5R.js.map} +0 -0
  913. /package/dist/{spliceevent.noeventdiagram-T6RNIMCM.js.map → spliceevent.noeventdiagram-4HPGRNRR.js.map} +0 -0
  914. /package/dist/{ssGSEA-XJWLRVFQ.js.map → ssGSEA-FDRBBBLJ.js.map} +0 -0
  915. /package/dist/{ssGSEA.unit.spec-MQ23ODYO.js.map → ssGSEA.unit.spec-EZEOWJVV.js.map} +0 -0
  916. /package/dist/{summarizeCnvGeneexp-CJPC76RM.js.map → summarizeCnvGeneexp-FTL2MGAJ.js.map} +0 -0
  917. /package/dist/{summarizeGeneexpSurvival-FGCFZTVG.js.map → summarizeGeneexpSurvival-DDIF4UW6.js.map} +0 -0
  918. /package/dist/{summarizeMutationCnv-4E7R2NHQ.js.map → summarizeMutationCnv-L3GL5YDY.js.map} +0 -0
  919. /package/dist/{summarizeMutationDiagnosis-ZVX7AZK7.js.map → summarizeMutationDiagnosis-LALOJTHV.js.map} +0 -0
  920. /package/dist/{summarizeMutationSurvival-EWXD7TCT.js.map → summarizeMutationSurvival-TSNTSOBZ.js.map} +0 -0
  921. /package/dist/{summary-VUYBKQOC.js.map → summary-YRHVS64T.js.map} +0 -0
  922. /package/dist/{summary.integration.spec-EPBV5XCT.js.map → summary.integration.spec-766YQLQA.js.map} +0 -0
  923. /package/dist/{summaryInput-YX5IRGWM.js.map → summaryInput-VQ2X6GSX.js.map} +0 -0
  924. /package/dist/{sunburst-HPDML45I.js.map → sunburst-XFOONS6K.js.map} +0 -0
  925. /package/dist/{survival-E6SRRXBB.js.map → survival-FQXZH2MM.js.map} +0 -0
  926. /package/dist/{survival-XOXDPXZR.js.map → survival-TVA3ZWVP.js.map} +0 -0
  927. /package/dist/{survival.integration.spec-SJBPJZGJ.js.map → survival.integration.spec-WFIOPD6A.js.map} +0 -0
  928. /package/dist/{svgraph-D23WG3UE.js.map → svgraph-4BFBO7EL.js.map} +0 -0
  929. /package/dist/{svmr-UFC4TKWV.js.map → svmr-ML7GAIIA.js.map} +0 -0
  930. /package/dist/{table-US2K6IYZ.js.map → table-SMLMUWPP.js.map} +0 -0
  931. /package/dist/{termCollection-ZMP3VE2G.js.map → termCollection-22CPTISZ.js.map} +0 -0
  932. /package/dist/{termCollection-E7S57CIN.js.map → termCollection-EE6AOIVA.js.map} +0 -0
  933. /package/dist/{termCollection.unit.spec-MDWK6XH3.js.map → termCollection.unit.spec-4DIW3CJ3.js.map} +0 -0
  934. /package/dist/{tk-TLQJK6R4.js.map → tk-ITZCKOQ5.js.map} +0 -0
  935. /package/dist/{tp.ui-NQEAKWUH.js.map → tp.ui-R6HVKCBC.js.map} +0 -0
  936. /package/dist/{tvs.density-HSVPDDGA.js.map → tvs.density-AQ5GD437.js.map} +0 -0
  937. /package/dist/{tvs.dt-U2MINIBH.js.map → tvs.dt-2263TBEJ.js.map} +0 -0
  938. /package/dist/{tvs.dtcnv.categorical-2OOAZJKC.js.map → tvs.dtcnv.categorical-TRRHL33N.js.map} +0 -0
  939. /package/dist/{tvs.dtcnv.continuous-5ETKBJ52.js.map → tvs.dtcnv.continuous-GREYNF52.js.map} +0 -0
  940. /package/dist/{tvs.dtfusion-EB4PPR3Y.js.map → tvs.dtfusion-XOX46L3M.js.map} +0 -0
  941. /package/dist/{tvs.dtsnvindel-IRQPTKQF.js.map → tvs.dtsnvindel-IDMXT53F.js.map} +0 -0
  942. /package/dist/{tvs.dtsv-TOVXZJCR.js.map → tvs.dtsv-ZDWFYH2C.js.map} +0 -0
  943. /package/dist/{tvs.numeric-ICUGA4WY.js.map → tvs.numeric-ZN2R7BH3.js.map} +0 -0
  944. /package/dist/{tvs.samplelst-4SCH543Y.js.map → tvs.samplelst-GAP76HRH.js.map} +0 -0
  945. /package/dist/{tvs.termCollection-GGN5F6HC.js.map → tvs.termCollection-GQ65UKSI.js.map} +0 -0
  946. /package/dist/{violin-7D7DN74I.js.map → violin-JGDL62YA.js.map} +0 -0
  947. /package/dist/{violin.integration.spec-KE76AL54.js.map → violin.integration.spec-W4NN7LBY.js.map} +0 -0
  948. /package/dist/{violin.interactivity-YPJ2H6SQ.js.map → violin.interactivity-H4RP4K5U.js.map} +0 -0
  949. /package/dist/{violin.renderer-UK7WSA2Z.js.map → violin.renderer-QPHLACDC.js.map} +0 -0
  950. /package/dist/{vocabulary-KLWZ6LRP.js.map → vocabulary-7JACY4J2.js.map} +0 -0
@@ -0,0 +1,1425 @@
1
+ import {
2
+ getSorterUi
3
+ } from "./chunk-JOXUBWN3.js";
4
+ import {
5
+ GeneSetEditUI,
6
+ fillTermWrapper,
7
+ get$id,
8
+ initByInput,
9
+ make_one_checkbox,
10
+ make_radios,
11
+ svgScroll,
12
+ to_svg,
13
+ zoom
14
+ } from "./chunk-7FEHI46K.js";
15
+ import {
16
+ Menu
17
+ } from "./chunk-2SRMRC6L.js";
18
+ import {
19
+ icons
20
+ } from "./chunk-5EF5U7MX.js";
21
+ import {
22
+ TermTypes,
23
+ isNumericTerm
24
+ } from "./chunk-MDL2HG3N.js";
25
+ import {
26
+ dt2label,
27
+ dtcnv,
28
+ dtfusionrna,
29
+ dtsnvindel,
30
+ dtsv,
31
+ mclass
32
+ } from "./chunk-IGEQI6MR.js";
33
+ import {
34
+ select_default
35
+ } from "./chunk-NDWTN4U5.js";
36
+
37
+ // plots/matrix/matrix.controls.js
38
+ var tip = new Menu({ padding: "" });
39
+ var MatrixControls = class {
40
+ constructor(opts, appState) {
41
+ this.type = "matrixControls";
42
+ this.opts = opts;
43
+ this.parent = opts.parent;
44
+ this.overrides = {};
45
+ this.opts.holder.style("margin", "10px 10px 20px 10px").style("white-space", "nowrap");
46
+ const state = this.parent.getState(appState);
47
+ const s = state.config.settings.matrix;
48
+ if (this.parent.setClusteringBtn)
49
+ this.parent.setClusteringBtn(this.opts.holder, (event, data) => this.callback(event, data));
50
+ this.setSamplesBtn(s);
51
+ if (state.termdbConfig?.allowedTermTypes?.includes(TermTypes.GENE_VARIANT) || state.termdbConfig.queries.snvindel || this.parent.chartType == "hierCluster" && this.parent.config.dataType == TermTypes.GENE_EXPRESSION) {
52
+ this.setGenesBtn(s);
53
+ }
54
+ if (s.addMutationCNVButtons && this.parent.chartType !== "hierCluster") {
55
+ this.setMutationBtn();
56
+ this.setCNVBtn();
57
+ }
58
+ this.setVariablesBtn(s);
59
+ this.setDimensionsBtn(s);
60
+ this.setLegendBtn(s);
61
+ this.setDownloadBtn(s);
62
+ this.setZoomInput();
63
+ this.setDragToggle({
64
+ holder: this.opts.holder.append("div").style("display", "inline-block"),
65
+ target: this.parent.dom.seriesesG
66
+ });
67
+ this.setSvgScroll(state);
68
+ this.keyboardNavHandler = async (event) => {
69
+ if (event.target.tagName == "BUTTON") this.keyEventTarget = event.target;
70
+ if (event.key == "Escape") {
71
+ this.parent.app.tip.hide();
72
+ } else if (event.key == "Enter" || event.key == "ArrowDown") {
73
+ const elems = event.target.tagName == "BUTTON" ? this.parent.app.tip.d.node().querySelectorAll("input, select") : event.target.querySelectorAll("input, select");
74
+ for (const elem of elems) {
75
+ if (elem.checkVisibility?.() || !elem.checkVisibility && elem.getBoundingClientRect().height) {
76
+ elem.focus();
77
+ return false;
78
+ }
79
+ }
80
+ } else if (event.key == "Tab" && event.shiftKey || event.key == "Backspace" || event.key == "ArrowUp") {
81
+ this.keyEventTarget.focus();
82
+ return false;
83
+ }
84
+ };
85
+ this.btns = this.opts.holder.selectAll(":scope>button").filter((d) => d && d.label).on(`keyup.matrix-${this.parent.id}`, this.keyboardNavHandler);
86
+ }
87
+ setSamplesBtn(s) {
88
+ const l = s.controlLabels;
89
+ const controls = this;
90
+ const parent = this.parent;
91
+ const rows = [
92
+ {
93
+ label: `Maximum # ${l.Samples}`,
94
+ title: `Limit the number of displayed ${l.samples}`,
95
+ type: "number",
96
+ chartType: "matrix",
97
+ settingsKey: "maxSample",
98
+ getDisplayStyle(plot) {
99
+ return plot.chartType == "hierCluster" ? "none" : "table-row";
100
+ }
101
+ },
102
+ {
103
+ label: `Sort ${l.Sample} Groups`,
104
+ title: `Set how to sort ${l.sample} groups`,
105
+ type: "radio",
106
+ chartType: "matrix",
107
+ settingsKey: "sortSampleGrpsBy",
108
+ options: [
109
+ {
110
+ label: "Predefined or Group Name",
111
+ value: "name",
112
+ title: `Sort by group name`
113
+ },
114
+ {
115
+ label: `${l.Sample} Count`,
116
+ value: "sampleCount",
117
+ title: `Sort by the number of samples in the group`
118
+ },
119
+ {
120
+ label: `Hits`,
121
+ value: "hits",
122
+ title: `Sort by the total number of variants for every ${l.sample} in the group`
123
+ }
124
+ ],
125
+ getDisplayStyle(plot) {
126
+ return plot.divideBy && !plot.hierCluster ? "table-row" : "none";
127
+ }
128
+ },
129
+ {
130
+ label: `${l.Sample} Group Label Character Limit`,
131
+ title: `Truncate the ${l.sample} group label if it exceeds this maximum number of characters`,
132
+ type: "number",
133
+ chartType: "matrix",
134
+ settingsKey: "sampleGrpLabelMaxChars",
135
+ getDisplayStyle(plot) {
136
+ return plot.divideBy && !plot.hierCluster ? "table-row" : "none";
137
+ }
138
+ },
139
+ {
140
+ label: `${l.Sample} Label Character Limit`,
141
+ title: `Truncate the ${l.sample} label if it exceeds this maximum number of characters`,
142
+ type: "number",
143
+ chartType: "matrix",
144
+ settingsKey: "collabelmaxchars"
145
+ },
146
+ {
147
+ label: `Toggle sample labels`,
148
+ title: `Do not automatically show sample labels based on column width`,
149
+ type: "radio",
150
+ chartType: "matrix",
151
+ settingsKey: "sampleLabelsToggle",
152
+ styles: { display: "inline-block" },
153
+ options: [
154
+ { label: `Based on column width`, value: "auto" },
155
+ { label: "Always hide", value: "hide" }
156
+ ]
157
+ },
158
+ {
159
+ label: `Group ${l.Samples} By`,
160
+ title: `Select a variable with discrete values to group ${l.samples}`,
161
+ type: "term",
162
+ chartType: "matrix",
163
+ configKey: "divideBy",
164
+ vocabApi: this.opts.app.vocabApi,
165
+ state: {
166
+ vocab: this.opts.vocab
167
+ //activeCohort: appState.activeCohort
168
+ },
169
+ processInput: async (tw) => {
170
+ if (tw?.term && isNumericTerm(tw.term)) {
171
+ tw.q = { ...tw.q, mode: "discrete" };
172
+ }
173
+ if (tw) await fillTermWrapper(tw, this.opts.app.vocabApi);
174
+ return tw;
175
+ },
176
+ processConfig: (config) => {
177
+ if (this.parent.chartType == "hierCluster" && config["divideBy"]) {
178
+ config.settings = {
179
+ hierCluster: {
180
+ yDendrogramHeight: 0,
181
+ clusterSamples: false
182
+ }
183
+ };
184
+ }
185
+ if (this.parent.config.divideBy)
186
+ config.legendValueFilter = this.parent.mayRemoveTvsEntry(this.parent.config.divideBy);
187
+ },
188
+ getBodyParams: () => {
189
+ const currentGeneNames = this.parent.termOrder.filter((t) => t.tw.term.type === "geneVariant").map(
190
+ (t) => t.tw.term.chr ? `${t.tw.term.chr}:${t.tw.term.start}-${t.tw.term.stop}` : t.tw.term.gene || t.tw.term.name
191
+ );
192
+ if (currentGeneNames.length) return { currentGeneNames };
193
+ return {};
194
+ }
195
+ }
196
+ ];
197
+ rows.push({
198
+ label: `Sort ${l.Sample} Priority`,
199
+ title: `Set how to sort ${l.samples}`,
200
+ type: "custom",
201
+ // the "input" argument is created by controls
202
+ init(input) {
203
+ const m = parent.config.settings.matrix;
204
+ if (!controls.activeTab) controls.activeTab = "basic";
205
+ input.dom.inputTd.style("padding", "5px");
206
+ const btnsDiv = input.dom.inputTd.append("div").style("margin-bottom", "5px");
207
+ const basicBtn = btnsDiv.append("div").style("display", "inline-block").style("padding-right", "5px").style("border-right", "2px solid black").style("text-decoration", controls.activeTab == "basic" ? "underline" : "").style("cursor", "pointer").html("Basic").on("click", () => {
208
+ controls.activeTab = "basic";
209
+ basicBtn.style("text-decoration", "underline");
210
+ advancedBtn.style("text-decoration", "");
211
+ basicDiv.style("display", "");
212
+ advancedDiv.style("display", "none");
213
+ });
214
+ const advancedBtn = btnsDiv.append("div").style("display", "inline-block").style("margin-left", "5px").style("text-decoration", controls.activeTab == "advanced" ? "underline" : "").style("cursor", "pointer").html("Advanced").on("click", () => {
215
+ controls.activeTab = "advanced";
216
+ basicBtn.style("text-decoration", "");
217
+ advancedBtn.style("text-decoration", "underline");
218
+ basicDiv.style("display", "none");
219
+ advancedDiv.style("display", "");
220
+ });
221
+ const basicDiv = input.dom.inputTd.append("div").style("display", controls.activeTab == "basic" ? "" : "none");
222
+ const ssmDiv = basicDiv.append("div");
223
+ ssmDiv.append("span").html("SSM");
224
+ const { inputs } = make_radios({
225
+ // holder, options, callback, styles
226
+ holder: ssmDiv.append("span"),
227
+ options: [
228
+ { label: "by consequence", value: "consequence", checked: m.sortByMutation === "consequence" },
229
+ { label: "by presence", value: "presence", checked: m.sortByMutation === "presence" }
230
+ ],
231
+ styles: {
232
+ display: "inline-block"
233
+ },
234
+ callback: (sortByMutation) => {
235
+ const sortOptions = parent.config.settings.matrix.sortOptions;
236
+ const activeOption = sortOptions.a;
237
+ const mutTb = activeOption.sortPriority[0].tiebreakers[1];
238
+ mutTb.disabled = !sortByMutation;
239
+ mutTb.isOrdered = sortByMutation === "consequence";
240
+ parent.app.dispatch({
241
+ type: "plot_edit",
242
+ id: parent.id,
243
+ config: {
244
+ settings: {
245
+ matrix: {
246
+ sortByMutation,
247
+ // needed to show the correct status for checkbox, but actual sorting behavior
248
+ sortOptions
249
+ // is based on sortOptions.a[*].tiebreaker[*][disabled, isOrdered]
250
+ }
251
+ }
252
+ }
253
+ });
254
+ }
255
+ });
256
+ inputs.style("margin", "2px 0 0 2px").style("vertical-align", "top");
257
+ const cnvDiv = basicDiv.append("div").style("display", m.showMatrixCNV != "none" && !m.allMatrixCNVHidden ? "block" : "none");
258
+ cnvDiv.append("span").html("CNV");
259
+ const checkbox = make_one_checkbox({
260
+ holder: cnvDiv.append("span"),
261
+ divstyle: { display: "inline-block" },
262
+ checked: m.sortByCNV,
263
+ labeltext: "sort by CNV",
264
+ callback: () => {
265
+ const sortByCNV = checkbox.property("checked");
266
+ const sortOptions = parent.config.settings.matrix.sortOptions;
267
+ const activeOption = sortOptions.a;
268
+ const cnvTb = activeOption.sortPriority[0].tiebreakers[2];
269
+ cnvTb.disabled = !sortByCNV;
270
+ cnvTb.isOrdered = sortByCNV;
271
+ parent.app.dispatch({
272
+ type: "plot_edit",
273
+ id: parent.id,
274
+ config: {
275
+ settings: {
276
+ matrix: {
277
+ sortByCNV,
278
+ // needed to show the correct status for checkbox, but actual sorting behavior
279
+ sortOptions
280
+ // is based on sortOptions.a[*].tiebreaker[*][disabled, isOrdered]
281
+ }
282
+ }
283
+ }
284
+ });
285
+ }
286
+ });
287
+ const advancedDiv = input.dom.inputTd.append("div").style("display", controls.activeTab == "advanced" ? "" : "none");
288
+ input.dom.row.on("mouseover", function() {
289
+ this.style.backgroundColor = "#fff";
290
+ this.style.textShadow = "none";
291
+ });
292
+ if (!controls.sorterUi) {
293
+ controls.sorterUi = getSorterUi({
294
+ controls: this,
295
+ holder: advancedDiv,
296
+ tip: this.parent.app.tip
297
+ });
298
+ } else {
299
+ controls.sorterUi.main(this.parent.config.settings.matrix, { holder: advancedDiv });
300
+ }
301
+ return {
302
+ main: (plot) => {
303
+ const s2 = plot.settings.matrix;
304
+ inputs.property("checked", (d) => d.value == s2.sortByMutation);
305
+ checkbox.property("checked", s2.sortByCNV);
306
+ cnvDiv.style("display", s2.showMatrixCNV != "none" && !s2.allMatrixCNVHidden ? "block" : "none");
307
+ }
308
+ };
309
+ }
310
+ });
311
+ this.opts.holder.append("button").datum({
312
+ label: l.Samples || `Samples`,
313
+ getCount: () => "sampleCount" in this.overrides ? this.overrides.sampleCount : this.parent.sampleOrder?.length || 0,
314
+ rows,
315
+ customInputs: this.updateSamplesControls
316
+ }).html((d) => d.label).style("margin", "2px 0").on("click", (event, d) => this.callback(event, d));
317
+ }
318
+ setGenesBtn(s) {
319
+ const l = s.controlLabels;
320
+ const renderStyleOptions = [
321
+ {
322
+ label: `&nbsp;Stacked <span style="font-size:.7em;color:#555;">Show stacked rectangles in the same matrix cell to render variants for the same ${l.sample} and gene</span>`,
323
+ value: "",
324
+ title: `Show stacked rectangles in the same matrix cell to render variants for the same ${l.sample} and gene`
325
+ },
326
+ {
327
+ label: `&nbsp;OncoPrint <span style="font-size:.7em;color:#555;">Show overlapping rectangles in the same matrix cell to render variants for the same ${l.sample} and gene</span>`,
328
+ value: "oncoprint",
329
+ title: `Show overlapping rectangles in the same matrix cell to render variants for the same ${l.sample} and gene`
330
+ }
331
+ ];
332
+ if (s.addMutationCNVButtons && this.parent.chartType !== "hierCluster")
333
+ renderStyleOptions.unshift({
334
+ label: `&nbsp;Single <span style="font-size:.7em;color:#555;">Show a single rectangle in a matrix cell to render the most severe variant (truncating > indels > missense > synonymous) for the same ${l.sample} and gene</span>`,
335
+ value: "single",
336
+ title: `Show a single rectangle in a matrix cell to render the most severe variant (truncating > indels > missense > synonymous) for the same ${l.sample} and gene`
337
+ });
338
+ this.opts.holder.append("button").datum({
339
+ label: "Genes",
340
+ getCount: () => this.parent.termOrder?.filter(
341
+ (t) => t.tw.term.type == TermTypes.GENE_VARIANT || t.tw.term.type == TermTypes.GENE_EXPRESSION
342
+ ).length || 0,
343
+ customInputs: this.addGeneInputs,
344
+ rows: [
345
+ {
346
+ label: `Display ${l.Sample} Counts for Gene`,
347
+ title: `Include the ${l.sample} count in the gene label`,
348
+ type: "radio",
349
+ chartType: "matrix",
350
+ settingsKey: "samplecount4gene",
351
+ styles: { display: "inline-block" },
352
+ options: [
353
+ { label: "Absolute", value: "abs" },
354
+ { label: `Percent`, value: "pct" },
355
+ { label: `None`, value: "" }
356
+ ],
357
+ getDisplayStyle(plot) {
358
+ return this.parent.termOrder?.filter((t) => t.tw.term.type == "geneVariant").length ? "table-row" : "none";
359
+ }
360
+ },
361
+ // TODO: implement this contol option
362
+ // {
363
+ // label: `Exclude From ${l.Sample} Displayed Counts`,
364
+ // title: `Do not include these variations/mutations when counting samples for a gene.`,
365
+ // type: 'text',
366
+ // chartType: 'matrix',
367
+ // settingsKey: 'geneVariantCountSamplesSkipMclass',
368
+ // processInput: tw => {},
369
+ // },
370
+ {
371
+ label: "Genomic Alterations Rendering",
372
+ title: `Set how to indicate a ${l.sample}'s applicable variant types in the same matrix cell`,
373
+ type: "radio",
374
+ chartType: "matrix",
375
+ settingsKey: "cellEncoding",
376
+ options: renderStyleOptions,
377
+ styles: { padding: "5px 0px", margin: 0 },
378
+ labelDisplay: "block",
379
+ getDisplayStyle(plot) {
380
+ return this.parent.termOrder?.filter((t) => t.tw.term.type == "geneVariant").length ? "table-row" : "none";
381
+ },
382
+ callback: this.parent.geneStyleControlCallback
383
+ },
384
+ {
385
+ label: "Sort Genes",
386
+ title: "Set how to order the genes as rows",
387
+ type: "radio",
388
+ chartType: "matrix",
389
+ settingsKey: "sortTermsBy",
390
+ options: [
391
+ { label: "By Input Data Order", value: "asListed" },
392
+ { label: `By ${l.sample} Count`, value: "sampleCount" }
393
+ ],
394
+ styles: { padding: 0, "padding-right": "10px", margin: 0, display: "inline-block" },
395
+ getDisplayStyle(plot) {
396
+ return this.parent.termOrder?.filter((t) => t.tw.term.type == "geneVariant").length ? "table-row" : "none";
397
+ }
398
+ }
399
+ ]
400
+ }).html((d) => d.label).style("margin", "2px 0").on("click", (event, d) => this.callback(event, d));
401
+ }
402
+ setVariablesBtn(s) {
403
+ const l = s.controlLabels;
404
+ this.opts.holder.append("button").datum({
405
+ label: s.controlLabels.Terms || `Variables`,
406
+ //getCount: () => this.parent.termOrder.filter(t => t.tw.term.type != 'geneVariant').length.length,
407
+ rows: [
408
+ {
409
+ label: `Row Group Label Max Length`,
410
+ title: `Truncate the row group label if it exceeds this maximum number of characters`,
411
+ type: "number",
412
+ chartType: "matrix",
413
+ settingsKey: "termGrpLabelMaxChars"
414
+ },
415
+ {
416
+ label: `Row Label Max Length`,
417
+ title: `Truncate the row label if it exceeds this maximum number of characters`,
418
+ type: "number",
419
+ chartType: "matrix",
420
+ settingsKey: "rowlabelmaxchars"
421
+ }
422
+ ],
423
+ customInputs: this.appendDictInputs
424
+ }).html((d) => d.label).style("margin", "2px 0").on("click", (event, d) => this.callback(event, d));
425
+ }
426
+ setDimensionsBtn(s) {
427
+ const l = s.controlLabels;
428
+ this.opts.holder.append("button").datum({
429
+ label: "Cell Layout",
430
+ tables: [
431
+ {
432
+ rows: [
433
+ {
434
+ label: "Grid",
435
+ title: "Show grid lines, which creates borders around each matrix cells. Note that grid lines are hidden when the auto-computed width <= 2, or when either the column and row spacing is set to 0.",
436
+ type: "checkbox",
437
+ boxLabel: "show",
438
+ // v===true means property('checked') and convert to recognized 'rect' value for dispatch
439
+ // otherwise, compared value to 'rect' to set the current value of the checkbox
440
+ // note: the non-boolean showGrid values allow keeping the hidden value='pattern' option for benchmark tests
441
+ processInput: (v) => v === true ? "rect" : v === "rect",
442
+ chartType: "matrix",
443
+ settingsKey: "showGrid",
444
+ colspan: 2,
445
+ align: "center"
446
+ // for testing/benchmarking
447
+ // type: 'radio',
448
+ // options: [
449
+ // {
450
+ // label: 'hide',
451
+ // value: ''
452
+ // },
453
+ // {
454
+ // label: 'lines',
455
+ // value: 'pattern' // needs debugging for when s.rowh or d.colw does not apply to all rows
456
+ // },
457
+ // {
458
+ // label: 'rect',
459
+ // value: 'rect'
460
+ // }
461
+ // ]
462
+ },
463
+ {
464
+ label: "Outline Color",
465
+ title: "Set a border color for the whole matrix",
466
+ type: "color",
467
+ chartType: "matrix",
468
+ settingsKey: "outlineStroke",
469
+ colspan: 2,
470
+ align: "center"
471
+ //getDisplayStyle: plot => this.parent.settings.matrix.showGrid ? '' : 'none'
472
+ },
473
+ {
474
+ label: "Beam Color",
475
+ title: "Set a color for the beam highlighter",
476
+ type: "color",
477
+ chartType: "matrix",
478
+ settingsKey: "beamStroke",
479
+ colspan: 2,
480
+ align: "center"
481
+ //getDisplayStyle: plot => this.parent.settings.matrix.showGrid ? '' : 'none'
482
+ },
483
+ {
484
+ label: "Grid Line Color",
485
+ title: "Set the grid color, equivalent to applying the same border color for each matrix cell",
486
+ type: "color",
487
+ chartType: "matrix",
488
+ settingsKey: "gridStroke",
489
+ colspan: 2,
490
+ align: "center"
491
+ //getDisplayStyle: plot => this.parent.settings.matrix.showGrid ? '' : 'none'
492
+ },
493
+ {
494
+ label: "Background Color",
495
+ title: `Set the background color when there are no alterations or annotation data for a ${l.sample}`,
496
+ type: "color",
497
+ chartType: "matrix",
498
+ settingsKey: "cellbg",
499
+ colspan: 2,
500
+ align: "center"
501
+ },
502
+ {
503
+ label: `Use Canvas If # ${l.sample} Exceeds`,
504
+ title: `Switch from SVG to canvas rendering when the number of ${l.samples} exceeds this number`,
505
+ type: "number",
506
+ chartType: "matrix",
507
+ settingsKey: "svgCanvasSwitch",
508
+ colspan: 2,
509
+ align: "center",
510
+ width: 60,
511
+ min: 0,
512
+ max: 1e4,
513
+ step: 1
514
+ },
515
+ {
516
+ label: "Canvas Min. Pixel Width",
517
+ title: "Set a minimum pixel width for a matrix cell when using canvas, may affect the perceived sharpness of the canvas image",
518
+ type: "checkbox",
519
+ boxLabel: "apply",
520
+ chartType: "matrix",
521
+ settingsKey: "useMinPixelWidth",
522
+ colspan: 2,
523
+ align: "center",
524
+ getDisplayStyle: () => this.parent.settings.matrix.useCanvas ? "" : "none"
525
+ }
526
+ ]
527
+ },
528
+ {
529
+ header: ["Cells", "Columns", "Rows"],
530
+ rows: [
531
+ {
532
+ label: "Row Height",
533
+ title: "Set the height of a matrix row",
534
+ type: "number",
535
+ width: 50,
536
+ align: "center",
537
+ chartType: "matrix",
538
+ inputs: [{ label: "N/A" }, { settingsKey: "rowh", min: 8, max: 30, step: 1 }],
539
+ getDisplayStyle(plot) {
540
+ return plot.chartType == "hierCluster" ? "none" : "table-row";
541
+ }
542
+ },
543
+ {
544
+ label: "Min Col. Width",
545
+ title: "Set the minimum width of the auto-computed matrix column width",
546
+ type: "number",
547
+ width: 50,
548
+ align: "center",
549
+ chartType: "matrix",
550
+ inputs: [{ settingsKey: "colwMin", min: 0.1, max: 16, step: 0.2 }, { label: "N/A" }]
551
+ },
552
+ {
553
+ label: "Max Col. Width",
554
+ title: "Set the maximum width of the auto-computed matrix column width",
555
+ type: "number",
556
+ width: 50,
557
+ align: "center",
558
+ chartType: "matrix",
559
+ inputs: [{ settingsKey: "colwMax", min: 1, max: 24, step: 0.2 }, { label: "N/A" }]
560
+ },
561
+ {
562
+ label: "Spacing",
563
+ title: "Set the column spacing. Note that this will be set to 0 when the auto-computed width < 2.",
564
+ type: "number",
565
+ width: 50,
566
+ align: "center",
567
+ chartType: "matrix",
568
+ inputs: [
569
+ { settingsKey: "colspace", min: 0, max: 20, step: 1 },
570
+ { settingsKey: "rowspace", min: 0, max: 20, step: 1 }
571
+ ],
572
+ getDisplayStyle(plot) {
573
+ return plot.chartType == "hierCluster" ? "none" : "table-row";
574
+ }
575
+ },
576
+ {
577
+ label: "Group spacing",
578
+ title: "Set the spacing between column and row groups.",
579
+ type: "number",
580
+ width: 50,
581
+ align: "center",
582
+ chartType: "matrix",
583
+ inputs: [
584
+ this.parent.chartType == "hierCluster" ? { label: "N/A" } : { settingsKey: "colgspace", min: 0, max: 20, step: 1 },
585
+ { settingsKey: "rowgspace", min: 0, max: 20, step: 1 }
586
+ ]
587
+ }
588
+ ]
589
+ },
590
+ {
591
+ header: ["Labels", "Columns", "Rows"],
592
+ rows: [
593
+ {
594
+ label: "Offset",
595
+ title: "Set the gap between the label text and matrix edge",
596
+ type: "number",
597
+ width: 50,
598
+ align: "center",
599
+ chartType: "matrix",
600
+ inputs: [
601
+ { settingsKey: "collabelgap", min: 0, max: 20, step: 1 },
602
+ { settingsKey: "rowlabelgap", min: 0, max: 20, step: 1 }
603
+ ]
604
+ },
605
+ {
606
+ label: "Spacing",
607
+ title: "Set the gap between labels",
608
+ type: "number",
609
+ width: 50,
610
+ align: "center",
611
+ chartType: "matrix",
612
+ inputs: [
613
+ { settingsKey: "collabelpad", min: 0, max: 20, step: 1 },
614
+ { settingsKey: "rowlabelpad", min: 0, max: 20, step: 1 }
615
+ ]
616
+ },
617
+ {
618
+ label: "Min font size",
619
+ title: "Set the minimum auto-computed font size for labels. Note that labels will be hidden if the auto-computed values falls below this minimum.",
620
+ type: "number",
621
+ width: 50,
622
+ align: "center",
623
+ colspan: 2,
624
+ chartType: "matrix",
625
+ settingsKey: "minLabelFontSize",
626
+ min: 0,
627
+ max: 24,
628
+ step: 0.1
629
+ },
630
+ {
631
+ label: "Max font size",
632
+ title: "Set the maximum auto-computed font size for labels",
633
+ type: "number",
634
+ width: 50,
635
+ align: "center",
636
+ colspan: 2,
637
+ chartType: "matrix",
638
+ settingsKey: "maxLabelFontSize",
639
+ min: 0,
640
+ max: 24,
641
+ step: 0.1
642
+ },
643
+ {
644
+ label: "Group label<br/>position",
645
+ title: "Set which side of the matrix to display group labels",
646
+ type: "radio",
647
+ width: 50,
648
+ chartType: "matrix",
649
+ labelDisplay: "block",
650
+ getDisplayStyle(plot) {
651
+ return plot.chartType == "hierCluster" ? "none" : "table-row";
652
+ },
653
+ inputs: [
654
+ {
655
+ settingsKey: "collabelpos",
656
+ // switched since settings.collabelpos refers to the individual column label, not group
657
+ options: [
658
+ { label: "Top", value: "bottom", title: `Display ${l.sample} group labels at the bottom` },
659
+ { label: "Bottom", value: "top", title: `Display ${l.sample} group labels on top` }
660
+ ]
661
+ },
662
+ {
663
+ settingsKey: "rowlabelpos",
664
+ // switched since settings.rowlabelpos refers to the individual column label, not group
665
+ options: [
666
+ {
667
+ label: "Left",
668
+ value: "right",
669
+ title: `Display gene or variable group labels on the left side`
670
+ },
671
+ {
672
+ label: "Right",
673
+ value: "left",
674
+ title: `Display gene or variable group labels on the right side`
675
+ }
676
+ ]
677
+ }
678
+ ]
679
+ }
680
+ ]
681
+ }
682
+ ]
683
+ }).html((d) => d.label).style("margin", "2px 0").on("click", (event, d) => this.callback(event, d));
684
+ }
685
+ setLegendBtn(s) {
686
+ this.opts.holder.append("button").style("margin", "2px 0").datum({
687
+ label: "Legend Layout",
688
+ rows: [
689
+ //ontop: false,
690
+ {
691
+ label: "Font Size",
692
+ title: "Set the font size for the legend text",
693
+ type: "number",
694
+ chartType: "legend",
695
+ settingsKey: "fontsize"
696
+ },
697
+ {
698
+ label: "Line Height",
699
+ title: "Set the line height for a legend group",
700
+ type: "number",
701
+ chartType: "legend",
702
+ settingsKey: "lineh"
703
+ },
704
+ {
705
+ label: "Icon Height",
706
+ title: "Set the icon height for a legend item",
707
+ type: "number",
708
+ chartType: "legend",
709
+ settingsKey: "iconh"
710
+ },
711
+ {
712
+ label: "Icon Width",
713
+ title: "Set the icon width for a legend item",
714
+ type: "number",
715
+ chartType: "legend",
716
+ settingsKey: "iconw"
717
+ },
718
+ /*{
719
+ label: 'Bottom margin',
720
+ type: 'number',
721
+ chartType: 'legend',
722
+ settingsKey: 'padbtm'
723
+ },*/
724
+ {
725
+ label: "Item Left Pad",
726
+ title: "Set a left margin for each legend item",
727
+ type: "number",
728
+ chartType: "legend",
729
+ settingsKey: "padx"
730
+ },
731
+ {
732
+ label: "Left Margin",
733
+ title: "Set a left margin for the whole legend",
734
+ type: "number",
735
+ chartType: "legend",
736
+ settingsKey: "padleft"
737
+ },
738
+ {
739
+ label: "Left Indent",
740
+ title: `Set a left margin for the first legend item in each group, and should be set to the length of the longest group label. The left indent will align the legend group label text to the right.`,
741
+ type: "number",
742
+ chartType: "legend",
743
+ settingsKey: "hangleft"
744
+ },
745
+ {
746
+ label: "Item Layout",
747
+ title: "Option to separate each legend item into a new line, instead of a horizontal layout in the same line.",
748
+ type: "checkbox",
749
+ chartType: "legend",
750
+ settingsKey: "linesep",
751
+ boxLabel: "Line separated"
752
+ }
753
+ ]
754
+ }).html((d) => d.label).style("margin", "2px 0").on("click", (event, d) => this.callback(event, d));
755
+ }
756
+ // Mutation button for selecting mutations to display on the matrix
757
+ setMutationBtn() {
758
+ this.opts.holder.append("button").style("margin", "2px 0").datum({
759
+ label: "Mutation",
760
+ updateBtn: (btn) => {
761
+ const s = this.parent.config.settings.matrix;
762
+ btn.style("text-decoration", s.allMatrixMutationHidden ? "line-through" : "").style("text-decoration-thickness", s.allMatrixMutationHidden ? "2px" : "");
763
+ },
764
+ rows: [
765
+ {
766
+ title: `Show mutation options`,
767
+ type: "radio",
768
+ chartType: "matrix",
769
+ settingsKey: "showMatrixMutation",
770
+ options: [
771
+ { label: "Show all mutations", value: "all" },
772
+ { label: `Show only truncating mutations`, value: "onlyTruncating" },
773
+ { label: `Show only protein-changing mutations`, value: "onlyPC" },
774
+ { label: `Do not show mutations`, value: "none" },
775
+ { label: `Show selected mutation`, value: "bySelection" }
776
+ ],
777
+ labelDisplay: "block",
778
+ getDisplayStyle(plot) {
779
+ return plot.chartType == "hierCluster" ? "none" : "table-row";
780
+ },
781
+ callback: this.parent.mutationControlCallback
782
+ }
783
+ ],
784
+ customInputs: this.generateMutationItems
785
+ }).html((d) => d.label).style("margin", "2px 0").on("click", (event, d) => this.callback(event, d));
786
+ }
787
+ // CNV button for selecting the CNVs to display on the matrix
788
+ setCNVBtn() {
789
+ this.opts.holder.append("button").style("margin", "2px 0").datum({
790
+ label: "CNV",
791
+ updateBtn: (btn) => {
792
+ const s = this.parent.config.settings.matrix;
793
+ const notRendered = s.allMatrixCNVHidden;
794
+ btn.style("text-decoration", notRendered ? "line-through" : "").style("text-decoration-thickness", notRendered ? "2px" : "");
795
+ },
796
+ rows: [
797
+ {
798
+ title: `Show CNV options`,
799
+ type: "radio",
800
+ chartType: "matrix",
801
+ settingsKey: "showMatrixCNV",
802
+ options: [
803
+ { label: "Show all CNV", value: "all" },
804
+ { label: `Do not show CNV`, value: "none" },
805
+ { label: `Show selected CNV`, value: "bySelection" }
806
+ ],
807
+ labelDisplay: "block",
808
+ getDisplayStyle(plot) {
809
+ return plot.chartType == "hierCluster" ? "none" : "table-row";
810
+ },
811
+ callback: this.parent.CNVControlCallback
812
+ }
813
+ ],
814
+ customInputs: this.generateCNVItems
815
+ }).html((d) => d.label).style("margin", "2px 0").on("click", (event, d) => this.callback(event, d));
816
+ }
817
+ setDownloadBtn(s) {
818
+ this.opts.holder.append("button").style("margin", "2px 0").text("Download").on("focus", () => this.parent.app.tip.hide()).on("click.sjpp-matrix-download", (event) => {
819
+ const p = this.parent;
820
+ if (!p.dom.downloadMenu) p.dom.downloadMenu = new Menu({ padding: "" });
821
+ const downloadMenu = p.dom.downloadMenu.clear();
822
+ const div = downloadMenu.d.append("div");
823
+ div.append("div").attr("class", "sja_menuoption sja_sharp_border").text(`SVG image`).on("click.sjpp-matrix-download", () => {
824
+ to_svg(this.opts.getSvg(), "matrix", { apply_dom_styles: true });
825
+ p.dom.downloadMenu.destroy();
826
+ });
827
+ div.append("div").attr("class", "sja_menuoption sja_sharp_border").text(`TSV data`).on("click.sjpp-matrix-download", () => {
828
+ const lst = p.data.lst;
829
+ const allTerms = p.termOrder.map((t) => t.tw);
830
+ const assayAvailability = p.state.termdbConfig.assayAvailability;
831
+ const controlLabels = p.settings.matrix.controlLabels;
832
+ if (p.config.divideBy?.id && !allTerms.find((a2) => a2.id == p.config.divideBy.id)) {
833
+ allTerms.push(p.config.divideBy);
834
+ }
835
+ const activeSamples = [];
836
+ for (const d of lst) {
837
+ for (const tw of allTerms) {
838
+ if (tw.$id in d) {
839
+ activeSamples.push(d);
840
+ break;
841
+ }
842
+ }
843
+ }
844
+ const header = [controlLabels.Sample];
845
+ for (const tw of allTerms) header.push(tw.term.name);
846
+ const rows = [header];
847
+ for (const s2 of activeSamples) {
848
+ const row = [s2._ref_.label];
849
+ for (const tw of allTerms) {
850
+ if (!s2[tw.$id]) {
851
+ row.push("");
852
+ } else {
853
+ if (tw.term.type == "geneVariant") {
854
+ const allVariant = [];
855
+ for (const v of s2[tw.$id].renderedValues) {
856
+ const hasAssayAvailability = assayAvailability?.byDt?.[parseInt(v.dt)];
857
+ if (v.dt == dtsnvindel) {
858
+ allVariant.push(
859
+ (v.origin ? `${v.origin} ` : "") + (hasAssayAvailability ? `${dt2label[v.dt]}:` : "") + `${mclass[v.class]?.label}` + (v.mname ? `,${v.mname}` : "")
860
+ );
861
+ } else if (v.dt == dtcnv) {
862
+ const cnvValue = v.value ? `${hasAssayAvailability ? "" : "CNV:"}${v.value}` : v.class == "CNV_amp" ? "CNV gain" : v.class == "CNV_loss" ? "CNV loss" : v.class == "CNV_homozygous_deletion" ? "CNV homozygous deletion" : v.class == "CNV_amplification" ? "CNV amplification" : v.class == "CNV_loh" ? "CNV loss of heterozygosity" : mclass[v.class]?.label;
863
+ allVariant.push(
864
+ (v.origin ? `${v.origin} ` : "") + (hasAssayAvailability ? `${dt2label[v.dt]}:` : "") + cnvValue
865
+ );
866
+ } else if (v.dt == dtfusionrna || v.dt == dtsv) {
867
+ allVariant.push(
868
+ (v.origin ? `${v.origin} ` : "") + (hasAssayAvailability ? `${dt2label[v.dt]}:` : "") + `${mclass[v.class]?.label}` + (v.gene && v.mname ? `(${v.gene}::${v.mname})` : "")
869
+ );
870
+ } else {
871
+ allVariant.push(`DO NOT SUPPORT dt='${v.dt}'`);
872
+ }
873
+ }
874
+ row.push(allVariant.join("|"));
875
+ } else if (tw.term.type == TermTypes.GENE_EXPRESSION || tw.term.type == TermTypes.METABOLITE_INTENSITY || tw.term.type == TermTypes.PROTEOME_ABUNDANCE) {
876
+ row.push(s2[tw.$id]?.renderedValues?.[0]?.value || "");
877
+ } else {
878
+ row.push(s2[tw.$id]?.renderedValues?.[0] || s2[tw.$id]?.value || "");
879
+ }
880
+ }
881
+ }
882
+ rows.push(row);
883
+ }
884
+ const matrix = rows.map((row) => row.join(" ")).join("\n");
885
+ const a = document.createElement("a");
886
+ document.body.appendChild(a);
887
+ a.addEventListener(
888
+ "click",
889
+ function() {
890
+ const currentDate = (/* @__PURE__ */ new Date()).toISOString().split("T")[0];
891
+ a.download = p.config.settings?.hierCluster?.termGroupName?.startsWith("Gene Expression") ? `GeneExpression.${currentDate}.tsv` : p.chartType == "hierCluster" ? `HierCluster.${currentDate}.tsv` : `${p.app.vocabApi.termdbConfig.matrix?.appName || "Matrix"}.${currentDate}.tsv`;
892
+ a.href = URL.createObjectURL(new Blob([matrix], { type: "text/tab-separated-values" }));
893
+ document.body.removeChild(a);
894
+ },
895
+ false
896
+ );
897
+ a.click();
898
+ p.dom.downloadMenu.destroy();
899
+ });
900
+ downloadMenu.showunder(event.target);
901
+ });
902
+ }
903
+ main(overrides = {}) {
904
+ this.overrides = overrides;
905
+ this.parent.app.tip.hide();
906
+ this.btns.text(
907
+ (d2) => !d2.getCount || d2.showCount == "hide" ? d2.label : d2.showCount == "append" ? `${d2.label} (n=${d2.getCount()})` : `${d2.getCount()} ${d2.label}`
908
+ ).each(function(d2) {
909
+ if (d2.updateBtn) d2.updateBtn(select_default(this));
910
+ });
911
+ const s = this.parent.settings.matrix || this.parent.config.settings.matrix;
912
+ const min = s.colwMin / s.colw;
913
+ const max = s.colwMax / s.colw;
914
+ const increment = Math.max(0.01, Number((min / max).toFixed(2)));
915
+ const d = this.parent.dimensions;
916
+ if (this.zoomApi)
917
+ this.zoomApi.update({
918
+ value: s.zoomLevel.toFixed(2),
919
+ min,
920
+ max,
921
+ increment,
922
+ step: s.zoomStep || 1
923
+ });
924
+ if (this.svgScrollApi && d) {
925
+ this.svgScrollApi.update({
926
+ x: d.xOffset,
927
+ y: d.yOffset - s.scrollHeight,
928
+ totalWidth: d.zoomedMainW,
929
+ visibleWidth: d.mainw,
930
+ zoomCenter: s.zoomCenterPct * d.mainw - d.seriesXoffset
931
+ });
932
+ }
933
+ if (this.dragToggleApi) {
934
+ this.dragToggleApi.update(s.mouseMode ? { mouseMode: s.mouseMode } : {});
935
+ }
936
+ }
937
+ getSettings() {
938
+ return {
939
+ mouseMode: this.dragToggleApi.getSettings().mouseMode
940
+ };
941
+ }
942
+ async callback(event, d) {
943
+ const { clientX, clientY } = event;
944
+ const app = this.opts.app;
945
+ const parent = this.opts.parent;
946
+ const tables = d.tables || [d];
947
+ event.target.focus();
948
+ app.tip.clear();
949
+ const table = app.tip.d.append("table").attr("class", "sjpp-controls-table");
950
+ for (const t of tables) {
951
+ if (t.header) {
952
+ table.append("tr").selectAll("th").data(t.header).enter().append("th").html((d2) => d2);
953
+ }
954
+ for (const inputConfig of t.rows) {
955
+ const holder = table.append("tr");
956
+ const input = await initByInput[inputConfig.type](
957
+ Object.assign(
958
+ {},
959
+ {
960
+ holder,
961
+ app,
962
+ dispatch: (action) => app.dispatch(action),
963
+ id: parent.id,
964
+ debug: this.opts.debug,
965
+ parent
966
+ },
967
+ inputConfig
968
+ )
969
+ );
970
+ input.main(parent.config);
971
+ }
972
+ if (t.customInputs) t.customInputs(this, app, parent, table);
973
+ table.selectAll("select, input, button").attr("tabindex", 0).on("keydown", self.keyboardNavHandler);
974
+ }
975
+ app.tip.showunder(event.target);
976
+ }
977
+ prependInfo(table, header, value) {
978
+ const tr = table.append("tr");
979
+ tr.append("td").text(header).attr("class", "sja-termdb-config-row-label");
980
+ tr.append("td").text(value);
981
+ }
982
+ async addGeneInputs(self2, app, parent, table) {
983
+ if (parent.chartType == "hierCluster" && parent.config.dataType == TermTypes.GENE_EXPRESSION) {
984
+ self2.appendGeneInputs(self2, app, parent, table, "hierCluster");
985
+ }
986
+ if (parent.state?.termdbConfig?.allowedTermTypes?.includes(TermTypes.GENE_VARIANT) || parent.state.termdbConfig.queries.snvindel)
987
+ self2.appendGeneInputs(self2, app, parent, table);
988
+ }
989
+ async appendGeneInputs(self2, app, parent, table, geneInputType) {
990
+ tip.clear();
991
+ if (!parent.selectedGroup) parent.selectedGroup = 0;
992
+ if (parent.opts.customInputs?.genes) {
993
+ for (const inputConfig of parent.opts.customInputs.genes) {
994
+ inputConfig.chartType = "matrix";
995
+ const holder = table.append("tr");
996
+ if (inputConfig.title) holder.attr("aria-label", inputConfig.title);
997
+ const input = await initByInput[inputConfig.type](
998
+ Object.assign(
999
+ {},
1000
+ {
1001
+ holder,
1002
+ app,
1003
+ id: parent.id,
1004
+ debug: self2.opts.debug,
1005
+ parent
1006
+ },
1007
+ inputConfig
1008
+ )
1009
+ );
1010
+ input.main(parent.config);
1011
+ }
1012
+ }
1013
+ let geneInputTr;
1014
+ if (geneInputType == "hierCluster" || parent.chartType !== "hierCluster") {
1015
+ geneInputTr = table.insert("tr", () => table.select("tr").node());
1016
+ } else {
1017
+ const secondTr = table.selectAll("tr").nodes()[1] || null;
1018
+ const hrTr = table.insert("tr", () => secondTr);
1019
+ hrTr.append("td").attr("colspan", 2).append("hr").style("border", "1px solid #ccc");
1020
+ geneInputTr = table.insert("tr", () => secondTr);
1021
+ }
1022
+ self2.addGenesetInput(app, parent, geneInputTr, geneInputType);
1023
+ }
1024
+ addGenesetInput(app, parent, tr, geneInputType) {
1025
+ const controlPanelBtn = this.btns.filter((d) => d.label.endsWith("Genes"))?.node();
1026
+ const tip2 = app.tip;
1027
+ const tg = parent.config.termgroups;
1028
+ let selectedGroup;
1029
+ const triggerGenesetEdit = (holder) => {
1030
+ holder.selectAll("*").remove();
1031
+ const geneList = selectedGroup.lst.map((item) => {
1032
+ return { gene: item.name };
1033
+ });
1034
+ new GeneSetEditUI({
1035
+ holder,
1036
+ genome: app.opts.genome,
1037
+ geneList,
1038
+ // Remove the GFF Loads Gene Sets option from unclustered genes panel.
1039
+ customInputs: parent.chartType !== "hierCluster" || geneInputType == "hierCluster" ? this.parent.opts.customInputs?.geneset : void 0,
1040
+ /* running hier clustering and the editing group is the group used for clustering
1041
+ pass this mode value to inform ui to support the optional button "top variably exp gene"
1042
+ this is hardcoded for the purpose of gene expression and should be improved
1043
+ */
1044
+ mode: selectedGroup.mode,
1045
+ minNumGenes: selectedGroup.mode == "geneExpression" ? 3 : 1,
1046
+ vocabApi: this.opts.app.vocabApi,
1047
+ callback: async ({ geneList: geneList2, groupName }) => {
1048
+ if (!selectedGroup) throw `missing selectedGroup`;
1049
+ tip2.hide();
1050
+ const group = selectedGroup.status == "new" ? { name: groupName, lst: [] } : tg[selectedGroup.index];
1051
+ if (selectedGroup.status == "new") tg.push(group);
1052
+ const targetTermType = selectedGroup.mode == "geneExpression" ? "geneExpression" : "geneVariant";
1053
+ const lst = group.lst.filter((tw) => tw.term.type != targetTermType);
1054
+ const tws = await Promise.all(
1055
+ geneList2.map(async (d) => {
1056
+ let term;
1057
+ if (targetTermType == "geneExpression") {
1058
+ const gene = d.symbol || d.gene;
1059
+ const unit = app.vocabApi.termdbConfig.queries.geneExpression?.unit || "Gene Expression";
1060
+ const name = `${gene} ${unit}`;
1061
+ term = { gene, name, type: "geneExpression" };
1062
+ } else {
1063
+ term = {
1064
+ gene: d.symbol || d.gene,
1065
+ name: d.symbol || d.gene,
1066
+ type: "geneVariant"
1067
+ };
1068
+ }
1069
+ let tw = group.lst.find((t) => {
1070
+ const geneName = t.term.gene || t.term.name;
1071
+ const match = d.symbol ? geneName === d.symbol : d.gene ? geneName === d.gene : false;
1072
+ return match && t.term.type == targetTermType;
1073
+ });
1074
+ if (!tw) {
1075
+ tw = { term };
1076
+ await fillTermWrapper(tw, this.opts.app.vocabApi);
1077
+ } else if (!tw.$id) {
1078
+ tw.$id = await get$id(this.opts.app.vocabApi.getTwMinCopy({ term }));
1079
+ }
1080
+ return tw;
1081
+ })
1082
+ );
1083
+ group.lst = [...lst, ...tws];
1084
+ if (!group.lst.length) tg.splice(selectedGroup.index, 1);
1085
+ app.dispatch({
1086
+ type: "plot_edit",
1087
+ id: this.parent.id,
1088
+ config: {
1089
+ termgroups: tg
1090
+ }
1091
+ });
1092
+ },
1093
+ backBtn: {
1094
+ target: "Genes Menu",
1095
+ callback: () => {
1096
+ controlPanelBtn.click();
1097
+ }
1098
+ },
1099
+ termsAsListed: geneInputType == "hierCluster" && !this.parent.config.settings.hierCluster.clusterRows || geneInputType != "hierCluster" && this.parent.config.settings.matrix.sortTermsBy == "asListed"
1100
+ });
1101
+ };
1102
+ const numOfEditableGrps = tg.filter((g) => g.type != "hierCluster").length;
1103
+ tr.append("td").attr("class", "sja-termdb-config-row-label").html(geneInputType == "hierCluster" ? "Hierarchical Clustering Gene Set" : "Genomic Alteration Gene Set");
1104
+ if (numOfEditableGrps > 0 || geneInputType == "hierCluster") {
1105
+ const td1 = tr.append("td").style("display", "block").style("padding", "5px 0px");
1106
+ const editGrpDiv = td1.append("div").append("label");
1107
+ const editBtn = editGrpDiv.append("button").html(
1108
+ numOfEditableGrps > 1 && geneInputType !== "hierCluster" ? "Edit Selected Group" : geneInputType == "hierCluster" ? "Edit Gene Set" : "Edit Current Group"
1109
+ ).on("click", () => {
1110
+ tip2.clear();
1111
+ this.setMenuBackBtn(tip2.d.append("div").style("padding", "5px"), () => controlPanelBtn.click(), `Back`);
1112
+ const genesetEdiUiHolder = tip2.d.append("div");
1113
+ triggerGenesetEdit(genesetEdiUiHolder);
1114
+ });
1115
+ if (numOfEditableGrps > 1 && geneInputType !== "hierCluster") {
1116
+ const { nonHierClusterGroups, groupSelect } = this.setTermGroupSelector(editGrpDiv, tg);
1117
+ selectedGroup = nonHierClusterGroups.find((g) => g.selected);
1118
+ groupSelect.on("change", () => {
1119
+ selectedGroup = nonHierClusterGroups[groupSelect.property("value")];
1120
+ });
1121
+ } else {
1122
+ const s = parent.config.settings.hierCluster;
1123
+ const g = geneInputType == "hierCluster" ? tg.find((g2) => g2.type == "hierCluster") : tg.find((g2) => g2.type != "hierCluster");
1124
+ selectedGroup = {
1125
+ index: geneInputType == "hierCluster" ? tg.findIndex((g2) => g2.type == "hierCluster") : tg[0].type == g.type ? 0 : 1,
1126
+ name: g.name,
1127
+ type: g.type,
1128
+ lst: g.type == "hierCluster" ? g.lst.map((tw) => ({ name: tw.term.gene || tw.term.name })) : g.lst.filter((tw) => tw.term.type == TermTypes.GENE_VARIANT).map((tw) => ({ name: tw.term.name })),
1129
+ mode: g.type == "hierCluster" ? s.dataType : (
1130
+ // !!subject to change!! when group is not clustering, and ds has mutation, defaults to MUTATION_CNV_FUSION
1131
+ this.parent.state.termdbConfig.queries?.snvindel ? TermTypes.GENE_VARIANT : ""
1132
+ ),
1133
+ selected: true
1134
+ };
1135
+ }
1136
+ }
1137
+ if (geneInputType == "hierCluster") {
1138
+ return;
1139
+ }
1140
+ const td2 = tr.append("td").style("display", "block").style("padding", "5px 0px");
1141
+ const createNewGrpDiv = td2.append("div").append("label");
1142
+ const createBtn = createNewGrpDiv.append("button").html("Create New Group").property("disabled", true).on("click", () => {
1143
+ tip2.clear();
1144
+ this.setMenuBackBtn(tip2.d.append("div"), () => controlPanelBtn.click(), "Back");
1145
+ const name = nameInput.property("value");
1146
+ const s = parent.config.settings.hierCluster;
1147
+ selectedGroup = {
1148
+ index: tg.length,
1149
+ name,
1150
+ label: name,
1151
+ lst: [],
1152
+ status: "new",
1153
+ mode: parent.state.termdbConfig.queries?.snvindel ? TermTypes.GENE_VARIANT : ""
1154
+ };
1155
+ triggerGenesetEdit(tip2.d.append("div"));
1156
+ });
1157
+ const nameInput = createNewGrpDiv.append("input").style("margin", "2px 5px").style("width", "210px").attr("placeholder", "Group Name").on("input", () => {
1158
+ createBtn.property("disabled", !nameInput.property("value"));
1159
+ }).on("keyup", (event) => {
1160
+ if (event.key == "Enter" && !createBtn.property("disabled")) {
1161
+ createBtn.node().click();
1162
+ }
1163
+ });
1164
+ }
1165
+ setMenuBackBtn(holder, callback, label) {
1166
+ holder.attr("tabindex", 0).style("padding", "5px").style("text-decoration", "underline").style("cursor", "pointer").style("margin-bottom", "12px").html(`&#171; ${label}`).on("click", callback).on("keyup", (event) => {
1167
+ if (event.key == "Enter") event.target.click();
1168
+ });
1169
+ }
1170
+ setTermGroupSelector(holder, tg) {
1171
+ const firstGrpWithGeneTw = tg.find(
1172
+ (g) => g.lst.find((tw) => tw.term.type == TermTypes.GENE_VARIANT && g.type !== "hierCluster")
1173
+ );
1174
+ const groups = tg.map((g, index) => {
1175
+ return {
1176
+ index,
1177
+ name: g.name,
1178
+ type: g.type,
1179
+ lst: g.lst.filter((tw) => tw.term.type == TermTypes.GENE_VARIANT).map((tw) => ({ name: tw.term.name })),
1180
+ mode: this.parent.state.termdbConfig.queries?.snvindel ? TermTypes.GENE_VARIANT : "",
1181
+ selected: g === firstGrpWithGeneTw
1182
+ };
1183
+ });
1184
+ const nonHierClusterGroups = groups.filter((g) => g.type != "hierCluster");
1185
+ const groupSelect = holder.append("select").style("width", "218px").style("margin", "2px 5px");
1186
+ for (const [i, group] of nonHierClusterGroups.entries()) {
1187
+ if (group.label) continue;
1188
+ if (group.name) group.label = group.name;
1189
+ else group.label = `Unlabeled group #${i + 1}`;
1190
+ }
1191
+ groupSelect.selectAll("option").data(nonHierClusterGroups).enter().append("option").property("selected", (grp) => grp.selected).attr("value", (d, i) => i).html((grp) => grp.label);
1192
+ return { nonHierClusterGroups, groupSelect };
1193
+ }
1194
+ appendDictInputs(self2, app, parent, table) {
1195
+ tip.clear();
1196
+ if (!parent.selectedGroup) parent.selectedGroup = self2.chartType == "hierCluster" ? 1 : 0;
1197
+ app.tip.d.append("hr");
1198
+ self2.addDictMenu(app, parent, app.tip.d.append("div"));
1199
+ }
1200
+ generateCNVItems(self2, app, parent, table) {
1201
+ table.attr("class", null);
1202
+ const m = parent.config.settings.matrix;
1203
+ const mutationLegendGrp = parent.legendData.find((l) => l.dt?.includes(dtsnvindel));
1204
+ if (m.showMatrixCNV !== "none" && (m.allMatrixMutationHidden || !mutationLegendGrp || mutationLegendGrp.crossedOut || !mutationLegendGrp.items.find((i) => !i.greyedOut && !i.crossedOut))) {
1205
+ table.select("input[type='radio'][value='none']").property("disabled", true);
1206
+ table.select("input[type='radio'][value='none'] + span").style("opacity", "0.5").on("mouseup", null);
1207
+ }
1208
+ if (m.addMutationCNVButtons && parent.chartType !== "hierCluster" && m.showMatrixCNV == "bySelection")
1209
+ parent.CNVControlCallback("bySelection");
1210
+ }
1211
+ generateMutationItems(self2, app, parent, table) {
1212
+ table.attr("class", null);
1213
+ const m = parent.config.settings.matrix;
1214
+ const cnvLegendGrp = parent.legendData.find((l) => l.dt?.includes(dtcnv));
1215
+ if (m.showMatrixMutation !== "none" && (m.allMatrixCNVHidden || !cnvLegendGrp || cnvLegendGrp.crossedOut || !cnvLegendGrp.items.find((i) => !i.greyedOut && !i.crossedOut))) {
1216
+ table.select("input[type='radio'][value='none']").property("disabled", true);
1217
+ table.select("input[type='radio'][value='none'] + span").style("opacity", "0.5").on("mouseup", null);
1218
+ }
1219
+ if (m.addMutationCNVButtons && parent.chartType !== "hierCluster" && m.showMatrixMutation == "bySelection")
1220
+ parent.mutationControlCallback("bySelection");
1221
+ }
1222
+ updateSamplesControls(self2, app, parent, table) {
1223
+ if (parent.chartType == "hierCluster" && parent.config.settings.hierCluster.clusterSamples) {
1224
+ const l = parent.config.settings.matrix.controlLabels;
1225
+ const sortingControl = select_default(
1226
+ table.selectAll("td").filter(function() {
1227
+ return select_default(this).text() == `Sort ${l.Sample} Priority`;
1228
+ }).node().closest("tr")
1229
+ );
1230
+ sortingControl.style("display", "none");
1231
+ }
1232
+ }
1233
+ async addDictMenu(app, parent, holder = void 0) {
1234
+ const termdb = await import("./app-JKDZL23V.js");
1235
+ termdb.appInit({
1236
+ holder: holder || app.tip.d,
1237
+ vocabApi: this.parent.app.vocabApi,
1238
+ focus: "off",
1239
+ state: {
1240
+ vocab: this.parent.state.vocab,
1241
+ activeCohort: this.parent.activeCohort,
1242
+ nav: {
1243
+ header_mode: "search_only"
1244
+ },
1245
+ tree: {
1246
+ usecase: { target: "matrix", detail: "termgroups" }
1247
+ }
1248
+ },
1249
+ tree: {
1250
+ submit_lst: (termlst) => {
1251
+ this.submit_lst(termlst);
1252
+ app.tip.hide();
1253
+ }
1254
+ },
1255
+ search: {
1256
+ focus: "off"
1257
+ }
1258
+ });
1259
+ }
1260
+ async submit_lst(termlst) {
1261
+ const newterms = await Promise.all(
1262
+ termlst.map(async (_term) => {
1263
+ const term = structuredClone(_term);
1264
+ const tw = "id" in term ? { id: term.id, term } : { term };
1265
+ await fillTermWrapper(tw, this.opts.app.vocabApi);
1266
+ return tw;
1267
+ })
1268
+ );
1269
+ const termgroups = structuredClone(this.parent.config.termgroups);
1270
+ const i = termgroups.findIndex((g) => g.name == "Variables");
1271
+ if (i !== -1) {
1272
+ const grp = termgroups[i];
1273
+ grp.lst.push(...newterms);
1274
+ this.parent.app.dispatch({
1275
+ type: "plot_nestedEdits",
1276
+ id: this.parent.id,
1277
+ edits: [
1278
+ {
1279
+ nestedKeys: ["termgroups", i, "lst"],
1280
+ value: grp.lst
1281
+ }
1282
+ ]
1283
+ });
1284
+ } else {
1285
+ const grp = { name: "Variables", lst: newterms };
1286
+ termgroups.push(grp);
1287
+ this.parent.app.dispatch({
1288
+ type: "plot_edit",
1289
+ id: this.parent.id,
1290
+ config: { termgroups }
1291
+ });
1292
+ }
1293
+ }
1294
+ setZoomInput() {
1295
+ const holder = this.opts.holder.append("div").style("display", "inline-block").style("margin-left", "50px");
1296
+ const s = this.parent.settings.matrix || this.parent.config.settings.matrix;
1297
+ this.zoomApi = zoom({
1298
+ holder,
1299
+ title: "Zoom factor relative to the ideal column width, as computed for the number of columns versus available screen width",
1300
+ unit: "",
1301
+ width: "80px",
1302
+ settings: {
1303
+ value: 1,
1304
+ min: 0.1,
1305
+ // will be determined once the auto-computed width is determined
1306
+ max: 10,
1307
+ // will be determined once the auto-computed width is determined
1308
+ increment: s.zoomIncrement,
1309
+ step: s.zoomStep || 5
1310
+ },
1311
+ callback: (zoomLevel) => {
1312
+ const p = this.parent;
1313
+ const d = p.dimensions;
1314
+ const s2 = p.settings.matrix;
1315
+ const c = p.getVisibleCenterCell(0);
1316
+ p.app.dispatch({
1317
+ type: "plot_edit",
1318
+ id: p.id,
1319
+ config: {
1320
+ settings: {
1321
+ matrix: {
1322
+ zoomLevel,
1323
+ zoomCenterPct: 0.5,
1324
+ zoomIndex: c.totalIndex,
1325
+ zoomGrpIndex: c.grpIndex
1326
+ }
1327
+ }
1328
+ }
1329
+ });
1330
+ },
1331
+ reset: () => {
1332
+ const s2 = this.parent.settings.matrix;
1333
+ const d = this.parent.dimensions;
1334
+ this.parent.app.dispatch({
1335
+ type: "plot_edit",
1336
+ id: this.parent.id,
1337
+ config: {
1338
+ settings: {
1339
+ matrix: {
1340
+ zoomLevel: 1,
1341
+ zoomCenterPct: 0
1342
+ }
1343
+ }
1344
+ }
1345
+ });
1346
+ }
1347
+ });
1348
+ }
1349
+ setDragToggle(opts = {}) {
1350
+ const defaults = {
1351
+ mouseMode: "select",
1352
+ activeBgColor: "rgb(255, 255, 255)"
1353
+ };
1354
+ opts.target.style("cursor", "default");
1355
+ const instance = {
1356
+ opts: Object.assign({}, defaults, opts),
1357
+ //holder: opts.holder.append('div').style('display', 'inline-block')
1358
+ dom: {
1359
+ selectBtn: opts.holder.append("button").attr("aria-label", "Click the matrix to select data").style("display", "inline-block").style("width", "25px").style("height", "24.5px").style("background-color", defaults.activeBgColor).on("click", () => setMode("select")),
1360
+ grabBtn: opts.holder.append("button").attr("aria-label", "Click the matrix to drag and move").style("display", "inline-block").style("width", "25px").style("height", "24.5px").on("click", () => setMode("pan"))
1361
+ }
1362
+ };
1363
+ icons.arrowPointer(instance.dom.selectBtn, { width: 14, height: 14, transform: "translate(50,50)" });
1364
+ icons.grab(instance.dom.grabBtn, { width: 14, height: 14, transform: "translate(30,50)" });
1365
+ const self2 = this;
1366
+ function setMode(m) {
1367
+ instance.opts.mouseMode = m;
1368
+ self2.parent.settings.matrix.mouseMode = m;
1369
+ opts.target.style("cursor", m == "select" ? "default" : "grab");
1370
+ instance.dom.selectBtn.style("background-color", m == "select" ? instance.opts.activeBgColor : "");
1371
+ instance.dom.grabBtn.style("background-color", m == "pan" ? instance.opts.activeBgColor : "");
1372
+ }
1373
+ this.dragToggleApi = {
1374
+ update(s = {}) {
1375
+ Object.assign(instance.opts, s);
1376
+ setMode(instance.opts.mouseMode);
1377
+ },
1378
+ getSettings() {
1379
+ return {
1380
+ mouseMode: instance.opts.mouseMode
1381
+ };
1382
+ }
1383
+ };
1384
+ }
1385
+ setSvgScroll(state) {
1386
+ this.svgScrollApi = svgScroll({
1387
+ holder: this.parent.dom.scroll,
1388
+ height: state.config.settings.matrix.scrollHeight,
1389
+ callback: (dx, eventType) => {
1390
+ const p = this.parent;
1391
+ const s = p.settings.matrix;
1392
+ const d = p.dimensions;
1393
+ if (eventType == "move") {
1394
+ p.dom.seriesesG.attr("transform", `translate(${d.xOffset + d.seriesXoffset - dx},${d.yOffset})`);
1395
+ p.clusterRenderer.translateElems(-dx, s, d);
1396
+ p.layout.top.attr.adjustBoxTransform(-dx);
1397
+ p.layout.btm.attr.adjustBoxTransform(-dx);
1398
+ if (p.dom.topDendrogram) {
1399
+ p.dom.topDendrogram.attr("transform", `translate(${p.topDendroX - dx},0)`);
1400
+ }
1401
+ } else if (eventType == "up") {
1402
+ const c = p.getVisibleCenterCell(-dx);
1403
+ p.app.dispatch({
1404
+ type: "plot_edit",
1405
+ id: p.id,
1406
+ config: {
1407
+ settings: {
1408
+ matrix: {
1409
+ zoomCenterPct: 0.5,
1410
+ zoomIndex: c.totalIndex,
1411
+ zoomGrpIndex: c.grpIndex
1412
+ }
1413
+ }
1414
+ }
1415
+ });
1416
+ }
1417
+ }
1418
+ });
1419
+ }
1420
+ };
1421
+
1422
+ export {
1423
+ MatrixControls
1424
+ };
1425
+ //# sourceMappingURL=chunk-XOBD3EAM.js.map