@milaboratories/miplots4 1.0.128 → 1.0.130

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 (365) hide show
  1. package/dist/DataFrame.d.ts +15 -9
  2. package/dist/DataFrame.d.ts.map +1 -1
  3. package/dist/DataFrame.js +105 -81
  4. package/dist/DataFrame.js.map +1 -1
  5. package/dist/bubble/ChartRenderer.d.ts +6 -5
  6. package/dist/bubble/ChartRenderer.d.ts.map +1 -1
  7. package/dist/bubble/ChartRenderer.js +123 -121
  8. package/dist/bubble/ChartRenderer.js.map +1 -1
  9. package/dist/bubble/components/Chart.d.ts +3 -2
  10. package/dist/bubble/components/Chart.d.ts.map +1 -1
  11. package/dist/bubble/components/Chart.js +78 -97
  12. package/dist/bubble/components/Chart.js.map +1 -1
  13. package/dist/bubble/components/ChartsGroup.d.ts +6 -5
  14. package/dist/bubble/components/ChartsGroup.d.ts.map +1 -1
  15. package/dist/bubble/components/ChartsGroup.js +39 -37
  16. package/dist/bubble/components/ChartsGroup.js.map +1 -1
  17. package/dist/bubble/getCellTooltip.d.ts +5 -0
  18. package/dist/bubble/getCellTooltip.d.ts.map +1 -0
  19. package/dist/bubble/getCellTooltip.js +28 -0
  20. package/dist/bubble/getCellTooltip.js.map +1 -0
  21. package/dist/bubble/{getCells.d.ts → getGroupedCellsData.d.ts} +4 -4
  22. package/dist/bubble/getGroupedCellsData.d.ts.map +1 -0
  23. package/dist/bubble/getGroupedCellsData.js +94 -0
  24. package/dist/bubble/getGroupedCellsData.js.map +1 -0
  25. package/dist/bubble/index.d.ts +4 -4
  26. package/dist/bubble/index.d.ts.map +1 -1
  27. package/dist/bubble/index.js +47 -42
  28. package/dist/bubble/index.js.map +1 -1
  29. package/dist/bubble/utils/calculateCaptionTails.d.ts +2 -2
  30. package/dist/bubble/utils/calculateCaptionTails.d.ts.map +1 -1
  31. package/dist/bubble/utils/calculateCaptionTails.js.map +1 -1
  32. package/dist/common/Legend.d.ts.map +1 -1
  33. package/dist/common/Legend.js.map +1 -1
  34. package/dist/common/Tooltip.js +1 -1
  35. package/dist/common/Tooltip.js.map +1 -1
  36. package/dist/common/types.d.ts +1 -1
  37. package/dist/common/types.d.ts.map +1 -1
  38. package/dist/common/useDataFrame.d.ts +11 -0
  39. package/dist/common/useDataFrame.d.ts.map +1 -0
  40. package/dist/common/useDataFrame.js +20 -0
  41. package/dist/common/useDataFrame.js.map +1 -0
  42. package/dist/dendro/ChartRenderer.d.ts +9 -8
  43. package/dist/dendro/ChartRenderer.d.ts.map +1 -1
  44. package/dist/dendro/ChartRenderer.js +187 -187
  45. package/dist/dendro/ChartRenderer.js.map +1 -1
  46. package/dist/dendro/components/Chart.d.ts +8 -8
  47. package/dist/dendro/components/Chart.d.ts.map +1 -1
  48. package/dist/dendro/components/Chart.js +35 -35
  49. package/dist/dendro/components/Chart.js.map +1 -1
  50. package/dist/dendro/components/Heatmap.d.ts +3 -3
  51. package/dist/dendro/components/Heatmap.d.ts.map +1 -1
  52. package/dist/dendro/components/Heatmap.js +23 -23
  53. package/dist/dendro/components/Heatmap.js.map +1 -1
  54. package/dist/dendro/components/Legend.d.ts.map +1 -1
  55. package/dist/dendro/components/Legend.js.map +1 -1
  56. package/dist/dendro/components/LinksGroup.d.ts +6 -6
  57. package/dist/dendro/components/LinksGroup.d.ts.map +1 -1
  58. package/dist/dendro/components/LinksGroup.js +17 -17
  59. package/dist/dendro/components/LinksGroup.js.map +1 -1
  60. package/dist/dendro/components/NodesGroup.d.ts +7 -7
  61. package/dist/dendro/components/NodesGroup.d.ts.map +1 -1
  62. package/dist/dendro/components/NodesGroup.js +29 -29
  63. package/dist/dendro/components/NodesGroup.js.map +1 -1
  64. package/dist/dendro/components/types.d.ts +2 -2
  65. package/dist/dendro/components/types.d.ts.map +1 -1
  66. package/dist/dendro/getHeatmapData.d.ts +2 -2
  67. package/dist/dendro/getHeatmapData.d.ts.map +1 -1
  68. package/dist/dendro/getHeatmapData.js +48 -44
  69. package/dist/dendro/getHeatmapData.js.map +1 -1
  70. package/dist/dendro/getHierarchyData.d.ts +3 -3
  71. package/dist/dendro/getHierarchyData.d.ts.map +1 -1
  72. package/dist/dendro/getHierarchyData.js +31 -31
  73. package/dist/dendro/getHierarchyData.js.map +1 -1
  74. package/dist/dendro/index.d.ts +5 -5
  75. package/dist/dendro/index.d.ts.map +1 -1
  76. package/dist/dendro/index.js +86 -89
  77. package/dist/dendro/index.js.map +1 -1
  78. package/dist/discrete/ChartRenderer.d.ts +6 -6
  79. package/dist/discrete/ChartRenderer.d.ts.map +1 -1
  80. package/dist/discrete/ChartRenderer.js +197 -196
  81. package/dist/discrete/ChartRenderer.js.map +1 -1
  82. package/dist/discrete/DiscreteSettingsImpl.d.ts +3 -3
  83. package/dist/discrete/DiscreteSettingsImpl.d.ts.map +1 -1
  84. package/dist/discrete/DiscreteSettingsImpl.js +8 -8
  85. package/dist/discrete/DiscreteSettingsImpl.js.map +1 -1
  86. package/dist/discrete/components/layers/BoxElement.js.map +1 -1
  87. package/dist/discrete/index.d.ts +1 -1
  88. package/dist/discrete/index.d.ts.map +1 -1
  89. package/dist/discrete/index.js +109 -106
  90. package/dist/discrete/index.js.map +1 -1
  91. package/dist/discrete/layers/bar.d.ts +2 -2
  92. package/dist/discrete/layers/bar.d.ts.map +1 -1
  93. package/dist/discrete/layers/bar.js +32 -37
  94. package/dist/discrete/layers/bar.js.map +1 -1
  95. package/dist/discrete/layers/binnedDots.d.ts +3 -3
  96. package/dist/discrete/layers/binnedDots.d.ts.map +1 -1
  97. package/dist/discrete/layers/binnedDots.js +66 -78
  98. package/dist/discrete/layers/binnedDots.js.map +1 -1
  99. package/dist/discrete/layers/boxes.d.ts +3 -4
  100. package/dist/discrete/layers/boxes.d.ts.map +1 -1
  101. package/dist/discrete/layers/boxes.js +59 -60
  102. package/dist/discrete/layers/boxes.js.map +1 -1
  103. package/dist/discrete/layers/dots.d.ts +2 -3
  104. package/dist/discrete/layers/dots.d.ts.map +1 -1
  105. package/dist/discrete/layers/dots.js +30 -30
  106. package/dist/discrete/layers/dots.js.map +1 -1
  107. package/dist/discrete/layers/lines.js +11 -10
  108. package/dist/discrete/layers/lines.js.map +1 -1
  109. package/dist/discrete/layers/logo.d.ts +2 -2
  110. package/dist/discrete/layers/logo.d.ts.map +1 -1
  111. package/dist/discrete/layers/logo.js +21 -21
  112. package/dist/discrete/layers/logo.js.map +1 -1
  113. package/dist/discrete/layers/pairedPoints.d.ts +2 -2
  114. package/dist/discrete/layers/pairedPoints.d.ts.map +1 -1
  115. package/dist/discrete/layers/pairedPoints.js +62 -62
  116. package/dist/discrete/layers/pairedPoints.js.map +1 -1
  117. package/dist/discrete/layers/sina.d.ts +3 -4
  118. package/dist/discrete/layers/sina.d.ts.map +1 -1
  119. package/dist/discrete/layers/sina.js +67 -71
  120. package/dist/discrete/layers/sina.js.map +1 -1
  121. package/dist/discrete/layers/stackedBar.d.ts +1 -1
  122. package/dist/discrete/layers/stackedBar.d.ts.map +1 -1
  123. package/dist/discrete/layers/stackedBar.js +25 -25
  124. package/dist/discrete/layers/stackedBar.js.map +1 -1
  125. package/dist/discrete/layers/violins.js +13 -13
  126. package/dist/discrete/utils/getOutliersBounds.d.ts +1 -1
  127. package/dist/discrete/utils/getOutliersBounds.d.ts.map +1 -1
  128. package/dist/discrete/utils/getOutliersBounds.js +5 -5
  129. package/dist/discrete/utils/getOutliersBounds.js.map +1 -1
  130. package/dist/discrete/utils/splitTextByWidth.js +1 -1
  131. package/dist/discrete/utils/splitTextByWidth.js.map +1 -1
  132. package/dist/heatmap/ChartRenderer.d.ts +7 -6
  133. package/dist/heatmap/ChartRenderer.d.ts.map +1 -1
  134. package/dist/heatmap/ChartRenderer.js +286 -266
  135. package/dist/heatmap/ChartRenderer.js.map +1 -1
  136. package/dist/heatmap/HeatmapSettingsImpl.d.ts +2 -2
  137. package/dist/heatmap/HeatmapSettingsImpl.d.ts.map +1 -1
  138. package/dist/heatmap/HeatmapSettingsImpl.js +1 -1
  139. package/dist/heatmap/HeatmapSettingsImpl.js.map +1 -1
  140. package/dist/heatmap/components/Annotations/Annotation.d.ts.map +1 -1
  141. package/dist/heatmap/components/Annotations/Annotation.js +40 -39
  142. package/dist/heatmap/components/Annotations/Annotation.js.map +1 -1
  143. package/dist/heatmap/components/Captions/GroupCaptions.d.ts.map +1 -1
  144. package/dist/heatmap/components/Captions/GroupCaptions.js +45 -36
  145. package/dist/heatmap/components/Captions/GroupCaptions.js.map +1 -1
  146. package/dist/heatmap/components/Chart.d.ts.map +1 -1
  147. package/dist/heatmap/components/Chart.js +104 -101
  148. package/dist/heatmap/components/Chart.js.map +1 -1
  149. package/dist/heatmap/components/ChartsGroup.d.ts +2 -2
  150. package/dist/heatmap/components/ChartsGroup.d.ts.map +1 -1
  151. package/dist/heatmap/components/ChartsGroup.js +14 -14
  152. package/dist/heatmap/components/ChartsGroup.js.map +1 -1
  153. package/dist/heatmap/components/Dendrograms.d.ts +3 -1
  154. package/dist/heatmap/components/Dendrograms.d.ts.map +1 -1
  155. package/dist/heatmap/components/Dendrograms.js +54 -48
  156. package/dist/heatmap/components/Dendrograms.js.map +1 -1
  157. package/dist/heatmap/components/types.d.ts +5 -4
  158. package/dist/heatmap/components/types.d.ts.map +1 -1
  159. package/dist/heatmap/getCells.d.ts +3 -2
  160. package/dist/heatmap/getCells.d.ts.map +1 -1
  161. package/dist/heatmap/getCells.js +97 -93
  162. package/dist/heatmap/getCells.js.map +1 -1
  163. package/dist/heatmap/getDendrograms.d.ts +2 -2
  164. package/dist/heatmap/getDendrograms.d.ts.map +1 -1
  165. package/dist/heatmap/getDendrograms.js +36 -36
  166. package/dist/heatmap/getDendrograms.js.map +1 -1
  167. package/dist/heatmap/index.d.ts +3 -3
  168. package/dist/heatmap/index.d.ts.map +1 -1
  169. package/dist/heatmap/index.js +13 -12
  170. package/dist/heatmap/index.js.map +1 -1
  171. package/dist/heatmap/utils/calculateAnnotationTitleSizes.d.ts.map +1 -1
  172. package/dist/heatmap/utils/calculateAnnotationTitleSizes.js +1 -1
  173. package/dist/heatmap/utils/calculateAnnotationTitleSizes.js.map +1 -1
  174. package/dist/heatmap/utils/calculateCaptionTails.d.ts +3 -3
  175. package/dist/heatmap/utils/calculateCaptionTails.d.ts.map +1 -1
  176. package/dist/heatmap/utils/calculateCaptionTails.js +89 -54
  177. package/dist/heatmap/utils/calculateCaptionTails.js.map +1 -1
  178. package/dist/heatmap/utils/calculateChartSideElementSizes.js +19 -19
  179. package/dist/heatmap/utils/calculateChartSideElementSizes.js.map +1 -1
  180. package/dist/histogram/ChartRenderer.d.ts +6 -5
  181. package/dist/histogram/ChartRenderer.d.ts.map +1 -1
  182. package/dist/histogram/ChartRenderer.js +154 -153
  183. package/dist/histogram/ChartRenderer.js.map +1 -1
  184. package/dist/histogram/HistogramSettingsImpl.d.ts +2 -2
  185. package/dist/histogram/HistogramSettingsImpl.d.ts.map +1 -1
  186. package/dist/histogram/HistogramSettingsImpl.js.map +1 -1
  187. package/dist/histogram/components/Chart.js +48 -48
  188. package/dist/histogram/components/Chart.js.map +1 -1
  189. package/dist/histogram/components/types.d.ts +4 -3
  190. package/dist/histogram/components/types.d.ts.map +1 -1
  191. package/dist/histogram/getHistogramData.d.ts +7 -7
  192. package/dist/histogram/getHistogramData.d.ts.map +1 -1
  193. package/dist/histogram/getHistogramData.js +52 -53
  194. package/dist/histogram/getHistogramData.js.map +1 -1
  195. package/dist/histogram/index.d.ts +3 -3
  196. package/dist/histogram/index.d.ts.map +1 -1
  197. package/dist/histogram/index.js +49 -45
  198. package/dist/histogram/index.js.map +1 -1
  199. package/dist/node_modules/@d3fc/d3fc-axis/src/axisBase.js +10 -10
  200. package/dist/node_modules/d3-array/src/min.js +5 -11
  201. package/dist/node_modules/d3-array/src/min.js.map +1 -1
  202. package/dist/node_modules/d3-shape/src/area.js +30 -30
  203. package/dist/node_modules/d3-shape/src/line.js +6 -6
  204. package/dist/node_modules/d3-shape/src/line.js.map +1 -1
  205. package/dist/node_modules/kdbush/index.js +148 -0
  206. package/dist/node_modules/kdbush/index.js.map +1 -0
  207. package/dist/scatterplot/ChartRenderer.d.ts +7 -6
  208. package/dist/scatterplot/ChartRenderer.d.ts.map +1 -1
  209. package/dist/scatterplot/ChartRenderer.js +212 -195
  210. package/dist/scatterplot/ChartRenderer.js.map +1 -1
  211. package/dist/scatterplot/ScatterplotSettingsImpl.d.ts +2 -2
  212. package/dist/scatterplot/ScatterplotSettingsImpl.d.ts.map +1 -1
  213. package/dist/scatterplot/ScatterplotSettingsImpl.js +8 -8
  214. package/dist/scatterplot/ScatterplotSettingsImpl.js.map +1 -1
  215. package/dist/scatterplot/components/ChartAxisTitles.d.ts.map +1 -1
  216. package/dist/scatterplot/components/ChartAxisTitles.js +31 -30
  217. package/dist/scatterplot/components/ChartAxisTitles.js.map +1 -1
  218. package/dist/scatterplot/components/ChartLayersData.d.ts.map +1 -1
  219. package/dist/scatterplot/components/ChartLayersData.js +138 -156
  220. package/dist/scatterplot/components/ChartLayersData.js.map +1 -1
  221. package/dist/scatterplot/components/ChartTooltip.d.ts.map +1 -1
  222. package/dist/scatterplot/components/ChartTooltip.js +28 -27
  223. package/dist/scatterplot/components/ChartTooltip.js.map +1 -1
  224. package/dist/scatterplot/components/ChartTrendsData.js +21 -21
  225. package/dist/scatterplot/components/ChartTrendsData.js.map +1 -1
  226. package/dist/scatterplot/components/ChartsGroup.js +3 -3
  227. package/dist/scatterplot/components/ChartsGroup.js.map +1 -1
  228. package/dist/scatterplot/components/types.d.ts +7 -7
  229. package/dist/scatterplot/components/types.d.ts.map +1 -1
  230. package/dist/scatterplot/constants.d.ts +1 -1
  231. package/dist/scatterplot/constants.d.ts.map +1 -1
  232. package/dist/scatterplot/constants.js.map +1 -1
  233. package/dist/scatterplot/dots.d.ts +2 -2
  234. package/dist/scatterplot/dots.d.ts.map +1 -1
  235. package/dist/scatterplot/dots.js +21 -21
  236. package/dist/scatterplot/dots.js.map +1 -1
  237. package/dist/scatterplot/getLayersData.d.ts +3 -3
  238. package/dist/scatterplot/getLayersData.d.ts.map +1 -1
  239. package/dist/scatterplot/getLayersData.js +12 -15
  240. package/dist/scatterplot/getLayersData.js.map +1 -1
  241. package/dist/scatterplot/index.d.ts +4 -4
  242. package/dist/scatterplot/index.d.ts.map +1 -1
  243. package/dist/scatterplot/index.js +71 -72
  244. package/dist/scatterplot/index.js.map +1 -1
  245. package/dist/scatterplot/linearRegression.d.ts +5 -4
  246. package/dist/scatterplot/linearRegression.d.ts.map +1 -1
  247. package/dist/scatterplot/linearRegression.js +88 -86
  248. package/dist/scatterplot/linearRegression.js.map +1 -1
  249. package/dist/scatterplot/utils/createAesGetter.d.ts +3 -2
  250. package/dist/scatterplot/utils/createAesGetter.d.ts.map +1 -1
  251. package/dist/scatterplot/utils/createAesGetter.js +21 -21
  252. package/dist/scatterplot/utils/createAesGetter.js.map +1 -1
  253. package/dist/scatterplot/utils/createLegendInfo.d.ts +2 -10
  254. package/dist/scatterplot/utils/createLegendInfo.d.ts.map +1 -1
  255. package/dist/scatterplot/utils/createLegendInfo.js +44 -37
  256. package/dist/scatterplot/utils/createLegendInfo.js.map +1 -1
  257. package/dist/scatterplot/utils/getVisibleLabels.d.ts +6 -9
  258. package/dist/scatterplot/utils/getVisibleLabels.d.ts.map +1 -1
  259. package/dist/scatterplot/utils/getVisibleLabels.js +46 -56
  260. package/dist/scatterplot/utils/getVisibleLabels.js.map +1 -1
  261. package/dist/scatterplot-umap/ChartRenderer.d.ts +18 -15
  262. package/dist/scatterplot-umap/ChartRenderer.d.ts.map +1 -1
  263. package/dist/scatterplot-umap/ChartRenderer.js +231 -214
  264. package/dist/scatterplot-umap/ChartRenderer.js.map +1 -1
  265. package/dist/scatterplot-umap/SettingsImpl.d.ts +2 -2
  266. package/dist/scatterplot-umap/SettingsImpl.d.ts.map +1 -1
  267. package/dist/scatterplot-umap/SettingsImpl.js +6 -6
  268. package/dist/scatterplot-umap/SettingsImpl.js.map +1 -1
  269. package/dist/scatterplot-umap/colors.d.ts +6 -0
  270. package/dist/scatterplot-umap/colors.d.ts.map +1 -0
  271. package/dist/scatterplot-umap/colors.js +42 -0
  272. package/dist/scatterplot-umap/colors.js.map +1 -0
  273. package/dist/scatterplot-umap/components/Lasso.d.ts.map +1 -1
  274. package/dist/scatterplot-umap/components/Lasso.js +148 -124
  275. package/dist/scatterplot-umap/components/Lasso.js.map +1 -1
  276. package/dist/scatterplot-umap/components/LowerSVG.d.ts +2 -2
  277. package/dist/scatterplot-umap/components/LowerSVG.d.ts.map +1 -1
  278. package/dist/scatterplot-umap/components/LowerSVG.js +88 -87
  279. package/dist/scatterplot-umap/components/LowerSVG.js.map +1 -1
  280. package/dist/scatterplot-umap/components/UpperSVG.d.ts.map +1 -1
  281. package/dist/scatterplot-umap/components/UpperSVG.js +20 -19
  282. package/dist/scatterplot-umap/components/UpperSVG.js.map +1 -1
  283. package/dist/scatterplot-umap/index.d.ts +0 -2
  284. package/dist/scatterplot-umap/index.d.ts.map +1 -1
  285. package/dist/scatterplot-umap/index.js +77 -104
  286. package/dist/scatterplot-umap/index.js.map +1 -1
  287. package/dist/scatterplot-umap/types.d.ts +7 -10
  288. package/dist/scatterplot-umap/types.d.ts.map +1 -1
  289. package/dist/types/bubble.d.ts +12 -12
  290. package/dist/types/common.d.ts +4 -3
  291. package/dist/types/common.d.ts.map +1 -1
  292. package/dist/types/common.js +1 -1
  293. package/dist/types/common.js.map +1 -1
  294. package/dist/types/dendro.d.ts +10 -10
  295. package/dist/types/dendro.d.ts.map +1 -1
  296. package/dist/types/dendro.js +1 -1
  297. package/dist/types/dendro.js.map +1 -1
  298. package/dist/types/discrete.d.ts +14 -14
  299. package/dist/types/discrete.d.ts.map +1 -1
  300. package/dist/types/discrete.js +3 -3
  301. package/dist/types/discrete.js.map +1 -1
  302. package/dist/types/heatmap.d.ts +28 -28
  303. package/dist/types/heatmap.d.ts.map +1 -1
  304. package/dist/types/heatmap.js +1 -1
  305. package/dist/types/heatmap.js.map +1 -1
  306. package/dist/types/histogram.d.ts +8 -8
  307. package/dist/types/histogram.d.ts.map +1 -1
  308. package/dist/types/histogram.js +1 -1
  309. package/dist/types/histogram.js.map +1 -1
  310. package/dist/types/scatterplot-umap.d.ts +11 -15
  311. package/dist/types/scatterplot-umap.d.ts.map +1 -1
  312. package/dist/types/scatterplot-umap.js +9 -9
  313. package/dist/types/scatterplot-umap.js.map +1 -1
  314. package/dist/types/scatterplot.d.ts +12 -12
  315. package/dist/types/scatterplot.d.ts.map +1 -1
  316. package/dist/types/scatterplot.js +1 -1
  317. package/dist/types/scatterplot.js.map +1 -1
  318. package/dist/utils/TextMeasurer/TextMeasurer.d.ts +7 -0
  319. package/dist/utils/TextMeasurer/TextMeasurer.d.ts.map +1 -0
  320. package/dist/utils/TextMeasurer/TextMeasurer.js +42 -0
  321. package/dist/utils/TextMeasurer/TextMeasurer.js.map +1 -0
  322. package/dist/utils/TextMeasurer/charToWidth.json.js +155 -0
  323. package/dist/utils/TextMeasurer/charToWidth.json.js.map +1 -0
  324. package/dist/utils/arrangeLegendParts.js +1 -1
  325. package/dist/utils/arrangeLegendParts.js.map +1 -1
  326. package/dist/utils/getChartEdgeSides.d.ts +1 -1
  327. package/dist/utils/getLegendWidth.d.ts.map +1 -1
  328. package/dist/utils/getLegendWidth.js +1 -1
  329. package/dist/utils/getLegendWidth.js.map +1 -1
  330. package/package.json +5 -3
  331. package/dist/bubble/getCells.d.ts.map +0 -1
  332. package/dist/bubble/getCells.js +0 -91
  333. package/dist/bubble/getCells.js.map +0 -1
  334. package/dist/node_modules/d3-quadtree/src/add.js +0 -30
  335. package/dist/node_modules/d3-quadtree/src/add.js.map +0 -1
  336. package/dist/node_modules/d3-quadtree/src/cover.js +0 -29
  337. package/dist/node_modules/d3-quadtree/src/cover.js.map +0 -1
  338. package/dist/node_modules/d3-quadtree/src/data.js +0 -12
  339. package/dist/node_modules/d3-quadtree/src/data.js.map +0 -1
  340. package/dist/node_modules/d3-quadtree/src/extent.js +0 -7
  341. package/dist/node_modules/d3-quadtree/src/extent.js.map +0 -1
  342. package/dist/node_modules/d3-quadtree/src/find.js +0 -26
  343. package/dist/node_modules/d3-quadtree/src/find.js.map +0 -1
  344. package/dist/node_modules/d3-quadtree/src/quad.js +0 -7
  345. package/dist/node_modules/d3-quadtree/src/quad.js.map +0 -1
  346. package/dist/node_modules/d3-quadtree/src/quadtree.js +0 -51
  347. package/dist/node_modules/d3-quadtree/src/quadtree.js.map +0 -1
  348. package/dist/node_modules/d3-quadtree/src/remove.js +0 -21
  349. package/dist/node_modules/d3-quadtree/src/remove.js.map +0 -1
  350. package/dist/node_modules/d3-quadtree/src/root.js +0 -7
  351. package/dist/node_modules/d3-quadtree/src/root.js.map +0 -1
  352. package/dist/node_modules/d3-quadtree/src/size.js +0 -12
  353. package/dist/node_modules/d3-quadtree/src/size.js.map +0 -1
  354. package/dist/node_modules/d3-quadtree/src/visit.js +0 -14
  355. package/dist/node_modules/d3-quadtree/src/visit.js.map +0 -1
  356. package/dist/node_modules/d3-quadtree/src/visitAfter.js +0 -19
  357. package/dist/node_modules/d3-quadtree/src/visitAfter.js.map +0 -1
  358. package/dist/node_modules/d3-quadtree/src/x.js +0 -11
  359. package/dist/node_modules/d3-quadtree/src/x.js.map +0 -1
  360. package/dist/node_modules/d3-quadtree/src/y.js +0 -11
  361. package/dist/node_modules/d3-quadtree/src/y.js.map +0 -1
  362. package/dist/utils/TextMeasurer.d.ts +0 -8
  363. package/dist/utils/TextMeasurer.d.ts.map +0 -1
  364. package/dist/utils/TextMeasurer.js +0 -27
  365. package/dist/utils/TextMeasurer.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Annotation.js","sources":["../../../../src/heatmap/components/Annotations/Annotation.tsx"],"sourcesContent":["import { createPortal } from 'react-dom';\nimport type { TooltipsData } from '../../../common/Tooltip';\nimport { BLACK } from '../../../constants';\nimport type { DataValue } from '../../../types';\nimport { ANNOTATION_WIDTH } from '../../constants';\nimport type { Cell, GroupedCellsData } from '../../getCells';\nimport type { HeatmapSettingsImpl } from '../../HeatmapSettingsImpl';\nimport type { AnnotationColorScales, AnnotationTooltipData, ChartScales } from '../types';\n\nfunction getTextPosition(\n vertical: boolean,\n annotationPosition: string,\n titlePosition: string,\n width: number,\n height: number\n) {\n if (vertical) {\n const x = ANNOTATION_WIDTH / 2;\n const y = titlePosition === 'top' ? -5 : height + 5;\n const rotate = annotationPosition === 'left' ? -90 : 90;\n const anchor = annotationPosition === 'left' && titlePosition === 'top' ? 'start' : 'end';\n return {x, y, rotate, anchor};\n }\n const x = titlePosition === 'right' ? width + 5 : -5;\n const y = ANNOTATION_WIDTH / 2;\n const anchor = titlePosition === 'right' ? 'start' : 'end';\n return {x, y, rotate: 0, anchor};\n}\ninterface AnnotationProps {\n facetKey: string;\n scales: ChartScales;\n data: Record<string, DataValue>;\n annotation: HeatmapSettingsImpl['annotations'][0];\n stepX: number;\n stepY: number;\n vertical?: boolean;\n x: number;\n y: number;\n width: number;\n height: number;\n showTitle: boolean;\n colorScale: AnnotationColorScales[string];\n aes: HeatmapSettingsImpl['aes'];\n frame: HeatmapSettingsImpl['chartSettings']['frame'];\n xGroupKeys: string[];\n yGroupKeys: string[];\n xKeysByGroups: GroupedCellsData['facets'][keyof GroupedCellsData['facets']]['xKeysByGroups'];\n yKeysByGroups: GroupedCellsData['facets'][keyof GroupedCellsData['facets']]['yKeysByGroups'];\n tooltipsData: TooltipsData<Cell | AnnotationTooltipData>;\n activeElementContainer?: Element;\n}\n\nfunction isAnnotationTooltip(d:Cell|AnnotationTooltipData|null):d is AnnotationTooltipData {\n return d !== null && !('data' in d);\n}\n\nexport function Annotation({\n facetKey,\n data,\n scales,\n stepX,\n stepY,\n x,\n y,\n annotation,\n showTitle,\n width,\n height,\n colorScale,\n aes,\n frame,\n xGroupKeys,\n yGroupKeys,\n xKeysByGroups,\n yKeysByGroups,\n tooltipsData,\n activeElementContainer\n}: AnnotationProps) {\n const {position, titlePosition, valueColumn} = annotation;\n const vertical = position === 'left' || position === 'right';\n const keys = (vertical ? scales.y : scales.x).domain();\n const textPosition = getTextPosition(vertical, position, titlePosition, width, height);\n const isDimmedBackground = tooltipsData.fixed && activeElementContainer;\n\n return (\n <g>\n {keys.map(key => {\n const value = data?.[key];\n const fillColor = colorScale.type === 'continuous'\n ? colorScale.scale(Number(value))\n : colorScale.scale(String(value));\n const xInner= x + (vertical ? 0 : scales.x(key));\n const yInner= y + (vertical ? scales.y(key) : 0);\n const width = vertical ? ANNOTATION_WIDTH : stepX;\n const height = vertical ? stepY : ANNOTATION_WIDTH;\n const xKey = vertical ? null : key;\n const yKey = vertical ? key : null;\n const highlighted = isDimmedBackground\n && isAnnotationTooltip(tooltipsData.selectedData)\n && tooltipsData.selectedData.xKey === xKey\n && tooltipsData.selectedData.yKey === yKey\n && facetKey === tooltipsData.currentFacet;\n const cellElement = (\n <rect\n key={key}\n x={xInner}\n y={yInner}\n width={width}\n height={height}\n fill={fillColor}\n stroke={aes.cellStrokeColor}\n onMouseOver={() => tooltipsData.onMouseEnter({\n x: xInner + width,\n y: yInner + height / 2,\n xKey,\n yKey,\n value,\n title: valueColumn.label ?? valueColumn.value\n } as AnnotationTooltipData, facetKey)}\n onMouseLeave={() => tooltipsData.onMouseLeave()}\n />\n );\n return highlighted ? createPortal(cellElement, activeElementContainer) : cellElement;\n })}\n {tooltipsData.fixed && !vertical && xGroupKeys.map(xGroupKey => {\n const keysCountX = xKeysByGroups[xGroupKey].length;\n if (keysCountX === 0) {\n return null;\n }\n const groupWidth = keysCountX * stepX;\n const groupX = scales.x(xKeysByGroups[xGroupKey][0]);\n return (\n <rect\n key={`${groupX}_${y}`}\n x={groupX + x}\n y={y}\n width={groupWidth}\n height={ANNOTATION_WIDTH}\n stroke=\"none\"\n fill=\"rgba(255, 255, 255, 0.8)\"\n />\n );\n })}\n {tooltipsData.fixed && vertical && yGroupKeys.map(yGroupKey => {\n const keysCountY = yKeysByGroups[yGroupKey].length;\n if (keysCountY === 0) {\n return null;\n }\n const groupHeight = keysCountY * stepY;\n const groupY = scales.y(yKeysByGroups[yGroupKey][0]);\n return (\n <rect\n key={`${x}_${groupY}`}\n x={x}\n y={groupY + y}\n width={ANNOTATION_WIDTH}\n height={groupHeight}\n stroke=\"none\"\n fill=\"rgba(255, 255, 255, 0.8)\"\n />\n );\n })}\n {frame.type === 'groups' &&\n !vertical &&\n xGroupKeys.map(xGroupKey => {\n const keysCountX = xKeysByGroups[xGroupKey].length;\n if (keysCountX === 0) {\n return null;\n }\n const groupWidth = keysCountX * stepX;\n const groupX = scales.x(xKeysByGroups[xGroupKey][0]);\n return (\n <rect\n key={`${groupX}_${y}`}\n x={groupX + x}\n y={y}\n width={groupWidth}\n height={ANNOTATION_WIDTH}\n stroke={BLACK}\n fill=\"none\"\n />\n );\n })}\n {frame.type === 'groups' &&\n vertical &&\n yGroupKeys.map(yGroupKey => {\n const keysCountY = yKeysByGroups[yGroupKey].length;\n if (keysCountY === 0) {\n return null;\n }\n const groupHeight = keysCountY * stepY;\n const groupY = scales.y(yKeysByGroups[yGroupKey][0]);\n return (\n <rect\n key={`${x}_${groupY}`}\n x={x}\n y={groupY + y}\n width={ANNOTATION_WIDTH}\n height={groupHeight}\n stroke={BLACK}\n fill=\"none\"\n />\n );\n })}\n {showTitle && (\n <g\n fontWeight=\"500\"\n fontSize=\"14px\"\n transform={`translate(${x + textPosition.x},${y + textPosition.y}) rotate(${textPosition.rotate})`}\n >\n <text textAnchor={textPosition.anchor} dominantBaseline=\"central\">\n {valueColumn.label ?? valueColumn.value}\n </text>\n </g>\n )}\n </g>\n );\n}\n"],"names":["getTextPosition","vertical","annotationPosition","titlePosition","width","height","x","ANNOTATION_WIDTH","y","anchor","isAnnotationTooltip","d","Annotation","facetKey","data","scales","stepX","stepY","annotation","showTitle","colorScale","aes","frame","xGroupKeys","yGroupKeys","xKeysByGroups","yKeysByGroups","tooltipsData","activeElementContainer","position","valueColumn","keys","textPosition","isDimmedBackground","key","value","fillColor","xInner","yInner","xKey","yKey","highlighted","cellElement","jsx","createPortal","xGroupKey","keysCountX","groupWidth","groupX","yGroupKey","keysCountY","groupHeight","groupY","BLACK"],"mappings":"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"}
1
+ {"version":3,"file":"Annotation.js","sources":["../../../../src/heatmap/components/Annotations/Annotation.tsx"],"sourcesContent":["import { createPortal } from 'react-dom';\nimport type { TooltipsData } from '../../../common/Tooltip';\nimport { BLACK } from '../../../constants';\nimport type { DataValue } from '../../../types';\nimport { ANNOTATION_WIDTH } from '../../constants';\nimport type { Cell, GroupedCellsData } from '../../getCells';\nimport type { HeatmapSettingsImpl } from '../../HeatmapSettingsImpl';\nimport type { AnnotationColorScales, AnnotationTooltipData, ChartScales } from '../types';\n\nfunction getTextPosition(\n vertical: boolean,\n annotationPosition: string,\n titlePosition: string,\n width: number,\n height: number\n) {\n if (vertical) {\n const x = ANNOTATION_WIDTH / 2;\n const y = titlePosition === 'top' ? -5 : height + 5;\n const rotate = annotationPosition === 'left' ? -90 : 90;\n const anchor = annotationPosition === 'left' && titlePosition === 'top' ? 'start' : 'end';\n return {x, y, rotate, anchor};\n }\n const x = titlePosition === 'right' ? width + 5 : -5;\n const y = ANNOTATION_WIDTH / 2;\n const anchor = titlePosition === 'right' ? 'start' : 'end';\n return {x, y, rotate: 0, anchor};\n}\ninterface AnnotationProps {\n facetKey: string;\n scales: ChartScales;\n data: Record<string, DataValue>;\n annotation: HeatmapSettingsImpl['annotations'][0];\n stepX: number;\n stepY: number;\n vertical?: boolean;\n x: number;\n y: number;\n width: number;\n height: number;\n showTitle: boolean;\n colorScale: AnnotationColorScales[string];\n aes: HeatmapSettingsImpl['aes'];\n frame: HeatmapSettingsImpl['chartSettings']['frame'];\n xGroupKeys: string[];\n yGroupKeys: string[];\n xKeysByGroups: GroupedCellsData['facets'][keyof GroupedCellsData['facets']]['xKeysByGroups'];\n yKeysByGroups: GroupedCellsData['facets'][keyof GroupedCellsData['facets']]['yKeysByGroups'];\n tooltipsData: TooltipsData<Cell | AnnotationTooltipData>;\n activeElementContainer?: Element;\n}\n\nfunction isAnnotationTooltip(d:Cell|AnnotationTooltipData|null):d is AnnotationTooltipData {\n return d !== null && ('isAnnotation' in d);\n}\n\nexport function Annotation({\n facetKey,\n data,\n scales,\n stepX,\n stepY,\n x,\n y,\n annotation,\n showTitle,\n width,\n height,\n colorScale,\n aes,\n frame,\n xGroupKeys,\n yGroupKeys,\n xKeysByGroups,\n yKeysByGroups,\n tooltipsData,\n activeElementContainer\n}: AnnotationProps) {\n const {position, titlePosition, valueColumn} = annotation;\n const vertical = position === 'left' || position === 'right';\n const keys = (vertical ? scales.y : scales.x).domain();\n const textPosition = getTextPosition(vertical, position, titlePosition, width, height);\n const isDimmedBackground = tooltipsData.fixed && activeElementContainer;\n\n return (\n <g>\n {keys.map(key => {\n const value = data?.[key];\n const fillColor = colorScale.type === 'continuous'\n ? colorScale.scale(Number(value))\n : colorScale.scale(String(value));\n const xInner= x + (vertical ? 0 : scales.x(key));\n const yInner= y + (vertical ? scales.y(key) : 0);\n const width = vertical ? ANNOTATION_WIDTH : stepX;\n const height = vertical ? stepY : ANNOTATION_WIDTH;\n const xKey = vertical ? null : key;\n const yKey = vertical ? key : null;\n const highlighted = isDimmedBackground\n && isAnnotationTooltip(tooltipsData.selectedData)\n && tooltipsData.selectedData.xKey === xKey\n && tooltipsData.selectedData.yKey === yKey\n && facetKey === tooltipsData.currentFacet;\n const cellElement = (\n <rect\n key={key}\n x={xInner}\n y={yInner}\n width={width}\n height={height}\n fill={fillColor}\n stroke={aes.cellStrokeColor}\n onMouseEnter={() => tooltipsData.onMouseEnter({\n isAnnotation: true,\n x: xInner + width,\n y: yInner + height / 2,\n xKey,\n yKey,\n value,\n title: valueColumn.label ?? valueColumn.value\n } satisfies AnnotationTooltipData, facetKey)}\n onMouseLeave={() => tooltipsData.onMouseLeave()}\n />\n );\n return highlighted ? createPortal(cellElement, activeElementContainer) : cellElement;\n })}\n {tooltipsData.fixed && !vertical && xGroupKeys.map(xGroupKey => {\n const keysCountX = xKeysByGroups[xGroupKey].length;\n if (keysCountX === 0) {\n return null;\n }\n const groupWidth = keysCountX * stepX;\n const groupX = scales.x(xKeysByGroups[xGroupKey][0]);\n return (\n <rect\n key={`${groupX}_${y}`}\n x={groupX + x}\n y={y}\n width={groupWidth}\n height={ANNOTATION_WIDTH}\n stroke=\"none\"\n fill=\"rgba(255, 255, 255, 0.8)\"\n />\n );\n })}\n {tooltipsData.fixed && vertical && yGroupKeys.map(yGroupKey => {\n const keysCountY = yKeysByGroups[yGroupKey].length;\n if (keysCountY === 0) {\n return null;\n }\n const groupHeight = keysCountY * stepY;\n const groupY = scales.y(yKeysByGroups[yGroupKey][0]);\n return (\n <rect\n key={`${x}_${groupY}`}\n x={x}\n y={groupY + y}\n width={ANNOTATION_WIDTH}\n height={groupHeight}\n stroke=\"none\"\n fill=\"rgba(255, 255, 255, 0.8)\"\n />\n );\n })}\n {frame.type === 'groups' &&\n !vertical &&\n xGroupKeys.map(xGroupKey => {\n const keysCountX = xKeysByGroups[xGroupKey].length;\n if (keysCountX === 0) {\n return null;\n }\n const groupWidth = keysCountX * stepX;\n const groupX = scales.x(xKeysByGroups[xGroupKey][0]);\n return (\n <rect\n key={`${groupX}_${y}`}\n x={groupX + x}\n y={y}\n width={groupWidth}\n height={ANNOTATION_WIDTH}\n stroke={BLACK}\n fill=\"none\"\n />\n );\n })}\n {frame.type === 'groups' &&\n vertical &&\n yGroupKeys.map(yGroupKey => {\n const keysCountY = yKeysByGroups[yGroupKey].length;\n if (keysCountY === 0) {\n return null;\n }\n const groupHeight = keysCountY * stepY;\n const groupY = scales.y(yKeysByGroups[yGroupKey][0]);\n return (\n <rect\n key={`${x}_${groupY}`}\n x={x}\n y={groupY + y}\n width={ANNOTATION_WIDTH}\n height={groupHeight}\n stroke={BLACK}\n fill=\"none\"\n />\n );\n })}\n {showTitle && (\n <g\n fontWeight=\"500\"\n fontSize=\"14px\"\n transform={`translate(${x + textPosition.x},${y + textPosition.y}) rotate(${textPosition.rotate})`}\n >\n <text textAnchor={textPosition.anchor} dominantBaseline=\"central\">\n {valueColumn.label ?? valueColumn.value}\n </text>\n </g>\n )}\n </g>\n );\n}\n"],"names":["getTextPosition","vertical","annotationPosition","titlePosition","width","height","x","ANNOTATION_WIDTH","y","anchor","isAnnotationTooltip","d","Annotation","facetKey","data","scales","stepX","stepY","annotation","showTitle","colorScale","aes","frame","xGroupKeys","yGroupKeys","xKeysByGroups","yKeysByGroups","tooltipsData","activeElementContainer","position","valueColumn","keys","textPosition","isDimmedBackground","key","value","fillColor","xInner","yInner","xKey","yKey","highlighted","cellElement","jsx","createPortal","xGroupKey","keysCountX","groupWidth","groupX","yGroupKey","keysCountY","groupHeight","groupY","BLACK"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"GroupCaptions.d.ts","sourceRoot":"","sources":["../../../../src/heatmap/components/Captions/GroupCaptions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,uBAAuB,EAAE,WAAW,EAAC,MAAM,UAAU,CAAC;AAChF,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,2BAA2B,CAAC;AAGnE,UAAU,kBAAkB;IACxB,iBAAiB,EAAE,uBAAuB,CAAC;IAC3C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC;IACrD,KAAK,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC;IACrD,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,OAAO,CAAC;CAClB;AACD,wBAAgB,aAAa,CAAC,EAC1B,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,aAAa,EACb,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,MAAM,EACN,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,WAAW,EACX,KAAK,GACR,EAAE,kBAAkB,2CA0FpB"}
1
+ {"version":3,"file":"GroupCaptions.d.ts","sourceRoot":"","sources":["../../../../src/heatmap/components/Captions/GroupCaptions.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,WAAW,EAAE,uBAAuB,EAAE,WAAW,EAAC,MAAM,UAAU,CAAC;AAChF,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,2BAA2B,CAAC;AAGnE,UAAU,kBAAkB;IACxB,iBAAiB,EAAE,uBAAuB,CAAC;IAC3C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC;IACrD,KAAK,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC;IACrD,WAAW,EAAE,WAAW,CAAC;IACzB,KAAK,EAAE,OAAO,CAAC;CAClB;AACD,wBAAgB,aAAa,CAAC,EAC1B,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,aAAa,EACb,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,MAAM,EACN,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,WAAW,EACX,KAAK,GACR,EAAE,kBAAkB,2CAiGpB"}
@@ -1,34 +1,43 @@
1
1
  import { j as n } from "../../../node_modules/react/jsx-runtime.js";
2
+ import { TICK_OFFSET as e } from "../../constants.js";
2
3
  function R({
3
4
  sideElementBBoxes: t,
4
- xGroupKeys: j,
5
- yGroupKeys: $,
6
- xKeysByGroups: f,
7
- yKeysByGroups: x,
8
- xGroupLabels: m,
9
- yGroupLabels: V,
10
- scales: d,
11
- stepX: k,
12
- stepY: w,
13
- xAxis: L,
14
- yAxis: C,
15
- labelAngles: c,
16
- debug: b
5
+ xGroupKeys: V,
6
+ yGroupKeys: k,
7
+ xKeysByGroups: x,
8
+ yKeysByGroups: b,
9
+ xGroupLabels: w,
10
+ yGroupLabels: C,
11
+ scales: j,
12
+ stepX: L,
13
+ stepY: T,
14
+ xAxis: F,
15
+ yAxis: P,
16
+ labelAngles: m,
17
+ debug: $
17
18
  }) {
18
- const G = t.top.groups.isVisible || t.bottom.groups.isVisible, a = t.top.groups.isVisible ? t.top.groups : t.bottom.groups, P = t.left.groups.isVisible || t.right.groups.isVisible, r = t.left.groups.isVisible ? t.left.groups : t.right.groups;
19
+ const W = t.top.groups.isVisible || t.bottom.groups.isVisible, a = t.top.groups.isVisible ? t.top.groups : t.bottom.groups, A = t.left.groups.isVisible || t.right.groups.isVisible, i = t.left.groups.isVisible ? t.left.groups : t.right.groups;
19
20
  return /* @__PURE__ */ n.jsxs("g", { children: [
20
- G && /* @__PURE__ */ n.jsx("g", { transform: `translate(${a.x},${a.y})`, children: j.map((o) => {
21
- const h = f[o].length;
22
- if (h === 0)
21
+ W && /* @__PURE__ */ n.jsx("g", { transform: `translate(${a.x},${a.y})`, children: V.map((o) => {
22
+ const l = x[o].length;
23
+ if (l === 0)
23
24
  return null;
24
- const s = c.xGroupLabels !== 0, i = L.groupingPosition === "top", l = h * k, p = d.x(f[o][0]) + l / 2, g = s ? i ? a.height : 0 : a.height / 2, u = -c.xGroupLabels, e = s ? i ? "start" : "end" : "middle";
25
- return /* @__PURE__ */ n.jsxs("g", { transform: `translate(${p},${g})`, children: [
26
- /* @__PURE__ */ n.jsx("text", { transform: `rotate(${u})`, dominantBaseline: "central", textAnchor: e, children: m[o] }),
27
- b && /* @__PURE__ */ n.jsx(
25
+ const r = m.xGroupLabels, c = r !== 0, g = F.groupingPosition === "top", h = l * L, s = j.x(x[o][0]) + h / 2, p = c ? g ? a.height : 0 : a.height / 2, u = -r, f = r === 45 ? 2 * e : r === 90 ? e : 0, d = c ? g ? "start" : "end" : "middle";
26
+ return /* @__PURE__ */ n.jsxs("g", { transform: `translate(${s},${p + f})`, children: [
27
+ /* @__PURE__ */ n.jsx(
28
+ "text",
29
+ {
30
+ transform: `rotate(${u})`,
31
+ dominantBaseline: "central",
32
+ textAnchor: d,
33
+ children: w[o]
34
+ }
35
+ ),
36
+ $ && /* @__PURE__ */ n.jsx(
28
37
  "rect",
29
38
  {
30
- x: -l / 2,
31
- width: l,
39
+ x: -h / 2,
40
+ width: h,
32
41
  height: a.height,
33
42
  stroke: "black",
34
43
  fill: "none"
@@ -36,29 +45,29 @@ function R({
36
45
  )
37
46
  ] }, o);
38
47
  }) }),
39
- P && /* @__PURE__ */ n.jsx("g", { transform: `translate(${r.x},${r.y})`, children: $.map((o) => {
40
- const h = x[o].length;
41
- if (h === 0)
48
+ A && /* @__PURE__ */ n.jsx("g", { transform: `translate(${i.x},${i.y})`, children: k.map((o) => {
49
+ const l = b[o].length;
50
+ if (l === 0)
42
51
  return null;
43
- const s = h * w, i = C.groupingPosition === "left", l = i ? r.width : 0, p = d.y(x[o][0]) + s / 2, g = c.yGroupLabels !== 0, u = c.yGroupLabels === 45 ? -45 : (i ? -1 : 1) * (90 - c.yGroupLabels), e = g ? i ? "end" : "start" : "middle";
44
- return /* @__PURE__ */ n.jsxs("g", { transform: `translate(${l},${p})`, children: [
52
+ const r = l * T, c = P.groupingPosition === "left", g = c ? i.width : 0, h = j.y(b[o][0]) + r / 2, s = m.yGroupLabels, p = s !== 0, u = s === 45 ? -45 : (c ? -1 : 1) * (90 - s), f = s === 45 ? 2 * e : s === 90 ? e : 0, d = p ? c ? "end" : "start" : "middle";
53
+ return /* @__PURE__ */ n.jsxs("g", { transform: `translate(${g - f},${h})`, children: [
45
54
  /* @__PURE__ */ n.jsx(
46
55
  "text",
47
56
  {
48
- y: g ? 0 : -r.width / 2,
57
+ y: p ? 0 : -i.width / 2,
49
58
  transform: `rotate(${u})`,
50
59
  dominantBaseline: "central",
51
- textAnchor: e,
52
- children: V[o]
60
+ textAnchor: d,
61
+ children: C[o]
53
62
  }
54
63
  ),
55
- b && /* @__PURE__ */ n.jsx(
64
+ $ && /* @__PURE__ */ n.jsx(
56
65
  "rect",
57
66
  {
58
- x: -r.width / 2,
59
- y: -s / 2,
60
- width: r.width,
61
- height: s,
67
+ x: -i.width / 2,
68
+ y: -r / 2,
69
+ width: i.width,
70
+ height: r,
62
71
  stroke: "black",
63
72
  fill: "none"
64
73
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GroupCaptions.js","sources":["../../../../src/heatmap/components/Captions/GroupCaptions.tsx"],"sourcesContent":["import type {ChartScales, ChartSideElementsBBoxes, LabelAngles} from '../types';\nimport type {HeatmapSettingsImpl} from '../../HeatmapSettingsImpl';\nimport React from 'react';\n\ninterface GroupCaptionsProps {\n sideElementBBoxes: ChartSideElementsBBoxes;\n xGroupKeys: string[];\n yGroupKeys: string[];\n xKeysByGroups: Record<string, string[]>;\n yKeysByGroups: Record<string, string[]>;\n xGroupLabels: Record<string, string>;\n yGroupLabels: Record<string, string>;\n scales: ChartScales;\n stepX: number;\n stepY: number;\n xAxis: HeatmapSettingsImpl['chartSettings']['xAxis'];\n yAxis: HeatmapSettingsImpl['chartSettings']['yAxis'];\n labelAngles: LabelAngles;\n debug: boolean;\n}\nexport function GroupCaptions({\n sideElementBBoxes,\n xGroupKeys,\n yGroupKeys,\n xKeysByGroups,\n yKeysByGroups,\n xGroupLabels,\n yGroupLabels,\n scales,\n stepX,\n stepY,\n xAxis,\n yAxis,\n labelAngles,\n debug,\n}: GroupCaptionsProps) {\n const xGroupsVisible = sideElementBBoxes.top.groups.isVisible || sideElementBBoxes.bottom.groups.isVisible;\n const xGroupsBBox = sideElementBBoxes.top.groups.isVisible\n ? sideElementBBoxes.top.groups\n : sideElementBBoxes.bottom.groups;\n\n const yGroupsVisible = sideElementBBoxes.left.groups.isVisible || sideElementBBoxes.right.groups.isVisible;\n const yGroupsBBox = sideElementBBoxes.left.groups.isVisible\n ? sideElementBBoxes.left.groups\n : sideElementBBoxes.right.groups;\n\n return (\n <g>\n {/* x group titles */}\n {xGroupsVisible && (\n <g transform={`translate(${xGroupsBBox.x},${xGroupsBBox.y})`}>\n {xGroupKeys.map(xGroupKey => {\n const keysCount = xKeysByGroups[xGroupKey].length;\n if (keysCount === 0) {\n return null;\n }\n const inclined = labelAngles.xGroupLabels !== 0;\n const onTop = xAxis.groupingPosition === 'top';\n const groupWidth = keysCount * stepX;\n const x = scales.x(xKeysByGroups[xGroupKey][0]) + groupWidth / 2;\n const y = inclined ? (onTop ? xGroupsBBox.height : 0) : xGroupsBBox.height / 2;\n const angle = -labelAngles.xGroupLabels;\n const textAnchor = !inclined ? 'middle' : onTop ? 'start' : 'end';\n return (\n <g key={xGroupKey} transform={`translate(${x},${y})`}>\n <text transform={`rotate(${angle})`} dominantBaseline=\"central\" textAnchor={textAnchor}>\n {xGroupLabels[xGroupKey]}\n </text>\n {debug && (\n <rect\n x={-groupWidth / 2}\n width={groupWidth}\n height={xGroupsBBox.height}\n stroke=\"black\"\n fill=\"none\"\n />\n )}\n </g>\n );\n })}\n </g>\n )}\n {/* y group titles */}\n {yGroupsVisible && (\n <g transform={`translate(${yGroupsBBox.x},${yGroupsBBox.y})`}>\n {yGroupKeys.map(yGroupKey => {\n const keysCount = yKeysByGroups[yGroupKey].length;\n if (keysCount === 0) {\n return null;\n }\n const groupWidth = keysCount * stepY;\n const onLeft = yAxis.groupingPosition === 'left';\n const x = onLeft ? yGroupsBBox.width : 0;\n const y = scales.y(yKeysByGroups[yGroupKey][0]) + groupWidth / 2;\n const inclined = labelAngles.yGroupLabels !== 0;\n const angle =\n labelAngles.yGroupLabels === 45 ? -45 : (onLeft ? -1 : 1) * (90 - labelAngles.yGroupLabels);\n const textAnchor = !inclined ? 'middle' : onLeft ? 'end' : 'start';\n return (\n <g key={yGroupKey} transform={`translate(${x},${y})`}>\n <text\n y={inclined ? 0 : -yGroupsBBox.width / 2}\n transform={`rotate(${angle})`}\n dominantBaseline=\"central\"\n textAnchor={textAnchor}\n >\n {yGroupLabels[yGroupKey]}\n </text>\n {debug && (\n <rect\n x={-yGroupsBBox.width / 2}\n y={-groupWidth / 2}\n width={yGroupsBBox.width}\n height={groupWidth}\n stroke=\"black\"\n fill=\"none\"\n />\n )}\n </g>\n );\n })}\n </g>\n )}\n </g>\n );\n}\n"],"names":["GroupCaptions","sideElementBBoxes","xGroupKeys","yGroupKeys","xKeysByGroups","yKeysByGroups","xGroupLabels","yGroupLabels","scales","stepX","stepY","xAxis","yAxis","labelAngles","debug","xGroupsVisible","xGroupsBBox","yGroupsVisible","yGroupsBBox","jsx","xGroupKey","keysCount","inclined","onTop","groupWidth","x","y","angle","textAnchor","yGroupKey","onLeft"],"mappings":"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"}
1
+ {"version":3,"file":"GroupCaptions.js","sources":["../../../../src/heatmap/components/Captions/GroupCaptions.tsx"],"sourcesContent":["import {TICK_OFFSET} from '../../constants';\nimport type {ChartScales, ChartSideElementsBBoxes, LabelAngles} from '../types';\nimport type {HeatmapSettingsImpl} from '../../HeatmapSettingsImpl';\nimport React from 'react';\n\ninterface GroupCaptionsProps {\n sideElementBBoxes: ChartSideElementsBBoxes;\n xGroupKeys: string[];\n yGroupKeys: string[];\n xKeysByGroups: Record<string, string[]>;\n yKeysByGroups: Record<string, string[]>;\n xGroupLabels: Record<string, string>;\n yGroupLabels: Record<string, string>;\n scales: ChartScales;\n stepX: number;\n stepY: number;\n xAxis: HeatmapSettingsImpl['chartSettings']['xAxis'];\n yAxis: HeatmapSettingsImpl['chartSettings']['yAxis'];\n labelAngles: LabelAngles;\n debug: boolean;\n}\nexport function GroupCaptions({\n sideElementBBoxes,\n xGroupKeys,\n yGroupKeys,\n xKeysByGroups,\n yKeysByGroups,\n xGroupLabels,\n yGroupLabels,\n scales,\n stepX,\n stepY,\n xAxis,\n yAxis,\n labelAngles,\n debug,\n}: GroupCaptionsProps) {\n const xGroupsVisible = sideElementBBoxes.top.groups.isVisible || sideElementBBoxes.bottom.groups.isVisible;\n const xGroupsBBox = sideElementBBoxes.top.groups.isVisible\n ? sideElementBBoxes.top.groups\n : sideElementBBoxes.bottom.groups;\n\n const yGroupsVisible = sideElementBBoxes.left.groups.isVisible || sideElementBBoxes.right.groups.isVisible;\n const yGroupsBBox = sideElementBBoxes.left.groups.isVisible\n ? sideElementBBoxes.left.groups\n : sideElementBBoxes.right.groups;\n\n return (\n <g>\n {/* x group titles */}\n {xGroupsVisible && (\n <g transform={`translate(${xGroupsBBox.x},${xGroupsBBox.y})`}>\n {xGroupKeys.map(xGroupKey => {\n const keysCount = xKeysByGroups[xGroupKey].length;\n if (keysCount === 0) {\n return null;\n }\n const angle = labelAngles.xGroupLabels;\n const inclined = angle !== 0;\n const onTop = xAxis.groupingPosition === 'top';\n const groupWidth = keysCount * stepX;\n const x = scales.x(xKeysByGroups[xGroupKey][0]) + groupWidth / 2;\n const y = inclined ? (onTop ? xGroupsBBox.height : 0) : xGroupsBBox.height / 2;\n const rotate = -angle;\n const offset = angle === 45 ? 2 * TICK_OFFSET : angle === 90 ? TICK_OFFSET : 0;\n const textAnchor = !inclined ? 'middle' : onTop ? 'start' : 'end';\n return (\n <g key={xGroupKey} transform={`translate(${x},${y + offset})`}>\n <text\n transform={`rotate(${rotate})`}\n dominantBaseline=\"central\"\n textAnchor={textAnchor}\n >\n {xGroupLabels[xGroupKey]}\n </text>\n {debug && (\n <rect\n x={-groupWidth / 2}\n width={groupWidth}\n height={xGroupsBBox.height}\n stroke=\"black\"\n fill=\"none\"\n />\n )}\n </g>\n );\n })}\n </g>\n )}\n {/* y group titles */}\n {yGroupsVisible && (\n <g transform={`translate(${yGroupsBBox.x},${yGroupsBBox.y})`}>\n {yGroupKeys.map(yGroupKey => {\n const keysCount = yKeysByGroups[yGroupKey].length;\n if (keysCount === 0) {\n return null;\n }\n const groupWidth = keysCount * stepY;\n const onLeft = yAxis.groupingPosition === 'left';\n const x = onLeft ? yGroupsBBox.width : 0;\n const y = scales.y(yKeysByGroups[yGroupKey][0]) + groupWidth / 2;\n const angle = labelAngles.yGroupLabels;\n const inclined = angle !== 0;\n const rotate = angle === 45 ? -45 : (onLeft ? -1 : 1) * (90 - angle);\n const offset = angle === 45 ? 2 * TICK_OFFSET : angle === 90 ? TICK_OFFSET : 0;\n const textAnchor = !inclined ? 'middle' : onLeft ? 'end' : 'start';\n return (\n <g key={yGroupKey} transform={`translate(${x - offset},${y})`}>\n <text\n y={inclined ? 0 : -yGroupsBBox.width / 2}\n transform={`rotate(${rotate})`}\n dominantBaseline=\"central\"\n textAnchor={textAnchor}\n >\n {yGroupLabels[yGroupKey]}\n </text>\n {debug && (\n <rect\n x={-yGroupsBBox.width / 2}\n y={-groupWidth / 2}\n width={yGroupsBBox.width}\n height={groupWidth}\n stroke=\"black\"\n fill=\"none\"\n />\n )}\n </g>\n );\n })}\n </g>\n )}\n </g>\n );\n}\n"],"names":["GroupCaptions","sideElementBBoxes","xGroupKeys","yGroupKeys","xKeysByGroups","yKeysByGroups","xGroupLabels","yGroupLabels","scales","stepX","stepY","xAxis","yAxis","labelAngles","debug","xGroupsVisible","xGroupsBBox","yGroupsVisible","yGroupsBBox","jsx","xGroupKey","keysCount","angle","inclined","onTop","groupWidth","x","y","rotate","offset","TICK_OFFSET","textAnchor","jsxs","yGroupKey","onLeft"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Chart.d.ts","sourceRoot":"","sources":["../../../src/heatmap/components/Chart.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAIzD,OAAO,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAKlE,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,aAAa,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,WAAW,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AA4CtM,wBAAgB,KAAK,CAAC,SAAS,EAAE,EAC7B,WAAW,EACX,QAAQ,EACR,UAAU,EACV,MAAM,EACN,KAAK,EACL,UAAU,EACV,UAAU,EACV,aAAa,EACb,aAAa,EACb,UAAU,EACV,aAAa,EACb,SAAS,EACT,KAAK,EACL,KAAK,EACL,OAAO,EACP,OAAO,EACP,WAAW,EACX,qBAAqB,EACrB,mBAAmB,EACnB,GAAG,EACH,WAAW,EACX,UAAU,EACV,OAAO,EACP,iBAAiB,EACjB,YAAY,GACf,EAAE;IACC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,mBAAmB,CAAC;IAChC,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAC7E,aAAa,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IAC7F,aAAa,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IAC7F,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,CAAC;IACzC,aAAa,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACpD,SAAS,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAChD,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAChC,WAAW,EAAE,gBAAgB,CAAC;IAC9B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,YAAY,EAAE,YAAY,CAAC,IAAI,GAAC,qBAAqB,CAAC,CAAC;CAC1D,2CAgLA"}
1
+ {"version":3,"file":"Chart.d.ts","sourceRoot":"","sources":["../../../src/heatmap/components/Chart.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAMzD,OAAO,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAKlE,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,aAAa,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,WAAW,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AA4CtM,wBAAgB,KAAK,CAAC,SAAS,EAAE,EAC7B,WAAW,EACX,QAAQ,EACR,UAAU,EACV,MAAM,EACN,KAAK,EACL,UAAU,EACV,UAAU,EACV,aAAa,EACb,aAAa,EACb,UAAU,EACV,aAAa,EACb,SAAS,EACT,KAAK,EACL,KAAK,EACL,OAAO,EACP,OAAO,EACP,WAAW,EACX,qBAAqB,EACrB,mBAAmB,EACnB,GAAG,EACH,WAAW,EACX,UAAU,EACV,OAAO,EACP,iBAAiB,EACjB,YAAY,GACf,EAAE;IACC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,mBAAmB,CAAC;IAChC,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAC7E,aAAa,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IAC7F,aAAa,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IAC7F,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,MAAM,CAAC;IACzC,aAAa,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACpD,SAAS,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAChD,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAChC,WAAW,EAAE,gBAAgB,CAAC;IAC9B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,YAAY,EAAE,YAAY,CAAC,IAAI,GAAC,qBAAqB,CAAC,CAAC;CAC1D,2CAmLA"}
@@ -1,54 +1,55 @@
1
1
  import { j as r } from "../../node_modules/react/jsx-runtime.js";
2
- import { r as ee } from "../../_virtual/index.js";
3
- import { r as te } from "../../node_modules/react-dom/index.js";
2
+ import { r as te } from "../../_virtual/index.js";
3
+ import { r as ne } from "../../node_modules/react-dom/index.js";
4
4
  import { Tooltip as S } from "../../common/Tooltip.js";
5
- import { FONT_SIZE as ne, FACET_TITLE_OFFSET as oe } from "../constants.js";
6
- import { Annotations as re } from "./Annotations/index.js";
7
- import { Captions as ie } from "./Captions/index.js";
8
- import { Dendrograms as fe } from "./Dendrograms.js";
5
+ import { useDataFrame as oe } from "../../common/useDataFrame.js";
6
+ import { FONT_SIZE as re, FACET_TITLE_OFFSET as ie } from "../constants.js";
7
+ import { Annotations as fe } from "./Annotations/index.js";
8
+ import { Captions as ue } from "./Captions/index.js";
9
+ import { Dendrograms as xe } from "./Dendrograms.js";
9
10
  import { Frames as le } from "./Frames.js";
10
- function v(e) {
11
+ function F(e) {
11
12
  if (e === null)
12
13
  return "null";
13
14
  if (typeof e == "number") {
14
- const o = e > 0 ? Math.floor(e) : Math.ceil(e), n = e - o;
15
- return o + Number(n.toPrecision(2));
15
+ const n = e > 0 ? Math.floor(e) : Math.ceil(e), o = e - n;
16
+ return n + Number(o.toPrecision(2));
16
17
  }
17
18
  return e;
18
19
  }
19
- function ue(e, o, n = []) {
20
- const i = e.data, m = [
21
- `X: ${o.xLabels[e.x]}`,
22
- `Y: ${o.yLabels[e.y]}`,
23
- `Value: ${v(e.value)}${e.value !== e.normalizedValue ? ` (${v(e.normalizedValue)})` : ""}`
20
+ function me(e, n, o, i = []) {
21
+ const m = [
22
+ `X: ${o.xLabels[n.x]}`,
23
+ `Y: ${o.yLabels[n.y]}`,
24
+ `Value: ${F(n.value)}${n.value !== n.normalizedValue ? ` (${F(n.normalizedValue)})` : ""}`
24
25
  ];
25
- for (const u of n)
26
- m.push(`${u.label}: ${i[u.valueLabels ?? u.value]}`);
26
+ for (const a of i)
27
+ m.push(`${a.label}: ${e.getColumnValue(a.value, n.idx)}`);
27
28
  return m;
28
29
  }
29
- function xe(e, o) {
30
- const n = [];
31
- return e.xKey && n.push(`X: ${o.xLabels[e.xKey]}`), e.yKey && n.push(`Y: ${o.yLabels[e.yKey]}`), n.push(`${e.title}: ${v(e.value)}`), n;
30
+ function ae(e, n) {
31
+ const o = [];
32
+ return e.xKey && o.push(`X: ${n.xLabels[e.xKey]}`), e.yKey && o.push(`Y: ${n.yLabels[e.yKey]}`), o.push(`${e.title}: ${F(e.value)}`), o;
32
33
  }
33
- function ae(e) {
34
- return e !== null && !("data" in e);
34
+ function ce(e) {
35
+ return e !== null && "isAnnotation" in e;
35
36
  }
36
37
  function W(e) {
37
- return e !== null && "data" in e;
38
+ return e !== null && "isCell" in e;
38
39
  }
39
- function Ce({
40
+ function pe({
40
41
  dendrograms: e,
41
- facetKey: o,
42
- dimensions: n,
42
+ facetKey: n,
43
+ dimensions: o,
43
44
  scales: i,
44
45
  cells: m,
45
- xGroupKeys: u,
46
- yGroupKeys: j,
47
- xKeysByGroups: C,
48
- yKeysByGroups: T,
46
+ xGroupKeys: a,
47
+ yGroupKeys: C,
48
+ xKeysByGroups: j,
49
+ yKeysByGroups: b,
49
50
  colorScale: z,
50
51
  chartSettings: h,
51
- cellsMeta: x,
52
+ cellsMeta: f,
52
53
  stepX: c,
53
54
  stepY: s,
54
55
  sharedX: H,
@@ -56,145 +57,147 @@ function Ce({
56
57
  annotations: N,
57
58
  annotationColorScales: P,
58
59
  dendrogramAesScales: R,
59
- aes: E,
60
+ aes: T,
60
61
  labelAngles: Z,
61
- chartSizes: $,
62
- margins: g,
63
- tooltipsContainer: w,
62
+ chartSizes: g,
63
+ margins: $,
64
+ tooltipsContainer: A,
64
65
  tooltipsData: t
65
66
  }) {
66
- const [b, q] = ee.useState(), { xAxis: J, yAxis: Q, tooltips: y } = h, { width: A, height: F } = n.inner, { padding: l, chartEdgeSides: U, sideElementBBoxes: a } = n, { xGroupLabels: D, yGroupLabels: M, xLabels: Y, yLabels: X } = x, L = i.x.domain(), V = i.y.domain(), _ = {
67
- left: g.left + n.left + l.left,
68
- right: $.totalWidth - (g.left + n.left + l.left),
69
- top: g.top + n.top + l.top,
70
- bottom: $.totalHeight - (g.top + n.top + l.top)
71
- }, k = !1, K = b && t.fixed;
72
- return /* @__PURE__ */ r.jsxs("g", { transform: `translate(${n.left},${n.top})`, fontSize: ne, children: [
73
- /* @__PURE__ */ r.jsxs("g", { transform: `translate(${l.left},${l.top})`, children: [
67
+ const q = oe(), [y, J] = te.useState(), { xAxis: Q, yAxis: U, tooltips: p } = h, { width: V, height: v } = o.inner, { padding: x, chartEdgeSides: D, sideElementBBoxes: l } = o, { xGroupLabels: K, yGroupLabels: G, xLabels: Y, yLabels: X } = f, E = i.x.domain(), w = i.y.domain(), _ = {
68
+ left: $.left + o.left + x.left,
69
+ right: g.totalWidth - ($.left + o.left + x.left),
70
+ top: $.top + o.top + x.top,
71
+ bottom: g.totalHeight - ($.top + o.top + x.top)
72
+ }, k = !1, M = y && t.fixed;
73
+ return /* @__PURE__ */ r.jsxs("g", { transform: `translate(${o.left},${o.top})`, fontSize: re, children: [
74
+ /* @__PURE__ */ r.jsxs("g", { transform: `translate(${x.left},${x.top})`, children: [
74
75
  /* @__PURE__ */ r.jsx(
75
- re,
76
+ fe,
76
77
  {
77
- facetKey: o,
78
- sideElementBBoxes: a,
78
+ facetKey: n,
79
+ sideElementBBoxes: l,
79
80
  annotations: N,
80
- cellsMeta: x,
81
+ cellsMeta: f,
81
82
  annotationColorScales: P,
82
83
  sharedX: H,
83
84
  sharedY: I,
84
- chartEdgeSides: U,
85
- width: A,
86
- height: F,
85
+ chartEdgeSides: D,
86
+ width: V,
87
+ height: v,
87
88
  scales: i,
88
89
  stepX: c,
89
90
  stepY: s,
90
- aes: E,
91
+ aes: T,
91
92
  frame: h.frame,
92
- xGroupKeys: u,
93
- yGroupKeys: j,
94
- xKeysByGroups: C,
95
- yKeysByGroups: T,
93
+ xGroupKeys: a,
94
+ yGroupKeys: C,
95
+ xKeysByGroups: j,
96
+ yKeysByGroups: b,
96
97
  tooltipsData: t,
97
- activeElementContainer: b
98
+ activeElementContainer: y
98
99
  }
99
100
  ),
100
101
  /* @__PURE__ */ r.jsx(
101
- fe,
102
+ xe,
102
103
  {
103
104
  dendrograms: e,
104
- sideElementBBoxes: a,
105
- xDataByKeys: x.xDataByKeys,
106
- yDataByKeys: x.yDataByKeys,
105
+ sideElementBBoxes: l,
106
+ xGroupKeys: f.xGroupKeys,
107
+ yGroupKeys: f.yGroupKeys,
108
+ xDataByKeys: f.xDataByKeys,
109
+ yDataByKeys: f.yDataByKeys,
107
110
  aesScales: R
108
111
  }
109
112
  ),
110
- a.top.facetTitle.isVisible && /* @__PURE__ */ r.jsx(
113
+ l.top.facetTitle.isVisible && /* @__PURE__ */ r.jsx(
111
114
  "text",
112
115
  {
113
- x: a.top.facetTitle.x,
114
- y: a.top.facetTitle.y + a.top.facetTitle.height - oe,
116
+ x: l.top.facetTitle.x,
117
+ y: l.top.facetTitle.y + l.top.facetTitle.height - ie,
115
118
  fontWeight: "500",
116
119
  fontSize: "20px",
117
- children: x.facetKeyValues[o].join(", ")
120
+ children: f.facetKeyValues[n].join(", ")
118
121
  }
119
122
  ),
120
123
  k,
121
- L.map(
122
- (d) => V.map((p) => {
124
+ E.map(
125
+ (d) => w.map((L) => {
123
126
  var O;
124
- const f = (O = m == null ? void 0 : m[d]) == null ? void 0 : O[p], G = K && W(t.selectedData) && (f == null ? void 0 : f.id) === t.selectedData.id, B = f ? /* @__PURE__ */ r.jsx(
127
+ const u = (O = m == null ? void 0 : m[d]) == null ? void 0 : O[L], ee = M && W(t.selectedData) && (u == null ? void 0 : u.id) === t.selectedData.id, B = u ? /* @__PURE__ */ r.jsx(
125
128
  "rect",
126
129
  {
127
130
  x: i.x(d),
128
- y: i.y(p),
131
+ y: i.y(L),
129
132
  width: c,
130
133
  height: s,
131
- stroke: E.cellStrokeColor,
132
- fill: f.value === null ? E.emptyCellColor : z(f.normalizedValue),
133
- onMouseOver: () => t.onMouseEnter(f, o),
134
+ stroke: T.cellStrokeColor,
135
+ fill: u.value === null ? T.emptyCellColor : z(u.normalizedValue),
136
+ onMouseOver: () => t.onMouseEnter(u, n),
134
137
  onMouseLeave: () => t.onMouseLeave()
135
138
  },
136
- f ? f.id : `${d}_${p}`
139
+ u ? u.id : `${d}_${L}`
137
140
  ) : null;
138
- return G ? te.createPortal(B, b) : B;
141
+ return ee ? ne.createPortal(B, y) : B;
139
142
  })
140
143
  ),
141
144
  /* @__PURE__ */ r.jsx(
142
145
  le,
143
146
  {
144
147
  frame: h.frame,
145
- xGroupKeys: u,
146
- yGroupKeys: j,
147
- xKeysByGroups: C,
148
- yKeysByGroups: T,
148
+ xGroupKeys: a,
149
+ yGroupKeys: C,
150
+ xKeysByGroups: j,
151
+ yKeysByGroups: b,
149
152
  scales: i,
150
153
  stepX: c,
151
154
  stepY: s,
152
- width: A,
153
- height: F
155
+ width: V,
156
+ height: v
154
157
  }
155
158
  ),
156
159
  /* @__PURE__ */ r.jsx(
157
- ie,
160
+ ue,
158
161
  {
159
- xAxis: J,
160
- yAxis: Q,
162
+ xAxis: Q,
163
+ yAxis: U,
161
164
  scales: i,
162
165
  stepX: c,
163
166
  stepY: s,
164
167
  debug: k,
165
- sideElementBBoxes: a,
166
- xKeys: L,
167
- yKeys: V,
168
- xGroupKeys: u,
169
- yGroupKeys: j,
170
- xKeysByGroups: C,
171
- yKeysByGroups: T,
172
- xGroupLabels: D,
173
- yGroupLabels: M,
168
+ sideElementBBoxes: l,
169
+ xKeys: E,
170
+ yKeys: w,
171
+ xGroupKeys: a,
172
+ yGroupKeys: C,
173
+ xKeysByGroups: j,
174
+ yKeysByGroups: b,
175
+ xGroupLabels: K,
176
+ yGroupLabels: G,
174
177
  labelAngles: Z,
175
178
  xLabels: Y,
176
179
  yLabels: X
177
180
  }
178
181
  )
179
182
  ] }),
180
- h.tooltips.show && W(t.selectedData) && t.currentFacet === o && /* @__PURE__ */ r.jsx(
183
+ h.tooltips.show && W(t.selectedData) && t.currentFacet === n && /* @__PURE__ */ r.jsx(
181
184
  S,
182
185
  {
183
- content: ue(t.selectedData, x, y == null ? void 0 : y.content),
186
+ content: me(q, t.selectedData, f, p == null ? void 0 : p.content),
184
187
  x: i.x(String(t.selectedData.x)) + c / 2,
185
188
  y: i.y(String(t.selectedData.y)) + s / 2,
186
- offset: L.length > 1 ? c / 2 : 0,
189
+ offset: E.length > 1 ? c / 2 : 0,
187
190
  active: !0,
188
191
  sideDistances: _,
189
192
  fixed: t.fixed,
190
193
  onClose: t.onClose,
191
- container: w
194
+ container: A
192
195
  }
193
196
  ),
194
- h.tooltips.show && ae(t.selectedData) && t.currentFacet === o && /* @__PURE__ */ r.jsx(
197
+ h.tooltips.show && ce(t.selectedData) && t.currentFacet === n && /* @__PURE__ */ r.jsx(
195
198
  S,
196
199
  {
197
- content: xe(t.selectedData, x),
200
+ content: ae(t.selectedData, f),
198
201
  x: t.selectedData.x,
199
202
  y: t.selectedData.y,
200
203
  offset: 0,
@@ -202,16 +205,16 @@ function Ce({
202
205
  sideDistances: _,
203
206
  fixed: t.fixed,
204
207
  onClose: t.onClose,
205
- container: w
208
+ container: A
206
209
  }
207
210
  ),
208
- /* @__PURE__ */ r.jsxs("g", { transform: `translate(${l.left},${l.top})`, children: [
209
- t.fixed && /* @__PURE__ */ r.jsx("rect", { width: $.chartWidth, height: $.chartHeight, fill: "rgba(255, 255, 255, 0.8)" }),
211
+ /* @__PURE__ */ r.jsxs("g", { transform: `translate(${x.left},${x.top})`, children: [
212
+ t.fixed && /* @__PURE__ */ r.jsx("rect", { width: g.chartWidth, height: g.chartHeight, fill: "rgba(255, 255, 255, 0.8)" }),
210
213
  /* @__PURE__ */ r.jsx(
211
214
  "g",
212
215
  {
213
216
  ref: (d) => {
214
- d && !b && q(d);
217
+ d && !y && J(d);
215
218
  }
216
219
  }
217
220
  )
@@ -219,6 +222,6 @@ function Ce({
219
222
  ] });
220
223
  }
221
224
  export {
222
- Ce as Chart
225
+ pe as Chart
223
226
  };
224
227
  //# sourceMappingURL=Chart.js.map