@milaboratories/miplots4 1.0.173 → 1.0.175

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 (440) hide show
  1. package/dist/AbstractChart.d.ts +1 -0
  2. package/dist/AbstractChart.d.ts.map +1 -0
  3. package/dist/DataFrame.d.ts +2 -1
  4. package/dist/DataFrame.d.ts.map +1 -0
  5. package/dist/DataFrame.js +52 -51
  6. package/dist/DataFrame.js.map +1 -1
  7. package/dist/MiPlots.d.ts +1 -0
  8. package/dist/MiPlots.d.ts.map +1 -0
  9. package/dist/bubble/BubbleSettingsImpl.d.ts +4 -0
  10. package/dist/bubble/BubbleSettingsImpl.d.ts.map +1 -0
  11. package/dist/bubble/BubbleSettingsImpl.js +16 -16
  12. package/dist/bubble/BubbleSettingsImpl.js.map +1 -1
  13. package/dist/bubble/ChartRenderer.d.ts +1 -0
  14. package/dist/bubble/ChartRenderer.d.ts.map +1 -0
  15. package/dist/bubble/components/AxisCaptions.d.ts +1 -0
  16. package/dist/bubble/components/AxisCaptions.d.ts.map +1 -0
  17. package/dist/bubble/components/Chart.d.ts +1 -0
  18. package/dist/bubble/components/Chart.d.ts.map +1 -0
  19. package/dist/bubble/components/ChartsGroup.d.ts +1 -0
  20. package/dist/bubble/components/ChartsGroup.d.ts.map +1 -0
  21. package/dist/bubble/components/types.d.ts +1 -0
  22. package/dist/bubble/components/types.d.ts.map +1 -0
  23. package/dist/bubble/constants.d.ts +1 -0
  24. package/dist/bubble/constants.d.ts.map +1 -0
  25. package/dist/bubble/getCellTooltip.d.ts +1 -0
  26. package/dist/bubble/getCellTooltip.d.ts.map +1 -0
  27. package/dist/bubble/getGroupedCellsData.d.ts +2 -1
  28. package/dist/bubble/getGroupedCellsData.d.ts.map +1 -0
  29. package/dist/bubble/getGroupedCellsData.js +12 -11
  30. package/dist/bubble/getGroupedCellsData.js.map +1 -1
  31. package/dist/bubble/index.d.ts +1 -0
  32. package/dist/bubble/index.d.ts.map +1 -0
  33. package/dist/bubble/index.js +61 -69
  34. package/dist/bubble/index.js.map +1 -1
  35. package/dist/bubble/utils/calculateCaptionTails.d.ts +1 -0
  36. package/dist/bubble/utils/calculateCaptionTails.d.ts.map +1 -0
  37. package/dist/bubble/utils/calculateChartSideElementSizes.d.ts +1 -0
  38. package/dist/bubble/utils/calculateChartSideElementSizes.d.ts.map +1 -0
  39. package/dist/bubble/utils/calculateSideElementsBBoxes.d.ts +1 -0
  40. package/dist/bubble/utils/calculateSideElementsBBoxes.d.ts.map +1 -0
  41. package/dist/bubble/utils/index.d.ts +1 -0
  42. package/dist/bubble/utils/index.d.ts.map +1 -0
  43. package/dist/common/BandAxis.d.ts +1 -0
  44. package/dist/common/BandAxis.d.ts.map +1 -0
  45. package/dist/common/ChartsTitle.d.ts +1 -0
  46. package/dist/common/ChartsTitle.d.ts.map +1 -0
  47. package/dist/common/ContinuousAxis.d.ts +1 -0
  48. package/dist/common/ContinuousAxis.d.ts.map +1 -0
  49. package/dist/common/ContinuousGrid.d.ts +1 -0
  50. package/dist/common/ContinuousGrid.d.ts.map +1 -0
  51. package/dist/common/Error.d.ts +1 -0
  52. package/dist/common/Error.d.ts.map +1 -0
  53. package/dist/common/ErrorBoundary.d.ts +1 -0
  54. package/dist/common/ErrorBoundary.d.ts.map +1 -0
  55. package/dist/common/Legend.d.ts +1 -0
  56. package/dist/common/Legend.d.ts.map +1 -0
  57. package/dist/common/Tooltip.d.ts +1 -0
  58. package/dist/common/Tooltip.d.ts.map +1 -0
  59. package/dist/common/fonts.d.ts +1 -0
  60. package/dist/common/fonts.d.ts.map +1 -0
  61. package/dist/common/types.d.ts +1 -0
  62. package/dist/common/types.d.ts.map +1 -0
  63. package/dist/common/useDataFrame.d.ts +1 -0
  64. package/dist/common/useDataFrame.d.ts.map +1 -0
  65. package/dist/constants.d.ts +1 -0
  66. package/dist/constants.d.ts.map +1 -0
  67. package/dist/constants.js +9 -11
  68. package/dist/constants.js.map +1 -1
  69. package/dist/dendro/ChartRenderer.d.ts +1 -0
  70. package/dist/dendro/ChartRenderer.d.ts.map +1 -0
  71. package/dist/dendro/DendroSettingsImpl.d.ts +1 -0
  72. package/dist/dendro/DendroSettingsImpl.d.ts.map +1 -0
  73. package/dist/dendro/components/Chart.d.ts +1 -0
  74. package/dist/dendro/components/Chart.d.ts.map +1 -0
  75. package/dist/dendro/components/Heatmap.d.ts +1 -0
  76. package/dist/dendro/components/Heatmap.d.ts.map +1 -0
  77. package/dist/dendro/components/Legend.d.ts +1 -0
  78. package/dist/dendro/components/Legend.d.ts.map +1 -0
  79. package/dist/dendro/components/LinksGroup.d.ts +1 -0
  80. package/dist/dendro/components/LinksGroup.d.ts.map +1 -0
  81. package/dist/dendro/components/NodesGroup.d.ts +1 -0
  82. package/dist/dendro/components/NodesGroup.d.ts.map +1 -0
  83. package/dist/dendro/components/types.d.ts +1 -0
  84. package/dist/dendro/components/types.d.ts.map +1 -0
  85. package/dist/dendro/constants.d.ts +1 -0
  86. package/dist/dendro/constants.d.ts.map +1 -0
  87. package/dist/dendro/getHeatmapData.d.ts +1 -0
  88. package/dist/dendro/getHeatmapData.d.ts.map +1 -0
  89. package/dist/dendro/getHierarchyData.d.ts +1 -0
  90. package/dist/dendro/getHierarchyData.d.ts.map +1 -0
  91. package/dist/dendro/index.d.ts +1 -0
  92. package/dist/dendro/index.d.ts.map +1 -0
  93. package/dist/discrete/ChartRenderer.d.ts +1 -0
  94. package/dist/discrete/ChartRenderer.d.ts.map +1 -0
  95. package/dist/discrete/DiscreteSettingsImpl.d.ts +3 -1
  96. package/dist/discrete/DiscreteSettingsImpl.d.ts.map +1 -0
  97. package/dist/discrete/DiscreteSettingsImpl.js.map +1 -1
  98. package/dist/discrete/components/Chart.d.ts +1 -0
  99. package/dist/discrete/components/Chart.d.ts.map +1 -0
  100. package/dist/discrete/components/ChartsGroup.d.ts +1 -0
  101. package/dist/discrete/components/ChartsGroup.d.ts.map +1 -0
  102. package/dist/discrete/components/Grid.d.ts +1 -0
  103. package/dist/discrete/components/Grid.d.ts.map +1 -0
  104. package/dist/discrete/components/NumberAxis.d.ts +1 -0
  105. package/dist/discrete/components/NumberAxis.d.ts.map +1 -0
  106. package/dist/discrete/components/layers/BarElement.d.ts +1 -0
  107. package/dist/discrete/components/layers/BarElement.d.ts.map +1 -0
  108. package/dist/discrete/components/layers/BinnedDotsElement.d.ts +1 -0
  109. package/dist/discrete/components/layers/BinnedDotsElement.d.ts.map +1 -0
  110. package/dist/discrete/components/layers/BoxElement.d.ts +1 -0
  111. package/dist/discrete/components/layers/BoxElement.d.ts.map +1 -0
  112. package/dist/discrete/components/layers/DotsGroupElement.d.ts +1 -0
  113. package/dist/discrete/components/layers/DotsGroupElement.d.ts.map +1 -0
  114. package/dist/discrete/components/layers/ErrorBarElement.d.ts +1 -0
  115. package/dist/discrete/components/layers/ErrorBarElement.d.ts.map +1 -0
  116. package/dist/discrete/components/layers/LineElement.d.ts +1 -0
  117. package/dist/discrete/components/layers/LineElement.d.ts.map +1 -0
  118. package/dist/discrete/components/layers/LogoElement.d.ts +1 -0
  119. package/dist/discrete/components/layers/LogoElement.d.ts.map +1 -0
  120. package/dist/discrete/components/layers/PairedPointsElement.d.ts +1 -0
  121. package/dist/discrete/components/layers/PairedPointsElement.d.ts.map +1 -0
  122. package/dist/discrete/components/layers/SinaElement.d.ts +1 -0
  123. package/dist/discrete/components/layers/SinaElement.d.ts.map +1 -0
  124. package/dist/discrete/components/layers/StackedAreaElement.d.ts +1 -0
  125. package/dist/discrete/components/layers/StackedAreaElement.d.ts.map +1 -0
  126. package/dist/discrete/components/layers/StackedBarElement.d.ts +1 -0
  127. package/dist/discrete/components/layers/StackedBarElement.d.ts.map +1 -0
  128. package/dist/discrete/components/layers/StatsPValue.d.ts +1 -0
  129. package/dist/discrete/components/layers/StatsPValue.d.ts.map +1 -0
  130. package/dist/discrete/components/layers/ViolinElement.d.ts +1 -0
  131. package/dist/discrete/components/layers/ViolinElement.d.ts.map +1 -0
  132. package/dist/discrete/components/layers/seqAlphabet.d.ts +1 -0
  133. package/dist/discrete/components/layers/seqAlphabet.d.ts.map +1 -0
  134. package/dist/discrete/components/types.d.ts +1 -0
  135. package/dist/discrete/components/types.d.ts.map +1 -0
  136. package/dist/discrete/constants.d.ts +1 -0
  137. package/dist/discrete/constants.d.ts.map +1 -0
  138. package/dist/discrete/index.d.ts +1 -0
  139. package/dist/discrete/index.d.ts.map +1 -0
  140. package/dist/discrete/index.js +151 -165
  141. package/dist/discrete/index.js.map +1 -1
  142. package/dist/discrete/layers/bar.d.ts +1 -0
  143. package/dist/discrete/layers/bar.d.ts.map +1 -0
  144. package/dist/discrete/layers/binnedDots.d.ts +1 -0
  145. package/dist/discrete/layers/binnedDots.d.ts.map +1 -0
  146. package/dist/discrete/layers/boxes.d.ts +1 -0
  147. package/dist/discrete/layers/boxes.d.ts.map +1 -0
  148. package/dist/discrete/layers/dots.d.ts +1 -0
  149. package/dist/discrete/layers/dots.d.ts.map +1 -0
  150. package/dist/discrete/layers/errorbars.d.ts +1 -0
  151. package/dist/discrete/layers/errorbars.d.ts.map +1 -0
  152. package/dist/discrete/layers/index.d.ts +1 -0
  153. package/dist/discrete/layers/index.d.ts.map +1 -0
  154. package/dist/discrete/layers/lines.d.ts +1 -0
  155. package/dist/discrete/layers/lines.d.ts.map +1 -0
  156. package/dist/discrete/layers/logo.d.ts +1 -0
  157. package/dist/discrete/layers/logo.d.ts.map +1 -0
  158. package/dist/discrete/layers/pairedPoints.d.ts +1 -0
  159. package/dist/discrete/layers/pairedPoints.d.ts.map +1 -0
  160. package/dist/discrete/layers/sina.d.ts +1 -0
  161. package/dist/discrete/layers/sina.d.ts.map +1 -0
  162. package/dist/discrete/layers/stackedArea.d.ts +1 -0
  163. package/dist/discrete/layers/stackedArea.d.ts.map +1 -0
  164. package/dist/discrete/layers/stackedBar.d.ts +1 -0
  165. package/dist/discrete/layers/stackedBar.d.ts.map +1 -0
  166. package/dist/discrete/layers/stats/MannWhitneyU.d.ts +1 -0
  167. package/dist/discrete/layers/stats/MannWhitneyU.d.ts.map +1 -0
  168. package/dist/discrete/layers/stats/index.d.ts +1 -0
  169. package/dist/discrete/layers/stats/index.d.ts.map +1 -0
  170. package/dist/discrete/layers/stats/pValueCalculation.d.ts +1 -0
  171. package/dist/discrete/layers/stats/pValueCalculation.d.ts.map +1 -0
  172. package/dist/discrete/layers/stats/pValueCorrection.d.ts +1 -0
  173. package/dist/discrete/layers/stats/pValueCorrection.d.ts.map +1 -0
  174. package/dist/discrete/layers/types.d.ts +1 -0
  175. package/dist/discrete/layers/types.d.ts.map +1 -0
  176. package/dist/discrete/layers/violins.d.ts +1 -0
  177. package/dist/discrete/layers/violins.d.ts.map +1 -0
  178. package/dist/discrete/utils/getChartStatsPadding.d.ts +1 -0
  179. package/dist/discrete/utils/getChartStatsPadding.d.ts.map +1 -0
  180. package/dist/discrete/utils/getFacetLabels.d.ts +1 -0
  181. package/dist/discrete/utils/getFacetLabels.d.ts.map +1 -0
  182. package/dist/discrete/utils/getFacetStringKey.d.ts +1 -0
  183. package/dist/discrete/utils/getFacetStringKey.d.ts.map +1 -0
  184. package/dist/discrete/utils/getOutliersBounds.d.ts +1 -0
  185. package/dist/discrete/utils/getOutliersBounds.d.ts.map +1 -0
  186. package/dist/discrete/utils/index.d.ts +1 -0
  187. package/dist/discrete/utils/index.d.ts.map +1 -0
  188. package/dist/discrete/utils/statsPValue.d.ts +1 -0
  189. package/dist/discrete/utils/statsPValue.d.ts.map +1 -0
  190. package/dist/heatmap/ChartRenderer.d.ts +1 -0
  191. package/dist/heatmap/ChartRenderer.d.ts.map +1 -0
  192. package/dist/heatmap/HeatmapSettingsImpl.d.ts +2 -0
  193. package/dist/heatmap/HeatmapSettingsImpl.d.ts.map +1 -0
  194. package/dist/heatmap/HeatmapSettingsImpl.js +29 -28
  195. package/dist/heatmap/HeatmapSettingsImpl.js.map +1 -1
  196. package/dist/heatmap/components/Annotations/Annotation.d.ts +1 -0
  197. package/dist/heatmap/components/Annotations/Annotation.d.ts.map +1 -0
  198. package/dist/heatmap/components/Annotations/AnnotationCellsCanvas.d.ts +1 -0
  199. package/dist/heatmap/components/Annotations/AnnotationCellsCanvas.d.ts.map +1 -0
  200. package/dist/heatmap/components/Annotations/AnnotationCellsSvg.d.ts +1 -0
  201. package/dist/heatmap/components/Annotations/AnnotationCellsSvg.d.ts.map +1 -0
  202. package/dist/heatmap/components/Annotations/index.d.ts +1 -0
  203. package/dist/heatmap/components/Annotations/index.d.ts.map +1 -0
  204. package/dist/heatmap/components/CanvasCells.d.ts +1 -0
  205. package/dist/heatmap/components/CanvasCells.d.ts.map +1 -0
  206. package/dist/heatmap/components/Captions/AxisCaptions.d.ts +1 -0
  207. package/dist/heatmap/components/Captions/AxisCaptions.d.ts.map +1 -0
  208. package/dist/heatmap/components/Captions/GroupCaptions.d.ts +1 -0
  209. package/dist/heatmap/components/Captions/GroupCaptions.d.ts.map +1 -0
  210. package/dist/heatmap/components/Captions/index.d.ts +1 -0
  211. package/dist/heatmap/components/Captions/index.d.ts.map +1 -0
  212. package/dist/heatmap/components/Chart.d.ts +1 -0
  213. package/dist/heatmap/components/Chart.d.ts.map +1 -0
  214. package/dist/heatmap/components/ChartsGroup.d.ts +1 -0
  215. package/dist/heatmap/components/ChartsGroup.d.ts.map +1 -0
  216. package/dist/heatmap/components/Dendrograms.d.ts +1 -0
  217. package/dist/heatmap/components/Dendrograms.d.ts.map +1 -0
  218. package/dist/heatmap/components/Frames.d.ts +1 -0
  219. package/dist/heatmap/components/Frames.d.ts.map +1 -0
  220. package/dist/heatmap/components/SvgCells.d.ts +1 -0
  221. package/dist/heatmap/components/SvgCells.d.ts.map +1 -0
  222. package/dist/heatmap/components/tooltipUtils.d.ts +1 -0
  223. package/dist/heatmap/components/tooltipUtils.d.ts.map +1 -0
  224. package/dist/heatmap/components/types.d.ts +1 -0
  225. package/dist/heatmap/components/types.d.ts.map +1 -0
  226. package/dist/heatmap/constants.d.ts +1 -0
  227. package/dist/heatmap/constants.d.ts.map +1 -0
  228. package/dist/heatmap/fillCellsData.d.ts +2 -1
  229. package/dist/heatmap/fillCellsData.d.ts.map +1 -0
  230. package/dist/heatmap/fillCellsData.js +185 -173
  231. package/dist/heatmap/fillCellsData.js.map +1 -1
  232. package/dist/heatmap/getCells.d.ts +2 -1
  233. package/dist/heatmap/getCells.d.ts.map +1 -0
  234. package/dist/heatmap/getCells.js +10 -9
  235. package/dist/heatmap/getCells.js.map +1 -1
  236. package/dist/heatmap/getClusters.d.ts +1 -0
  237. package/dist/heatmap/getClusters.d.ts.map +1 -0
  238. package/dist/heatmap/getDendrograms.d.ts +1 -0
  239. package/dist/heatmap/getDendrograms.d.ts.map +1 -0
  240. package/dist/heatmap/index.d.ts +1 -0
  241. package/dist/heatmap/index.d.ts.map +1 -0
  242. package/dist/heatmap/index.js +95 -102
  243. package/dist/heatmap/index.js.map +1 -1
  244. package/dist/heatmap/utils/calculateAnnotationTitleSizes.d.ts +1 -0
  245. package/dist/heatmap/utils/calculateAnnotationTitleSizes.d.ts.map +1 -0
  246. package/dist/heatmap/utils/calculateCaptionTails.d.ts +1 -0
  247. package/dist/heatmap/utils/calculateCaptionTails.d.ts.map +1 -0
  248. package/dist/heatmap/utils/calculateChartSideElementSizes.d.ts +1 -0
  249. package/dist/heatmap/utils/calculateChartSideElementSizes.d.ts.map +1 -0
  250. package/dist/heatmap/utils/calculateSideElementsBBoxes.d.ts +1 -0
  251. package/dist/heatmap/utils/calculateSideElementsBBoxes.d.ts.map +1 -0
  252. package/dist/heatmap/utils/createColorScales.d.ts +1 -0
  253. package/dist/heatmap/utils/createColorScales.d.ts.map +1 -0
  254. package/dist/heatmap/utils/index.d.ts +1 -0
  255. package/dist/heatmap/utils/index.d.ts.map +1 -0
  256. package/dist/histogram/ChartRenderer.d.ts +1 -0
  257. package/dist/histogram/ChartRenderer.d.ts.map +1 -0
  258. package/dist/histogram/HistogramSettingsImpl.d.ts +2 -0
  259. package/dist/histogram/HistogramSettingsImpl.d.ts.map +1 -0
  260. package/dist/histogram/HistogramSettingsImpl.js +43 -43
  261. package/dist/histogram/HistogramSettingsImpl.js.map +1 -1
  262. package/dist/histogram/components/Chart.d.ts +1 -0
  263. package/dist/histogram/components/Chart.d.ts.map +1 -0
  264. package/dist/histogram/components/Chart.js +53 -53
  265. package/dist/histogram/components/Chart.js.map +1 -1
  266. package/dist/histogram/components/ChartsGroup.d.ts +1 -0
  267. package/dist/histogram/components/ChartsGroup.d.ts.map +1 -0
  268. package/dist/histogram/components/types.d.ts +1 -0
  269. package/dist/histogram/components/types.d.ts.map +1 -0
  270. package/dist/histogram/constants.d.ts +1 -0
  271. package/dist/histogram/constants.d.ts.map +1 -0
  272. package/dist/histogram/getHistogramData.d.ts +3 -2
  273. package/dist/histogram/getHistogramData.d.ts.map +1 -0
  274. package/dist/histogram/getHistogramData.js +51 -50
  275. package/dist/histogram/getHistogramData.js.map +1 -1
  276. package/dist/histogram/index.d.ts +1 -1
  277. package/dist/histogram/index.d.ts.map +1 -0
  278. package/dist/histogram/index.js +89 -90
  279. package/dist/histogram/index.js.map +1 -1
  280. package/dist/index.d.ts +4 -1
  281. package/dist/index.d.ts.map +1 -0
  282. package/dist/index.js +8 -4
  283. package/dist/index.js.map +1 -1
  284. package/dist/scatterplot/ChartRenderer.d.ts +1 -0
  285. package/dist/scatterplot/ChartRenderer.d.ts.map +1 -0
  286. package/dist/scatterplot/ScatterplotSettingsImpl.d.ts +3 -0
  287. package/dist/scatterplot/ScatterplotSettingsImpl.d.ts.map +1 -0
  288. package/dist/scatterplot/ScatterplotSettingsImpl.js.map +1 -1
  289. package/dist/scatterplot/components/Chart.d.ts +1 -0
  290. package/dist/scatterplot/components/Chart.d.ts.map +1 -0
  291. package/dist/scatterplot/components/ChartAxis.d.ts +1 -0
  292. package/dist/scatterplot/components/ChartAxis.d.ts.map +1 -0
  293. package/dist/scatterplot/components/ChartAxisTitles.d.ts +1 -0
  294. package/dist/scatterplot/components/ChartAxisTitles.d.ts.map +1 -0
  295. package/dist/scatterplot/components/ChartFacetTitle.d.ts +1 -0
  296. package/dist/scatterplot/components/ChartFacetTitle.d.ts.map +1 -0
  297. package/dist/scatterplot/components/ChartLayersData.d.ts +1 -0
  298. package/dist/scatterplot/components/ChartLayersData.d.ts.map +1 -0
  299. package/dist/scatterplot/components/ChartTooltip.d.ts +1 -0
  300. package/dist/scatterplot/components/ChartTooltip.d.ts.map +1 -0
  301. package/dist/scatterplot/components/ChartTrendsData.d.ts +1 -0
  302. package/dist/scatterplot/components/ChartTrendsData.d.ts.map +1 -0
  303. package/dist/scatterplot/components/ChartsGroup.d.ts +1 -0
  304. package/dist/scatterplot/components/ChartsGroup.d.ts.map +1 -0
  305. package/dist/scatterplot/components/Grid.d.ts +1 -0
  306. package/dist/scatterplot/components/Grid.d.ts.map +1 -0
  307. package/dist/scatterplot/components/types.d.ts +1 -0
  308. package/dist/scatterplot/components/types.d.ts.map +1 -0
  309. package/dist/scatterplot/constants.d.ts +1 -0
  310. package/dist/scatterplot/constants.d.ts.map +1 -0
  311. package/dist/scatterplot/dots.d.ts +3 -2
  312. package/dist/scatterplot/dots.d.ts.map +1 -0
  313. package/dist/scatterplot/dots.js +17 -16
  314. package/dist/scatterplot/dots.js.map +1 -1
  315. package/dist/scatterplot/getLayersData.d.ts +1 -0
  316. package/dist/scatterplot/getLayersData.d.ts.map +1 -0
  317. package/dist/scatterplot/index.d.ts +1 -1
  318. package/dist/scatterplot/index.d.ts.map +1 -0
  319. package/dist/scatterplot/index.js +100 -106
  320. package/dist/scatterplot/index.js.map +1 -1
  321. package/dist/scatterplot/linearRegression.d.ts +1 -0
  322. package/dist/scatterplot/linearRegression.d.ts.map +1 -0
  323. package/dist/scatterplot/utils/createAesGetter.d.ts +1 -0
  324. package/dist/scatterplot/utils/createAesGetter.d.ts.map +1 -0
  325. package/dist/scatterplot/utils/createLegendInfo.d.ts +1 -0
  326. package/dist/scatterplot/utils/createLegendInfo.d.ts.map +1 -0
  327. package/dist/scatterplot/utils/createLegendInfo.js +41 -41
  328. package/dist/scatterplot/utils/createLegendInfo.js.map +1 -1
  329. package/dist/scatterplot/utils/formatColumnValue.d.ts +1 -0
  330. package/dist/scatterplot/utils/formatColumnValue.d.ts.map +1 -0
  331. package/dist/scatterplot/utils/formatColumnValue.js +7 -6
  332. package/dist/scatterplot/utils/formatColumnValue.js.map +1 -1
  333. package/dist/scatterplot/utils/getTicksAndFormat.d.ts +1 -0
  334. package/dist/scatterplot/utils/getTicksAndFormat.d.ts.map +1 -0
  335. package/dist/scatterplot/utils/getVisibleLabels.d.ts +1 -0
  336. package/dist/scatterplot/utils/getVisibleLabels.d.ts.map +1 -0
  337. package/dist/scatterplot/utils/isNumericScale.d.ts +1 -0
  338. package/dist/scatterplot/utils/isNumericScale.d.ts.map +1 -0
  339. package/dist/scatterplot/utils/sortDotsByGrouping.d.ts +1 -0
  340. package/dist/scatterplot/utils/sortDotsByGrouping.d.ts.map +1 -0
  341. package/dist/scatterplot-umap/ChartRenderer.d.ts +1 -0
  342. package/dist/scatterplot-umap/ChartRenderer.d.ts.map +1 -0
  343. package/dist/scatterplot-umap/SettingsImpl.d.ts +1 -0
  344. package/dist/scatterplot-umap/SettingsImpl.d.ts.map +1 -0
  345. package/dist/scatterplot-umap/colors.d.ts +1 -0
  346. package/dist/scatterplot-umap/colors.d.ts.map +1 -0
  347. package/dist/scatterplot-umap/components/Lasso.d.ts +1 -0
  348. package/dist/scatterplot-umap/components/Lasso.d.ts.map +1 -0
  349. package/dist/scatterplot-umap/components/LowerSVG.d.ts +1 -0
  350. package/dist/scatterplot-umap/components/LowerSVG.d.ts.map +1 -0
  351. package/dist/scatterplot-umap/components/LowerSVG.js.map +1 -1
  352. package/dist/scatterplot-umap/components/SVGLayer.d.ts +1 -0
  353. package/dist/scatterplot-umap/components/SVGLayer.d.ts.map +1 -0
  354. package/dist/scatterplot-umap/components/UpperSVG.d.ts +1 -0
  355. package/dist/scatterplot-umap/components/UpperSVG.d.ts.map +1 -0
  356. package/dist/scatterplot-umap/constants.d.ts +1 -0
  357. package/dist/scatterplot-umap/constants.d.ts.map +1 -0
  358. package/dist/scatterplot-umap/index.d.ts +1 -0
  359. package/dist/scatterplot-umap/index.d.ts.map +1 -0
  360. package/dist/scatterplot-umap/index.js +77 -74
  361. package/dist/scatterplot-umap/index.js.map +1 -1
  362. package/dist/scatterplot-umap/types.d.ts +1 -0
  363. package/dist/scatterplot-umap/types.d.ts.map +1 -0
  364. package/dist/types/bubble.d.ts +48 -0
  365. package/dist/types/bubble.d.ts.map +1 -0
  366. package/dist/types/bubble.js +19 -18
  367. package/dist/types/bubble.js.map +1 -1
  368. package/dist/types/common.d.ts +39 -0
  369. package/dist/types/common.d.ts.map +1 -0
  370. package/dist/types/common.js +31 -30
  371. package/dist/types/common.js.map +1 -1
  372. package/dist/types/dendro.d.ts +109 -0
  373. package/dist/types/dendro.d.ts.map +1 -0
  374. package/dist/types/dendro.js +10 -9
  375. package/dist/types/dendro.js.map +1 -1
  376. package/dist/types/discrete.d.ts +176 -5
  377. package/dist/types/discrete.d.ts.map +1 -0
  378. package/dist/types/discrete.js +12 -11
  379. package/dist/types/discrete.js.map +1 -1
  380. package/dist/types/heatmap.d.ts +165 -0
  381. package/dist/types/heatmap.d.ts.map +1 -0
  382. package/dist/types/heatmap.js +2 -1
  383. package/dist/types/heatmap.js.map +1 -1
  384. package/dist/types/histogram.d.ts +28 -0
  385. package/dist/types/histogram.d.ts.map +1 -0
  386. package/dist/types/histogram.js +43 -42
  387. package/dist/types/histogram.js.map +1 -1
  388. package/dist/types/index.d.ts +1 -0
  389. package/dist/types/index.d.ts.map +1 -0
  390. package/dist/types/scatterplot-umap.d.ts +141 -0
  391. package/dist/types/scatterplot-umap.d.ts.map +1 -0
  392. package/dist/types/scatterplot.d.ts +189 -0
  393. package/dist/types/scatterplot.d.ts.map +1 -0
  394. package/dist/types/scatterplot.js +21 -19
  395. package/dist/types/scatterplot.js.map +1 -1
  396. package/dist/utils/TextMeasurer/TextMeasurer.d.ts +1 -0
  397. package/dist/utils/TextMeasurer/TextMeasurer.d.ts.map +1 -0
  398. package/dist/utils/WorkerFactory.d.ts +1 -0
  399. package/dist/utils/WorkerFactory.d.ts.map +1 -0
  400. package/dist/utils/arrangeLegendParts.d.ts +1 -0
  401. package/dist/utils/arrangeLegendParts.d.ts.map +1 -0
  402. package/dist/utils/arraysAreDifferent.d.ts +1 -0
  403. package/dist/utils/arraysAreDifferent.d.ts.map +1 -0
  404. package/dist/utils/createMultilineDiscreteLabels.d.ts +1 -0
  405. package/dist/utils/createMultilineDiscreteLabels.d.ts.map +1 -0
  406. package/dist/utils/getChartEdgeSides.d.ts +1 -0
  407. package/dist/utils/getChartEdgeSides.d.ts.map +1 -0
  408. package/dist/utils/getContinuousColorScale.d.ts +1 -0
  409. package/dist/utils/getContinuousColorScale.d.ts.map +1 -0
  410. package/dist/utils/getContinuousLegendTicks.d.ts +1 -0
  411. package/dist/utils/getContinuousLegendTicks.d.ts.map +1 -0
  412. package/dist/utils/getFacetKeysFromValueLists.d.ts +6 -0
  413. package/dist/utils/getFacetKeysFromValueLists.d.ts.map +1 -0
  414. package/dist/utils/getFacetKeysFromValueLists.js +9 -0
  415. package/dist/utils/getFacetKeysFromValueLists.js.map +1 -0
  416. package/dist/utils/getFacetOrGroupKey.d.ts +1 -0
  417. package/dist/utils/getFacetOrGroupKey.d.ts.map +1 -0
  418. package/dist/utils/getFacetRowsColumns.d.ts +1 -0
  419. package/dist/utils/getFacetRowsColumns.d.ts.map +1 -0
  420. package/dist/utils/getKeysCombination.d.ts +1 -0
  421. package/dist/utils/getKeysCombination.d.ts.map +1 -0
  422. package/dist/utils/getLegendWidth.d.ts +1 -0
  423. package/dist/utils/getLegendWidth.d.ts.map +1 -0
  424. package/dist/utils/getLineShape.d.ts +1 -0
  425. package/dist/utils/getLineShape.d.ts.map +1 -0
  426. package/dist/utils/getPointShape.d.ts +2 -1
  427. package/dist/utils/getPointShape.d.ts.map +1 -0
  428. package/dist/utils/getSizeLegendItem.d.ts +1 -0
  429. package/dist/utils/getSizeLegendItem.d.ts.map +1 -0
  430. package/dist/utils/hooks/useFunction.d.ts +1 -0
  431. package/dist/utils/hooks/useFunction.d.ts.map +1 -0
  432. package/dist/utils/index.d.ts +1 -0
  433. package/dist/utils/index.d.ts.map +1 -0
  434. package/dist/utils/measureMultilineDiscreteLabels.d.ts +1 -0
  435. package/dist/utils/measureMultilineDiscreteLabels.d.ts.map +1 -0
  436. package/dist/utils/numberFormat.d.ts +1 -0
  437. package/dist/utils/numberFormat.d.ts.map +1 -0
  438. package/dist/utils/splitTextByWidth.d.ts +1 -0
  439. package/dist/utils/splitTextByWidth.d.ts.map +1 -0
  440. package/package.json +5 -5
@@ -1,46 +1,46 @@
1
- var s = Object.defineProperty;
2
- var A = (r, i, o) => i in r ? s(r, i, { enumerable: !0, configurable: !0, writable: !0, value: o }) : r[i] = o;
3
- var e = (r, i, o) => A(r, typeof i != "symbol" ? i + "" : i, o);
4
- import y from "../_virtual/lodash.js";
5
- import { DEFAULT_HEIGHT_SMALL as x, DEFAULT_HEIGHT as L, DEFAULT_WIDTH_SMALL as S, DEFAULT_WIDTH as w, BLACK as T } from "../constants.js";
1
+ var A = Object.defineProperty;
2
+ var y = (i, r, o) => r in i ? A(i, r, { enumerable: !0, configurable: !0, writable: !0, value: o }) : i[r] = o;
3
+ var e = (i, r, o) => y(i, typeof r != "symbol" ? r + "" : r, o);
4
+ import x from "../_virtual/lodash.js";
5
+ import { DEFAULT_HEIGHT_SMALL as L, DEFAULT_HEIGHT as S, DEFAULT_WIDTH_SMALL as w, DEFAULT_WIDTH as T, BLACK as C } from "../constants.js";
6
6
  import "../types/common.js";
7
7
  import "../types/discrete.js";
8
8
  import "../types/scatterplot.js";
9
9
  import "../types/heatmap.js";
10
10
  import "../types/dendro.js";
11
- import { HistogramSettingsSchema as C } from "../types/histogram.js";
11
+ import { HistogramSettingsSchema as D } from "../types/histogram.js";
12
12
  import "../types/bubble.js";
13
- import { exhaustive as D } from "../utils/index.js";
14
- import { PADDINGS as b, MIN_MARGIN as B } from "./constants.js";
15
- const I = 10;
16
- class O {
17
- constructor(i) {
13
+ import { exhaustive as b } from "../utils/index.js";
14
+ import { PADDINGS as B, MIN_MARGIN as I } from "./constants.js";
15
+ const O = 10;
16
+ class _ {
17
+ constructor(r) {
18
18
  e(this, "type", "bins");
19
19
  e(this, "aes", {
20
20
  fillColor: "white",
21
- lineColor: T,
21
+ lineColor: C,
22
22
  opacity: 1
23
23
  });
24
24
  this.aes = {
25
25
  ...this.aes,
26
- ...i.aes
26
+ ...r.aes
27
27
  };
28
28
  }
29
29
  }
30
- class _ {
31
- constructor(i) {
30
+ class v {
31
+ constructor(r) {
32
32
  e(this, "type", "binsLine");
33
33
  e(this, "aes", {
34
34
  opacity: 1
35
35
  });
36
36
  this.aes = {
37
37
  ...this.aes,
38
- ...i.aes
38
+ ...r.aes
39
39
  };
40
40
  }
41
41
  }
42
- class q {
43
- constructor(i) {
42
+ class K {
43
+ constructor(r) {
44
44
  e(this, "id");
45
45
  e(this, "type", "histogram");
46
46
  e(this, "valueColumn");
@@ -54,53 +54,53 @@ class q {
54
54
  e(this, "chartSettings");
55
55
  e(this, "inheritedAes");
56
56
  e(this, "layers");
57
- var o, l, h, t, u, p, c, n, f, m, d;
58
- C.parse(i), this.id = y.uniqueId("settings"), this.facetSettings = { sharedX: !0, sharedY: !0, titlePosition: "left", ...i.facetSettings }, this.valueColumn = i.valueColumn, this.binsCount = i.binsCount ?? I, this.facetBy = i.facetBy ?? [], this.grouping = i.grouping ?? null, this.groupingStack = i.groupingStack ?? "vertical", this.groupingDirection = i.groupingDirection ?? "straight", this.groupingOrder = i.groupingOrder ?? null, this.chartSettings = {
57
+ var o, l, h, t, u, c, n, p, f, m, d, s;
58
+ D.parse(r), this.id = x.uniqueId("settings"), this.facetSettings = { sharedX: !0, sharedY: !0, titlePosition: "left", order: ((o = r.facetSettings) == null ? void 0 : o.order) ?? null, ...r.facetSettings }, this.valueColumn = r.valueColumn, this.binsCount = r.binsCount ?? O, this.facetBy = r.facetBy ?? [], this.grouping = r.grouping ?? null, this.groupingStack = r.groupingStack ?? "vertical", this.groupingDirection = r.groupingDirection ?? "straight", this.groupingOrder = r.groupingOrder ?? null, this.chartSettings = {
59
59
  size: {
60
- width: ((o = i == null ? void 0 : i.size) == null ? void 0 : o.width) ?? (this.facetBy.length ? S : w),
61
- height: ((l = i == null ? void 0 : i.size) == null ? void 0 : l.height) ?? (this.facetBy.length ? x : L),
62
- outerOffset: ((h = i == null ? void 0 : i.size) == null ? void 0 : h.outerOffset) ?? B,
63
- innerOffset: ((t = i == null ? void 0 : i.size) == null ? void 0 : t.innerOffset) ?? b.TOP
60
+ width: ((l = r == null ? void 0 : r.size) == null ? void 0 : l.width) ?? (this.facetBy.length ? w : T),
61
+ height: ((h = r == null ? void 0 : r.size) == null ? void 0 : h.height) ?? (this.facetBy.length ? L : S),
62
+ outerOffset: ((t = r == null ? void 0 : r.size) == null ? void 0 : t.outerOffset) ?? I,
63
+ innerOffset: ((u = r == null ? void 0 : r.size) == null ? void 0 : u.innerOffset) ?? B.TOP
64
64
  },
65
65
  title: {
66
66
  position: "center",
67
67
  show: !0,
68
- ...i.title,
69
- name: ((u = i.title) == null ? void 0 : u.name) ?? "Chart"
68
+ ...r.title,
69
+ name: ((c = r.title) == null ? void 0 : c.name) ?? "Chart"
70
70
  },
71
71
  yAxis: {
72
72
  showGrid: !0,
73
73
  showTicks: !0,
74
- scale: ((p = i.xAxis) == null ? void 0 : p.scale) ?? "linear",
74
+ scale: ((n = r.xAxis) == null ? void 0 : n.scale) ?? "linear",
75
75
  hiddenLabels: !1,
76
- ...i.yAxis
76
+ ...r.yAxis
77
77
  },
78
78
  xAxis: {
79
- title: i.valueColumn.label ?? i.valueColumn.value ?? "",
80
- scale: ((c = i.xAxis) == null ? void 0 : c.scale) ?? "linear",
81
- showGrid: ((n = i.xAxis) == null ? void 0 : n.showGrid) ?? !0,
82
- showTicks: ((f = i.xAxis) == null ? void 0 : f.showTicks) ?? !0,
83
- hiddenLabels: ((m = i.xAxis) == null ? void 0 : m.hiddenLabels) ?? !1,
84
- ...i.xAxis
79
+ title: r.valueColumn.label ?? r.valueColumn.value ?? "",
80
+ scale: ((p = r.xAxis) == null ? void 0 : p.scale) ?? "linear",
81
+ showGrid: ((f = r.xAxis) == null ? void 0 : f.showGrid) ?? !0,
82
+ showTicks: ((m = r.xAxis) == null ? void 0 : m.showTicks) ?? !0,
83
+ hiddenLabels: ((d = r.xAxis) == null ? void 0 : d.hiddenLabels) ?? !1,
84
+ ...r.xAxis
85
85
  },
86
- frame: { type: ((d = i.frame) == null ? void 0 : d.type) ?? "full" },
86
+ frame: { type: ((s = r.frame) == null ? void 0 : s.type) ?? "full" },
87
87
  legend: {
88
88
  show: !0,
89
89
  position: "right",
90
- ...i.legend
90
+ ...r.legend
91
91
  }
92
- }, this.inheritedAes = i.inheritedAes ?? {}, this.layers = i.layers.map((a) => {
92
+ }, this.inheritedAes = r.inheritedAes ?? {}, this.layers = r.layers.map((a) => {
93
93
  if (a.type === "bins")
94
- return new O(a);
95
- if (a.type === "binsLine")
96
94
  return new _(a);
97
- D(a, "Unknown layer type");
95
+ if (a.type === "binsLine")
96
+ return new v(a);
97
+ b(a, "Unknown layer type");
98
98
  }).filter(Boolean);
99
99
  }
100
100
  }
101
101
  export {
102
- O as BinsLayer,
103
- _ as BinsLineLayer,
104
- q as HistogramSettingsImpl
102
+ _ as BinsLayer,
103
+ v as BinsLineLayer,
104
+ K as HistogramSettingsImpl
105
105
  };
106
106
  //# sourceMappingURL=HistogramSettingsImpl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HistogramSettingsImpl.js","sources":["../../src/histogram/HistogramSettingsImpl.ts"],"sourcesContent":["import lodash from 'lodash';\nimport { BLACK, DEFAULT_HEIGHT, DEFAULT_HEIGHT_SMALL, DEFAULT_WIDTH, DEFAULT_WIDTH_SMALL } from '../constants';\nimport type {\n ColumnName,\n FrameType,\n HistogramSettings,\n InheritAesHistogram,\n LegendPosition,\n BinsLayer as OuterBinsLayer,\n BinsLineLayer as OuterLineLayer,\n SettingsInterface,\n TitlePosition,\n} from '../types';\nimport { type AesRecord, type ContinuousAesHistogram, HistogramSettingsSchema } from '../types';\nimport { exhaustive } from '../utils';\nimport { MIN_MARGIN, PADDINGS } from './constants';\n\nconst DEFAULT_BINS_COUNT = 10;\n\nexport class BinsLayer {\n readonly type = 'bins';\n readonly aes: {\n fillColor: InheritAesHistogram | string | ContinuousAesHistogram;\n lineColor: string,\n opacity: number;\n } = {\n fillColor: 'white',\n lineColor: BLACK,\n opacity: 1,\n };\n\n constructor(layer: OuterBinsLayer) {\n this.aes = {\n ...this.aes,\n ...layer.aes,\n };\n }\n}\n\nexport class BinsLineLayer {\n readonly type = 'binsLine';\n readonly aes: {\n opacity: number;\n } = {\n opacity: 1,\n };\n\n constructor(layer: OuterLineLayer) {\n this.aes = {\n ...this.aes,\n ...layer.aes,\n };\n }\n}\n\nexport type HistogramLayer = BinsLayer;\n\nexport class HistogramSettingsImpl implements SettingsInterface {\n readonly id: string;\n readonly type = 'histogram';\n readonly valueColumn: ColumnName;\n readonly binsCount: number;\n readonly facetSettings: {\n sharedX: boolean;\n sharedY: boolean;\n nRows?: number;\n nCols?: number;\n titlePosition: 'left' | 'center' | 'right';\n };\n readonly facetBy: ColumnName[];\n readonly grouping: ColumnName | null;\n readonly groupingStack: 'vertical' | 'horizontal';\n readonly groupingDirection: 'straight' | 'reverse';\n readonly groupingOrder: string[] | null;\n readonly chartSettings: {\n readonly size: {width: number; height: number, innerOffset: number, outerOffset: number};\n readonly title: {name: string; show: boolean; position: TitlePosition};\n readonly yAxis: {showGrid: boolean; showTicks: boolean; hiddenLabels: boolean; scale: 'linear' | 'log'};\n readonly xAxis: {showGrid: boolean; showTicks: boolean; hiddenLabels: boolean; title: string | ColumnName; scale: 'linear' | 'log'};\n readonly frame: {type: FrameType};\n readonly legend: {show: boolean; position: LegendPosition};\n };\n readonly inheritedAes: Record<string, AesRecord>;\n readonly layers: HistogramLayer[];\n\n constructor(settings: HistogramSettings) {\n HistogramSettingsSchema.parse(settings);\n this.id = lodash.uniqueId('settings');\n this.facetSettings = {sharedX: true, sharedY: true, titlePosition: 'left', ...settings.facetSettings};\n this.valueColumn = settings.valueColumn;\n this.binsCount = settings.binsCount ?? DEFAULT_BINS_COUNT;\n this.facetBy = settings.facetBy ?? [];\n this.grouping = settings.grouping ?? null;\n this.groupingStack = settings.groupingStack ?? 'vertical';\n this.groupingDirection = settings.groupingDirection ?? 'straight';\n this.groupingOrder = settings.groupingOrder ?? null;\n this.chartSettings = {\n size: {\n width: settings?.size?.width ?? (this.facetBy.length ? DEFAULT_WIDTH_SMALL : DEFAULT_WIDTH),\n height: settings?.size?.height ?? (this.facetBy.length ? DEFAULT_HEIGHT_SMALL : DEFAULT_HEIGHT),\n outerOffset: settings?.size?.outerOffset ?? MIN_MARGIN,\n innerOffset: settings?.size?.innerOffset ?? PADDINGS.TOP\n },\n title: {\n position: 'center',\n show: true,\n ...settings.title,\n name: settings.title?.name ?? 'Chart',\n },\n yAxis: {\n showGrid: true,\n showTicks: true,\n scale: settings.xAxis?.scale ?? 'linear',\n hiddenLabels: false,\n ...settings.yAxis,\n },\n xAxis: {\n title: settings.valueColumn.label ?? settings.valueColumn.value ?? '',\n scale: settings.xAxis?.scale ?? 'linear',\n showGrid: settings.xAxis?.showGrid ?? true,\n showTicks: settings.xAxis?.showTicks ?? true,\n hiddenLabels: settings.xAxis?.hiddenLabels ?? false,\n ...settings.xAxis,\n },\n frame: {type: settings.frame?.type ?? 'full'},\n legend: {\n show: true,\n position: 'right',\n ...settings.legend,\n },\n };\n\n this.inheritedAes = settings.inheritedAes ?? {};\n\n this.layers = settings.layers\n .map(layer => {\n if (layer.type === 'bins') {\n return new BinsLayer(layer);\n }\n if (layer.type === 'binsLine') {\n return new BinsLineLayer(layer);\n }\n exhaustive(layer, 'Unknown layer type');\n })\n .filter(Boolean) as HistogramLayer[];\n }\n}\n"],"names":["DEFAULT_BINS_COUNT","BinsLayer","layer","__publicField","BLACK","BinsLineLayer","HistogramSettingsImpl","settings","HistogramSettingsSchema","lodash","_a","DEFAULT_WIDTH_SMALL","DEFAULT_WIDTH","_b","DEFAULT_HEIGHT_SMALL","DEFAULT_HEIGHT","_c","MIN_MARGIN","_d","PADDINGS","_e","_f","_g","_h","_i","_j","_k","exhaustive"],"mappings":"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"}
1
+ {"version":3,"file":"HistogramSettingsImpl.js","sources":["../../src/histogram/HistogramSettingsImpl.ts"],"sourcesContent":["import lodash from 'lodash';\nimport { BLACK, DEFAULT_HEIGHT, DEFAULT_HEIGHT_SMALL, DEFAULT_WIDTH, DEFAULT_WIDTH_SMALL } from '../constants';\nimport type {\n ColumnName,\n FrameType,\n HistogramSettings,\n InheritAesHistogram,\n LegendPosition,\n BinsLayer as OuterBinsLayer,\n BinsLineLayer as OuterLineLayer,\n SettingsInterface,\n TitlePosition,\n} from '../types';\nimport { type AesRecord, type ContinuousAesHistogram, HistogramSettingsSchema } from '../types';\nimport { exhaustive } from '../utils';\nimport { MIN_MARGIN, PADDINGS } from './constants';\n\nconst DEFAULT_BINS_COUNT = 10;\n\nexport class BinsLayer {\n readonly type = 'bins';\n readonly aes: {\n fillColor: InheritAesHistogram | string | ContinuousAesHistogram;\n lineColor: string,\n opacity: number;\n } = {\n fillColor: 'white',\n lineColor: BLACK,\n opacity: 1,\n };\n\n constructor(layer: OuterBinsLayer) {\n this.aes = {\n ...this.aes,\n ...layer.aes,\n };\n }\n}\n\nexport class BinsLineLayer {\n readonly type = 'binsLine';\n readonly aes: {\n opacity: number;\n } = {\n opacity: 1,\n };\n\n constructor(layer: OuterLineLayer) {\n this.aes = {\n ...this.aes,\n ...layer.aes,\n };\n }\n}\n\nexport type HistogramLayer = BinsLayer;\n\nexport class HistogramSettingsImpl implements SettingsInterface {\n readonly id: string;\n readonly type = 'histogram';\n readonly valueColumn: ColumnName;\n readonly binsCount: number;\n readonly facetSettings: {\n sharedX: boolean;\n sharedY: boolean;\n nRows?: number;\n nCols?: number;\n titlePosition: 'left' | 'center' | 'right';\n order: string[] | null;\n };\n readonly facetBy: ColumnName[];\n readonly grouping: ColumnName | null;\n readonly groupingStack: 'vertical' | 'horizontal';\n readonly groupingDirection: 'straight' | 'reverse';\n readonly groupingOrder: string[] | null;\n readonly chartSettings: {\n readonly size: {width: number; height: number, innerOffset: number, outerOffset: number};\n readonly title: {name: string; show: boolean; position: TitlePosition};\n readonly yAxis: {showGrid: boolean; showTicks: boolean; hiddenLabels: boolean; scale: 'linear' | 'log'};\n readonly xAxis: {showGrid: boolean; showTicks: boolean; hiddenLabels: boolean; title: string | ColumnName; scale: 'linear' | 'log'};\n readonly frame: {type: FrameType};\n readonly legend: {show: boolean; position: LegendPosition};\n };\n readonly inheritedAes: Record<string, AesRecord>;\n readonly layers: HistogramLayer[];\n\n constructor(settings: HistogramSettings) {\n HistogramSettingsSchema.parse(settings);\n this.id = lodash.uniqueId('settings');\n this.facetSettings = {sharedX: true, sharedY: true, titlePosition: 'left', order: settings.facetSettings?.order ?? null, ...settings.facetSettings};\n this.valueColumn = settings.valueColumn;\n this.binsCount = settings.binsCount ?? DEFAULT_BINS_COUNT;\n this.facetBy = settings.facetBy ?? [];\n this.grouping = settings.grouping ?? null;\n this.groupingStack = settings.groupingStack ?? 'vertical';\n this.groupingDirection = settings.groupingDirection ?? 'straight';\n this.groupingOrder = settings.groupingOrder ?? null;\n this.chartSettings = {\n size: {\n width: settings?.size?.width ?? (this.facetBy.length ? DEFAULT_WIDTH_SMALL : DEFAULT_WIDTH),\n height: settings?.size?.height ?? (this.facetBy.length ? DEFAULT_HEIGHT_SMALL : DEFAULT_HEIGHT),\n outerOffset: settings?.size?.outerOffset ?? MIN_MARGIN,\n innerOffset: settings?.size?.innerOffset ?? PADDINGS.TOP\n },\n title: {\n position: 'center',\n show: true,\n ...settings.title,\n name: settings.title?.name ?? 'Chart',\n },\n yAxis: {\n showGrid: true,\n showTicks: true,\n scale: settings.xAxis?.scale ?? 'linear',\n hiddenLabels: false,\n ...settings.yAxis,\n },\n xAxis: {\n title: settings.valueColumn.label ?? settings.valueColumn.value ?? '',\n scale: settings.xAxis?.scale ?? 'linear',\n showGrid: settings.xAxis?.showGrid ?? true,\n showTicks: settings.xAxis?.showTicks ?? true,\n hiddenLabels: settings.xAxis?.hiddenLabels ?? false,\n ...settings.xAxis,\n },\n frame: {type: settings.frame?.type ?? 'full'},\n legend: {\n show: true,\n position: 'right',\n ...settings.legend,\n },\n };\n\n this.inheritedAes = settings.inheritedAes ?? {};\n\n this.layers = settings.layers\n .map(layer => {\n if (layer.type === 'bins') {\n return new BinsLayer(layer);\n }\n if (layer.type === 'binsLine') {\n return new BinsLineLayer(layer);\n }\n exhaustive(layer, 'Unknown layer type');\n })\n .filter(Boolean) as HistogramLayer[];\n }\n}\n"],"names":["DEFAULT_BINS_COUNT","BinsLayer","layer","__publicField","BLACK","BinsLineLayer","HistogramSettingsImpl","settings","HistogramSettingsSchema","lodash","_a","_b","DEFAULT_WIDTH_SMALL","DEFAULT_WIDTH","_c","DEFAULT_HEIGHT_SMALL","DEFAULT_HEIGHT","_d","MIN_MARGIN","_e","PADDINGS","_f","_g","_h","_i","_j","_k","_l","exhaustive"],"mappings":"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"}
@@ -28,3 +28,4 @@ interface ChartProps {
28
28
  }
29
29
  export declare function Chart({ facetKey, width, height, dimensions, scales, xAxis, yAxis, frameType, histogramData, facetSettings, captionsSizes, facetTitle, layers, aesColorGetter, groupingDirection, groupingStack, groupingLabels, chartSizes, margins, tooltipsContainer, tooltipsData }: ChartProps): import("react/jsx-runtime").JSX.Element;
30
30
  export {};
31
+ //# sourceMappingURL=Chart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chart.d.ts","sourceRoot":"","sources":["../../../src/histogram/components/Chart.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGzD,OAAO,KAAK,EAAc,SAAS,EAAE,MAAM,aAAa,CAAC;AAGzD,OAAO,KAAK,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACtF,OAAO,KAAK,EACR,SAAS,EAAE,aAAa,EACxB,mBAAmB,EACnB,WAAW,EACX,UAAU,EACV,OAAO,EACV,MAAM,SAAS,CAAC;AA6BjB,UAAU,UAAU;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,mBAAmB,CAAC;IAChC,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,qBAAqB,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC;IACvD,KAAK,EAAE,qBAAqB,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC;IACvD,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,EAAE,qBAAqB,CAAC,eAAe,CAAC,CAAC;IACtD,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,aAAa,EAAE,oBAAoB,CAAC;IACpC,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,cAAc,EAAE,SAAS,CAAC;IAC1B,iBAAiB,EAAE,qBAAqB,CAAC,mBAAmB,CAAC,CAAC;IAC9D,aAAa,EAAE,qBAAqB,CAAC,eAAe,CAAC,CAAC;IACtD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,YAAY,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;CACvC;AAED,wBAAgB,KAAK,CAAC,EAClB,QAAQ,EACR,KAAK,EACL,MAAM,EACN,UAAU,EACV,MAAM,EACN,KAAK,EACL,KAAK,EACL,SAAS,EACT,aAAa,EACb,aAAa,EACb,aAAa,EACb,UAAU,EACV,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,UAAU,EACV,OAAO,EACP,iBAAiB,EACjB,YAAY,EACf,EAAE,UAAU,2CA8JZ"}
@@ -1,7 +1,7 @@
1
1
  import { j as t } from "../../_virtual/jsx-runtime.js";
2
2
  import { r as P } from "../../_virtual/index.js";
3
3
  import { r as Q } from "../../_virtual/index2.js";
4
- import { ContinuousAxis as $ } from "../../common/ContinuousAxis.js";
4
+ import { ContinuousAxis as I } from "../../common/ContinuousAxis.js";
5
5
  import { ContinuousGrid as V } from "../../common/ContinuousGrid.js";
6
6
  import { Tooltip as S } from "../../common/Tooltip.js";
7
7
  import { BLACK as v } from "../../constants.js";
@@ -10,121 +10,121 @@ import { DEFAULT_TICKS_SIZE as k, FACET_TITLE_LINE as T, TITLE_LINE as D } from
10
10
  function ee(e) {
11
11
  return typeof e == "string" ? e : e.value;
12
12
  }
13
- function te(e, i) {
13
+ function te(e, l) {
14
14
  const c = [
15
15
  `Amount: ${e.count}`,
16
16
  `(from ${W(e.x)}, to ${W(e.x + e.width)})`
17
17
  ];
18
- return e.groupingKey !== "null" && c.push(`${i[e.groupingKey] ?? e.groupingKey}`), c;
18
+ return e.groupingKey !== "null" && c.push(`${l[e.groupingKey] ?? e.groupingKey}`), c;
19
19
  }
20
- function X(e, i, c, o) {
21
- return i === "vertical" ? e : e + c * o;
20
+ function X(e, l, c, o) {
21
+ return l === "vertical" ? e : e + c * o;
22
22
  }
23
- function _(e, i, c, o) {
24
- return i(c === "vertical" ? o === "straight" ? e.y.straight : e.y.reverse : e.count);
23
+ function _(e, l, c, o) {
24
+ return l(c === "vertical" ? o === "straight" ? e.y.straight : e.y.reverse : e.count);
25
25
  }
26
26
  function fe({
27
27
  facetKey: e,
28
- width: i,
28
+ width: l,
29
29
  height: c,
30
30
  dimensions: o,
31
31
  scales: r,
32
32
  xAxis: x,
33
33
  yAxis: a,
34
- frameType: K,
34
+ frameType: $,
35
35
  histogramData: j,
36
- facetSettings: s,
36
+ facetSettings: u,
37
37
  captionsSizes: oe,
38
38
  facetTitle: E,
39
39
  layers: z,
40
40
  aesColorGetter: M,
41
- groupingDirection: A,
41
+ groupingDirection: K,
42
42
  groupingStack: f,
43
43
  groupingLabels: Y,
44
- chartSizes: h,
45
- margins: m,
44
+ chartSizes: m,
45
+ margins: p,
46
46
  tooltipsContainer: w,
47
47
  tooltipsData: n
48
48
  }) {
49
- const [C, G] = P.useState(), { padding: l } = o, H = x.showTicks ? k : 0, N = a.showTicks ? k : 0, O = o.chartEdgeSides.includes("left") || !(s != null && s.sharedY), R = o.chartEdgeSides.includes("bottom") || !(s != null && s.sharedX), U = o.chartEdgeSides.includes("bottom"), L = j.groupingKeys, Z = j.histogramByGroupingKey[L[0]].bins[0], F = r.x(Z.width) - r.x(0), p = f === "vertical" ? F : F / L.length, b = {
50
- left: m.left + o.left + l.left,
51
- right: h.totalWidth - (m.left + o.left + l.left),
52
- top: m.top + o.top + l.top,
53
- bottom: h.totalHeight - (m.top + o.top + l.top)
54
- }, q = C && n.fixed, g = !1;
55
- return /* @__PURE__ */ t.jsxs("g", { transform: `translate(${o.left + l.left},${o.top + l.top})`, children: [
56
- g,
49
+ const [C, G] = P.useState(), { padding: i } = o, H = x.showTicks ? k : 0, N = a.showTicks ? k : 0, O = o.chartEdgeSides.includes("left") || !(u != null && u.sharedY), R = o.chartEdgeSides.includes("bottom") || !(u != null && u.sharedX), U = o.chartEdgeSides.includes("bottom"), L = j.groupingKeys, Z = j.histogramByGroupingKey[L[0]].bins[0], A = r.x(Z.width) - r.x(0), g = f === "vertical" ? A : A / L.length, b = {
50
+ left: p.left + o.left + i.left,
51
+ right: m.totalWidth - (p.left + o.left + i.left),
52
+ top: p.top + o.top + i.top,
53
+ bottom: m.totalHeight - (p.top + o.top + i.top)
54
+ }, q = C && n.fixed, y = !1;
55
+ return /* @__PURE__ */ t.jsxs("g", { transform: `translate(${o.left + i.left},${o.top + i.top})`, children: [
56
+ y,
57
57
  E.length && /* @__PURE__ */ t.jsxs("g", { children: [
58
- K === "full" && /* @__PURE__ */ t.jsx("rect", { x: "0", y: -l.top, height: l.top, width: i, fill: "#F7F8FA", stroke: v }),
59
- E.map((u, y) => {
60
- const B = E.length, d = (l.top - T * B) / 2;
58
+ $ === "full" && /* @__PURE__ */ t.jsx("rect", { x: "0", y: -i.top, height: i.top, width: l, fill: "#F7F8FA", stroke: v }),
59
+ E.map((s, h) => {
60
+ const B = E.length, d = (i.top - T * B) / 2;
61
61
  return /* @__PURE__ */ t.jsx(
62
62
  "text",
63
63
  {
64
64
  fontSize: "14px",
65
65
  fontWeight: "500",
66
66
  fill: v,
67
- x: i / 2,
68
- dy: d + T / 2 - l.top,
69
- y: y * T,
67
+ x: l / 2,
68
+ dy: d + T / 2 - i.top,
69
+ y: h * T,
70
70
  textAnchor: "middle",
71
71
  dominantBaseline: "central",
72
- children: u
72
+ children: s
73
73
  },
74
- y
74
+ h
75
75
  );
76
76
  })
77
77
  ] }),
78
78
  /* @__PURE__ */ t.jsxs("g", { dominantBaseline: "central", textAnchor: "middle", fontWeight: "500", fontSize: "14px", fill: v, children: [
79
- U && x.title && /* @__PURE__ */ t.jsx("text", { x: i / 2, y: c + l.bottom - D / 2, children: ee(x.title) }),
80
- g
79
+ U && x.title && /* @__PURE__ */ t.jsx("text", { x: l / 2, y: c + i.bottom - D / 2, children: ee(x.title) }),
80
+ y
81
81
  ] }),
82
82
  /* @__PURE__ */ t.jsx(
83
83
  V,
84
84
  {
85
- width: i,
85
+ width: l,
86
86
  height: c,
87
87
  scaleX: r.x,
88
88
  scaleY: r.y,
89
89
  axisX: x,
90
90
  axisY: a,
91
- frameType: K
91
+ frameType: $
92
92
  }
93
93
  ),
94
94
  R && /* @__PURE__ */ t.jsxs("g", { transform: `translate(0,${c})`, children: [
95
- /* @__PURE__ */ t.jsx($, { scale: r.x, orient: "bottom", tickSize: H, hiddenLabels: x.hiddenLabels }),
96
- g
95
+ /* @__PURE__ */ t.jsx(I, { scale: r.x, orient: "bottom", tickSize: H, hiddenLabels: x.hiddenLabels }),
96
+ y
97
97
  ] }),
98
98
  O && /* @__PURE__ */ t.jsxs("g", { children: [
99
- /* @__PURE__ */ t.jsx($, { scale: r.y, orient: "left", tickSize: N, hiddenLabels: a.hiddenLabels }),
100
- g
99
+ /* @__PURE__ */ t.jsx(I, { scale: r.y, orient: "left", tickSize: N, hiddenLabels: a.hiddenLabels }),
100
+ y
101
101
  ] }),
102
- z.map((u) => L.map(
103
- (y, B) => j.histogramByGroupingKey[y].bins.map((d) => {
104
- const J = q && n.selectedData === d, I = /* @__PURE__ */ t.jsx(
102
+ z.map((s) => L.map(
103
+ (h, B) => j.histogramByGroupingKey[h].bins.map((d) => {
104
+ const J = q && n.selectedData === d, F = /* @__PURE__ */ t.jsx(
105
105
  "rect",
106
106
  {
107
- x: X(r.x(d.x), f, B, p),
108
- y: _(d, r.y, f, A),
109
- fill: d.indexes.length > 0 ? M(u.aes.fillColor, d.indexes[0], d.count) : "",
110
- stroke: u.aes.lineColor,
111
- width: p,
107
+ x: X(r.x(d.x), f, B, g),
108
+ y: _(d, r.y, f, K),
109
+ fill: d.indexes.length > 0 ? M(s.aes.fillColor, d.indexes[0], d.count) : "",
110
+ stroke: s.aes.lineColor,
111
+ width: g,
112
112
  height: r.y(0) - r.y(d.count),
113
- opacity: u.aes.opacity ?? 1,
113
+ opacity: s.aes.opacity ?? 1,
114
114
  onMouseOver: () => n.onMouseEnter(d, e),
115
115
  onMouseLeave: () => n.onMouseLeave()
116
116
  },
117
- d.x
117
+ `${h}-${d.x}`
118
118
  );
119
- return J ? Q.createPortal(I, C) : I;
119
+ return J ? Q.createPortal(F, C) : F;
120
120
  })
121
121
  )),
122
- n.fixed && /* @__PURE__ */ t.jsx("rect", { width: h.chartWidth, height: h.chartHeight, fill: "rgba(255,255,255,0.8)" }),
122
+ n.fixed && /* @__PURE__ */ t.jsx("rect", { width: m.chartWidth, height: m.chartHeight, fill: "rgba(255,255,255,0.8)" }),
123
123
  /* @__PURE__ */ t.jsx(
124
124
  "g",
125
125
  {
126
- ref: (u) => {
127
- u && !C && G(u);
126
+ ref: (s) => {
127
+ s && !C && G(s);
128
128
  }
129
129
  }
130
130
  ),
@@ -132,8 +132,8 @@ function fe({
132
132
  S,
133
133
  {
134
134
  content: te(n.selectedData, Y),
135
- x: X(r.x(n.selectedData.x), f, n.selectedData.groupingKeyIdx, p) + p,
136
- y: _(n.selectedData, r.y, f, A) + r.y(0) - r.y(n.selectedData.count / 2),
135
+ x: X(r.x(n.selectedData.x), f, n.selectedData.groupingKeyIdx, g) + g,
136
+ y: _(n.selectedData, r.y, f, K) + r.y(0) - r.y(n.selectedData.count / 2),
137
137
  offset: 0,
138
138
  active: !0,
139
139
  fixed: n.fixed,
@@ -1 +1 @@
1
- {"version":3,"file":"Chart.js","sources":["../../../src/histogram/components/Chart.tsx"],"sourcesContent":["import { useState } from 'react';\nimport { createPortal } from 'react-dom';\nimport { ContinuousAxis } from '../../common/ContinuousAxis';\nimport { ContinuousGrid } from '../../common/ContinuousGrid';\nimport type { TooltipsData } from '../../common/Tooltip';\nimport { Tooltip } from '../../common/Tooltip';\nimport { BLACK } from '../../constants';\nimport type { ColumnName, FrameType } from '../../types';\nimport { numberFormat } from '../../utils/numberFormat';\nimport { DEFAULT_TICKS_SIZE, FACET_TITLE_LINE, TICK_OFFSET, TITLE_LINE } from '../constants';\nimport type { BinData, GroupedHistogramData } from '../getHistogramData';\nimport type { HistogramLayer, HistogramSettingsImpl } from '../HistogramSettingsImpl';\nimport type {\n AesGetter, CaptionsSizes,\n ChartDimensionsData,\n ChartScales,\n ChartSizes,\n Margins\n} from './types';\n\nfunction getAxisTitle(title: string | ColumnName): string {\n if (typeof title === 'string') {\n return title;\n }\n return title.value;\n}\nfunction getTooltipContent(bin: BinData, groupingLabels:Record<string, string>) {\n const lines = [\n `Amount: ${bin.count}`,\n `(from ${numberFormat(bin.x)}, to ${numberFormat(bin.x + bin.width)})`\n ];\n if (bin.groupingKey !== 'null') {\n lines.push(`${groupingLabels[bin.groupingKey] ?? bin.groupingKey}`);\n }\n return lines;\n}\n\nfunction getBinX(xPx:number, groupingStack: HistogramSettingsImpl['groupingStack'], keyIdx:number, width:number) {\n return groupingStack === 'vertical'\n ? xPx\n : xPx + keyIdx * width;\n}\nfunction getBinY(bin:BinData, scaleY:ChartScales['y'], groupingStack: HistogramSettingsImpl['groupingStack'], groupingDirection: HistogramSettingsImpl['groupingDirection']) {\n return groupingStack === 'vertical'\n ? scaleY(groupingDirection === 'straight' ? bin.y.straight : bin.y.reverse)\n : scaleY(bin.count);\n}\ninterface ChartProps {\n facetKey: string;\n width: number;\n height: number;\n dimensions: ChartDimensionsData;\n scales: ChartScales;\n xAxis: HistogramSettingsImpl['chartSettings']['xAxis'];\n yAxis: HistogramSettingsImpl['chartSettings']['yAxis'];\n frameType: FrameType;\n facetSettings: HistogramSettingsImpl['facetSettings'];\n margins: Margins;\n chartSizes: ChartSizes;\n captionsSizes: CaptionsSizes;\n facetTitle: string[];\n histogramData: GroupedHistogramData;\n layers: HistogramLayer[];\n aesColorGetter: AesGetter;\n groupingDirection: HistogramSettingsImpl['groupingDirection'];\n groupingStack: HistogramSettingsImpl['groupingStack'];\n groupingLabels: Record<string, string>;\n tooltipsContainer?: Element;\n tooltipsData: TooltipsData<BinData>;\n}\n\nexport function Chart({\n facetKey,\n width,\n height,\n dimensions,\n scales,\n xAxis,\n yAxis,\n frameType,\n histogramData,\n facetSettings,\n captionsSizes,\n facetTitle,\n layers,\n aesColorGetter,\n groupingDirection,\n groupingStack,\n groupingLabels,\n chartSizes,\n margins,\n tooltipsContainer,\n tooltipsData\n}: ChartProps) {\n const [activeElementContainer, setActiveElementContainer] = useState<SVGGElement>();\n\n const {padding} = dimensions;\n const tickSizeX = xAxis.showTicks ? DEFAULT_TICKS_SIZE : 0;\n const tickSizeY = yAxis.showTicks ? DEFAULT_TICKS_SIZE : 0;\n const needLeftAxis = dimensions.chartEdgeSides.includes('left') || !facetSettings?.sharedY;\n const needBottomAxis = dimensions.chartEdgeSides.includes('bottom') || !facetSettings?.sharedX;\n const needBottomAxisTitle = dimensions.chartEdgeSides.includes('bottom');\n const groupingKeys = histogramData.groupingKeys;\n\n const firstBin = histogramData.histogramByGroupingKey[groupingKeys[0]].bins[0];\n const binWidth = scales.x(firstBin.width) - scales.x(0);\n const partialBinWidth = groupingStack === 'vertical' ? binWidth : binWidth / groupingKeys.length;\n\n const sideDistances = {\n left: margins.left + dimensions.left + padding.left,\n right: chartSizes.totalWidth - (margins.left + dimensions.left + padding.left),\n top: margins.top + dimensions.top + padding.top,\n bottom: chartSizes.totalHeight - (margins.top + dimensions.top + padding.top),\n };\n\n const dimmedBackground = activeElementContainer && tooltipsData.fixed;\n const debug = false;\n return (\n <g transform={`translate(${dimensions.left + padding.left},${dimensions.top + padding.top})`}>\n {debug && (\n <g fill=\"none\" stroke=\"green\" strokeWidth=\"2px\">\n <rect width={width} height={padding.top} x={0} y={-padding.top} />\n <rect width={width} height={padding.bottom} x={0} y={height} />\n <rect width={padding.left} height={height} x={-padding.left} y={0} />\n <rect width={padding.right} height={height} x={width} y={0} />\n </g>\n )}\n {facetTitle.length && (\n <g>\n {frameType === 'full' && (\n <rect x=\"0\" y={-padding.top} height={padding.top} width={width} fill=\"#F7F8FA\" stroke={BLACK} />\n )}\n {facetTitle.map((titleLine, idx) => {\n const linesCount = facetTitle.length;\n const topOffset = (padding.top - FACET_TITLE_LINE * linesCount) / 2;\n return (\n <text\n key={idx}\n fontSize=\"14px\"\n fontWeight=\"500\"\n fill={BLACK}\n x={width / 2}\n dy={topOffset + FACET_TITLE_LINE / 2 - padding.top}\n y={idx * FACET_TITLE_LINE}\n textAnchor=\"middle\"\n dominantBaseline=\"central\"\n >\n {titleLine}\n </text>\n );\n })}\n </g>\n )}\n <g dominantBaseline=\"central\" textAnchor=\"middle\" fontWeight=\"500\" fontSize=\"14px\" fill={BLACK}>\n {needBottomAxisTitle && xAxis.title && (\n <text x={width / 2} y={height + padding.bottom - TITLE_LINE / 2}>\n {getAxisTitle(xAxis.title)}\n </text>\n )}\n {debug && needBottomAxisTitle && (\n <rect\n x=\"0\"\n y={height + padding.bottom - TITLE_LINE}\n width={width}\n height={TITLE_LINE}\n fill=\"none\"\n stroke=\"black\"\n />\n )}\n </g>\n <ContinuousGrid\n width={width}\n height={height}\n scaleX={scales.x}\n scaleY={scales.y}\n axisX={xAxis}\n axisY={yAxis}\n frameType={frameType}\n />\n {needBottomAxis && (\n <g transform={`translate(0,${height})`}>\n <ContinuousAxis scale={scales.x} orient=\"bottom\" tickSize={tickSizeX} hiddenLabels={xAxis.hiddenLabels} />\n {debug && (\n <rect\n x=\"0\"\n y={tickSizeX + TICK_OFFSET}\n width={width}\n height={TITLE_LINE}\n fill=\"none\"\n stroke=\"black\"\n />\n )}\n </g>\n )}\n {needLeftAxis && (\n <g>\n <ContinuousAxis scale={scales.y} orient=\"left\" tickSize={tickSizeY} hiddenLabels={yAxis.hiddenLabels} />\n {debug && (\n <rect\n x={-tickSizeY - TICK_OFFSET - captionsSizes.yAxisCaptionsWidth}\n y=\"0\"\n width={captionsSizes.yAxisCaptionsWidth}\n height={height}\n fill=\"none\"\n stroke=\"black\"\n />\n )}\n </g>\n )}\n {layers.map(layer => groupingKeys.map((groupingKey, keyIdx) =>\n histogramData.histogramByGroupingKey[groupingKey].bins.map((bin) => {\n const highlighted = dimmedBackground && tooltipsData.selectedData === bin;\n const binElement = (\n <rect\n key={bin.x}\n x={getBinX(scales.x(bin.x), groupingStack, keyIdx, partialBinWidth)}\n y={getBinY(bin, scales.y, groupingStack, groupingDirection)}\n fill={bin.indexes.length > 0 ? aesColorGetter(layer.aes.fillColor, bin.indexes[0], bin.count) : ''}\n stroke={layer.aes.lineColor}\n width={partialBinWidth}\n height={scales.y(0) - scales.y(bin.count)}\n opacity={layer.aes.opacity ?? 1}\n onMouseOver={() => tooltipsData.onMouseEnter(bin, facetKey)}\n onMouseLeave={() => tooltipsData.onMouseLeave()}\n />\n );\n return highlighted ? createPortal(binElement, activeElementContainer) : binElement;\n })\n ))}\n {tooltipsData.fixed && <rect width={chartSizes.chartWidth} height={chartSizes.chartHeight} fill=\"rgba(255,255,255,0.8)\"/>}\n <g ref={node => {\n if (node && !activeElementContainer) {\n setActiveElementContainer(node);\n }\n }}\n />\n {tooltipsData.selectedData && tooltipsData.currentFacet === facetKey && (\n <Tooltip\n content={getTooltipContent(tooltipsData.selectedData, groupingLabels)}\n x={getBinX(scales.x(tooltipsData.selectedData.x), groupingStack, tooltipsData.selectedData.groupingKeyIdx, partialBinWidth) + partialBinWidth}\n y={getBinY(tooltipsData.selectedData, scales.y, groupingStack, groupingDirection) + scales.y(0) - scales.y(tooltipsData.selectedData.count / 2)}\n offset={0}\n active\n fixed={tooltipsData.fixed}\n sideDistances={sideDistances}\n container={tooltipsContainer}\n onClose={tooltipsData.onClose}\n />\n )}\n </g>\n );\n}\n"],"names":["getAxisTitle","title","getTooltipContent","bin","groupingLabels","lines","numberFormat","getBinX","xPx","groupingStack","keyIdx","width","getBinY","scaleY","groupingDirection","Chart","facetKey","height","dimensions","scales","xAxis","yAxis","frameType","histogramData","facetSettings","captionsSizes","facetTitle","layers","aesColorGetter","chartSizes","margins","tooltipsContainer","tooltipsData","activeElementContainer","setActiveElementContainer","useState","padding","tickSizeX","DEFAULT_TICKS_SIZE","tickSizeY","needLeftAxis","needBottomAxis","needBottomAxisTitle","groupingKeys","firstBin","binWidth","partialBinWidth","sideDistances","dimmedBackground","debug","jsxs","jsx","BLACK","titleLine","idx","linesCount","topOffset","FACET_TITLE_LINE","TITLE_LINE","ContinuousGrid","ContinuousAxis","layer","groupingKey","highlighted","binElement","createPortal","node","Tooltip"],"mappings":";;;;;;;;;AAoBA,SAASA,GAAaC,GAAoC;AACtD,SAAI,OAAOA,KAAU,WACVA,IAEJA,EAAM;AACjB;AACA,SAASC,GAAkBC,GAAcC,GAAuC;AAC5E,QAAMC,IAAS;AAAA,IACX,WAAWF,EAAI,KAAK;AAAA,IACpB,SAASG,EAAaH,EAAI,CAAC,CAAC,QAAQG,EAAaH,EAAI,IAAIA,EAAI,KAAK,CAAC;AAAA,EAAA;AAEvE,SAAIA,EAAI,gBAAgB,UACpBE,EAAM,KAAK,GAAGD,EAAeD,EAAI,WAAW,KAAKA,EAAI,WAAW,EAAE,GAE/DE;AACX;AAEA,SAASE,EAAQC,GAAYC,GAAuDC,GAAeC,GAAc;AAC7G,SAAOF,MAAkB,aACnBD,IACAA,IAAME,IAASC;AACzB;AACA,SAASC,EAAQT,GAAaU,GAAyBJ,GAAuDK,GAA+D;AACzK,SACMD,EADCJ,MAAkB,aACZK,MAAsB,aAAaX,EAAI,EAAE,WAAWA,EAAI,EAAE,UAC1DA,EAAI,KAD6D;AAElF;AAyBO,SAASY,GAAM;AAAA,EAClB,UAAAC;AAAA,EACA,OAAAL;AAAA,EACA,QAAAM;AAAA,EACA,YAAAC;AAAA,EACA,QAAAC;AAAA,EACA,OAAAC;AAAA,EACA,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,eAAAC;AAAA,EACA,eAAAC;AAAA,EACA,eAAAC;AAAA,EACA,YAAAC;AAAA,EACA,QAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,mBAAAd;AAAA,EACA,eAAAL;AAAA,EACA,gBAAAL;AAAA,EACA,YAAAyB;AAAA,EACA,SAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,cAAAC;AACJ,GAAe;AACX,QAAM,CAACC,GAAwBC,CAAyB,IAAIC,WAAA,GAEtD,EAAC,SAAAC,MAAWlB,GACZmB,IAAYjB,EAAM,YAAYkB,IAAqB,GACnDC,IAAYlB,EAAM,YAAYiB,IAAqB,GACnDE,IAAetB,EAAW,eAAe,SAAS,MAAM,KAAK,EAACM,KAAA,QAAAA,EAAe,UAC7EiB,IAAiBvB,EAAW,eAAe,SAAS,QAAQ,KAAK,EAACM,KAAA,QAAAA,EAAe,UACjFkB,IAAsBxB,EAAW,eAAe,SAAS,QAAQ,GACjEyB,IAAepB,EAAc,cAE7BqB,IAAWrB,EAAc,uBAAuBoB,EAAa,CAAC,CAAC,EAAE,KAAK,CAAC,GACvEE,IAAW1B,EAAO,EAAEyB,EAAS,KAAK,IAAIzB,EAAO,EAAE,CAAC,GAChD2B,IAAkBrC,MAAkB,aAAaoC,IAAWA,IAAWF,EAAa,QAEpFI,IAAgB;AAAA,IAClB,MAAMjB,EAAQ,OAAOZ,EAAW,OAAOkB,EAAQ;AAAA,IAC/C,OAAOP,EAAW,cAAcC,EAAQ,OAAOZ,EAAW,OAAOkB,EAAQ;AAAA,IACzE,KAAKN,EAAQ,MAAMZ,EAAW,MAAMkB,EAAQ;AAAA,IAC5C,QAAQP,EAAW,eAAeC,EAAQ,MAAMZ,EAAW,MAAMkB,EAAQ;AAAA,EAAA,GAGvEY,IAAmBf,KAA0BD,EAAa,OAC1DiB,IAAQ;AACd,SACIC,gBAAAA,EAAAA,KAAC,KAAA,EAAE,WAAW,aAAahC,EAAW,OAAOkB,EAAQ,IAAI,IAAIlB,EAAW,MAAMkB,EAAQ,GAAG,KACpF,UAAA;AAAA,IAAAa;AAAA,IAQAvB,EAAW,UACRwB,gBAAAA,EAAAA,KAAC,KAAA,EACI,UAAA;AAAA,MAAA5B,MAAc,UACX6B,gBAAAA,EAAAA,IAAC,QAAA,EAAK,GAAE,KAAI,GAAG,CAACf,EAAQ,KAAK,QAAQA,EAAQ,KAAK,OAAAzB,GAAc,MAAK,WAAU,QAAQyC,GAAO;AAAA,MAEjG1B,EAAW,IAAI,CAAC2B,GAAWC,MAAQ;AAChC,cAAMC,IAAa7B,EAAW,QACxB8B,KAAapB,EAAQ,MAAMqB,IAAmBF,KAAc;AAClE,eACIJ,gBAAAA,EAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YAEG,UAAS;AAAA,YACT,YAAW;AAAA,YACX,MAAMC;AAAA,YACN,GAAGzC,IAAQ;AAAA,YACX,IAAI6C,IAAYC,IAAmB,IAAIrB,EAAQ;AAAA,YAC/C,GAAGkB,IAAMG;AAAA,YACT,YAAW;AAAA,YACX,kBAAiB;AAAA,YAEhB,UAAAJ;AAAA,UAAA;AAAA,UAVIC;AAAA,QAAA;AAAA,MAajB,CAAC;AAAA,IAAA,GACL;AAAA,IAEJJ,gBAAAA,EAAAA,KAAC,KAAA,EAAE,kBAAiB,WAAU,YAAW,UAAS,YAAW,OAAM,UAAS,QAAO,MAAME,GACpF,UAAA;AAAA,MAAAV,KAAuBtB,EAAM,SAC1B+B,gBAAAA,EAAAA,IAAC,QAAA,EAAK,GAAGxC,IAAQ,GAAG,GAAGM,IAASmB,EAAQ,SAASsB,IAAa,GACzD,UAAA1D,GAAaoB,EAAM,KAAK,GAC7B;AAAA,MAEH6B;AAAA,IAQG,GAER;AAAA,IACAE,gBAAAA,EAAAA;AAAAA,MAACQ;AAAA,MAAA;AAAA,QACG,OAAAhD;AAAA,QACA,QAAAM;AAAA,QACA,QAAQE,EAAO;AAAA,QACf,QAAQA,EAAO;AAAA,QACf,OAAOC;AAAA,QACP,OAAOC;AAAA,QACP,WAAAC;AAAA,MAAA;AAAA,IAAA;AAAA,IAEHmB,KACGS,gBAAAA,EAAAA,KAAC,KAAA,EAAE,WAAW,eAAejC,CAAM,KAC/B,UAAA;AAAA,MAAAkC,gBAAAA,EAAAA,IAACS,GAAA,EAAe,OAAOzC,EAAO,GAAG,QAAO,UAAS,UAAUkB,GAAW,cAAcjB,EAAM,aAAA,CAAc;AAAA,MACvG6B;AAAA,IAQG,GAER;AAAA,IAEHT,4BACI,KAAA,EACG,UAAA;AAAA,MAAAW,gBAAAA,EAAAA,IAACS,GAAA,EAAe,OAAOzC,EAAO,GAAG,QAAO,QAAO,UAAUoB,GAAW,cAAclB,EAAM,aAAA,CAAc;AAAA,MACrG4B;AAAA,IAQG,GAER;AAAA,IAEHtB,EAAO,IAAI,CAAAkC,MAASlB,EAAa;AAAA,MAAI,CAACmB,GAAapD,MAChDa,EAAc,uBAAuBuC,CAAW,EAAE,KAAK,IAAI,CAAC3D,MAAQ;AAChE,cAAM4D,IAAcf,KAAoBhB,EAAa,iBAAiB7B,GAChE6D,IACFb,gBAAAA,EAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YAEG,GAAG5C,EAAQY,EAAO,EAAEhB,EAAI,CAAC,GAAGM,GAAeC,GAAQoC,CAAe;AAAA,YAClE,GAAGlC,EAAQT,GAAKgB,EAAO,GAAGV,GAAeK,CAAiB;AAAA,YAC1D,MAAMX,EAAI,QAAQ,SAAS,IAAIyB,EAAeiC,EAAM,IAAI,WAAW1D,EAAI,QAAQ,CAAC,GAAGA,EAAI,KAAK,IAAI;AAAA,YAChG,QAAQ0D,EAAM,IAAI;AAAA,YAClB,OAAOf;AAAA,YACP,QAAQ3B,EAAO,EAAE,CAAC,IAAIA,EAAO,EAAEhB,EAAI,KAAK;AAAA,YACxC,SAAS0D,EAAM,IAAI,WAAW;AAAA,YAC9B,aAAa,MAAM7B,EAAa,aAAa7B,GAAKa,CAAQ;AAAA,YAC1D,cAAc,MAAMgB,EAAa,aAAA;AAAA,UAAa;AAAA,UATzC7B,EAAI;AAAA,QAAA;AAYjB,eAAO4D,IAAcE,EAAAA,aAAaD,GAAY/B,CAAsB,IAAI+B;AAAA,MAC5E,CAAC;AAAA,IAAA,CACJ;AAAA,IACAhC,EAAa,SAASmB,gBAAAA,EAAAA,IAAC,QAAA,EAAK,OAAOtB,EAAW,YAAY,QAAQA,EAAW,aAAa,MAAK,wBAAA,CAAuB;AAAA,IACvHsB,gBAAAA,EAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QAAE,KAAK,CAAAe,MAAQ;AACZ,UAAIA,KAAQ,CAACjC,KACTC,EAA0BgC,CAAI;AAAA,QAEtC;AAAA,MAAA;AAAA,IAAA;AAAA,IAEClC,EAAa,gBAAgBA,EAAa,iBAAiBhB,KACxDmC,gBAAAA,EAAAA;AAAAA,MAACgB;AAAA,MAAA;AAAA,QACG,SAASjE,GAAkB8B,EAAa,cAAc5B,CAAc;AAAA,QACpE,GAAGG,EAAQY,EAAO,EAAEa,EAAa,aAAa,CAAC,GAAGvB,GAAeuB,EAAa,aAAa,gBAAgBc,CAAe,IAAIA;AAAA,QAC9H,GAAGlC,EAAQoB,EAAa,cAAcb,EAAO,GAAGV,GAAeK,CAAiB,IAAIK,EAAO,EAAE,CAAC,IAAIA,EAAO,EAAEa,EAAa,aAAa,QAAQ,CAAC;AAAA,QAC9I,QAAQ;AAAA,QACR,QAAM;AAAA,QACN,OAAOA,EAAa;AAAA,QACpB,eAAAe;AAAA,QACA,WAAWhB;AAAA,QACX,SAASC,EAAa;AAAA,MAAA;AAAA,IAAA;AAAA,EAC1B,GAER;AAER;"}
1
+ {"version":3,"file":"Chart.js","sources":["../../../src/histogram/components/Chart.tsx"],"sourcesContent":["import { useState } from 'react';\nimport { createPortal } from 'react-dom';\nimport { ContinuousAxis } from '../../common/ContinuousAxis';\nimport { ContinuousGrid } from '../../common/ContinuousGrid';\nimport type { TooltipsData } from '../../common/Tooltip';\nimport { Tooltip } from '../../common/Tooltip';\nimport { BLACK } from '../../constants';\nimport type { ColumnName, FrameType } from '../../types';\nimport { numberFormat } from '../../utils/numberFormat';\nimport { DEFAULT_TICKS_SIZE, FACET_TITLE_LINE, TICK_OFFSET, TITLE_LINE } from '../constants';\nimport type { BinData, GroupedHistogramData } from '../getHistogramData';\nimport type { HistogramLayer, HistogramSettingsImpl } from '../HistogramSettingsImpl';\nimport type {\n AesGetter, CaptionsSizes,\n ChartDimensionsData,\n ChartScales,\n ChartSizes,\n Margins\n} from './types';\n\nfunction getAxisTitle(title: string | ColumnName): string {\n if (typeof title === 'string') {\n return title;\n }\n return title.value;\n}\nfunction getTooltipContent(bin: BinData, groupingLabels:Record<string, string>) {\n const lines = [\n `Amount: ${bin.count}`,\n `(from ${numberFormat(bin.x)}, to ${numberFormat(bin.x + bin.width)})`\n ];\n if (bin.groupingKey !== 'null') {\n lines.push(`${groupingLabels[bin.groupingKey] ?? bin.groupingKey}`);\n }\n return lines;\n}\n\nfunction getBinX(xPx:number, groupingStack: HistogramSettingsImpl['groupingStack'], keyIdx:number, width:number) {\n return groupingStack === 'vertical'\n ? xPx\n : xPx + keyIdx * width;\n}\nfunction getBinY(bin:BinData, scaleY:ChartScales['y'], groupingStack: HistogramSettingsImpl['groupingStack'], groupingDirection: HistogramSettingsImpl['groupingDirection']) {\n return groupingStack === 'vertical'\n ? scaleY(groupingDirection === 'straight' ? bin.y.straight : bin.y.reverse)\n : scaleY(bin.count);\n}\ninterface ChartProps {\n facetKey: string;\n width: number;\n height: number;\n dimensions: ChartDimensionsData;\n scales: ChartScales;\n xAxis: HistogramSettingsImpl['chartSettings']['xAxis'];\n yAxis: HistogramSettingsImpl['chartSettings']['yAxis'];\n frameType: FrameType;\n facetSettings: HistogramSettingsImpl['facetSettings'];\n margins: Margins;\n chartSizes: ChartSizes;\n captionsSizes: CaptionsSizes;\n facetTitle: string[];\n histogramData: GroupedHistogramData;\n layers: HistogramLayer[];\n aesColorGetter: AesGetter;\n groupingDirection: HistogramSettingsImpl['groupingDirection'];\n groupingStack: HistogramSettingsImpl['groupingStack'];\n groupingLabels: Record<string, string>;\n tooltipsContainer?: Element;\n tooltipsData: TooltipsData<BinData>;\n}\n\nexport function Chart({\n facetKey,\n width,\n height,\n dimensions,\n scales,\n xAxis,\n yAxis,\n frameType,\n histogramData,\n facetSettings,\n captionsSizes,\n facetTitle,\n layers,\n aesColorGetter,\n groupingDirection,\n groupingStack,\n groupingLabels,\n chartSizes,\n margins,\n tooltipsContainer,\n tooltipsData\n}: ChartProps) {\n const [activeElementContainer, setActiveElementContainer] = useState<SVGGElement>();\n\n const {padding} = dimensions;\n const tickSizeX = xAxis.showTicks ? DEFAULT_TICKS_SIZE : 0;\n const tickSizeY = yAxis.showTicks ? DEFAULT_TICKS_SIZE : 0;\n const needLeftAxis = dimensions.chartEdgeSides.includes('left') || !facetSettings?.sharedY;\n const needBottomAxis = dimensions.chartEdgeSides.includes('bottom') || !facetSettings?.sharedX;\n const needBottomAxisTitle = dimensions.chartEdgeSides.includes('bottom');\n const groupingKeys = histogramData.groupingKeys;\n\n const firstBin = histogramData.histogramByGroupingKey[groupingKeys[0]].bins[0];\n const binWidth = scales.x(firstBin.width) - scales.x(0);\n const partialBinWidth = groupingStack === 'vertical' ? binWidth : binWidth / groupingKeys.length;\n\n const sideDistances = {\n left: margins.left + dimensions.left + padding.left,\n right: chartSizes.totalWidth - (margins.left + dimensions.left + padding.left),\n top: margins.top + dimensions.top + padding.top,\n bottom: chartSizes.totalHeight - (margins.top + dimensions.top + padding.top),\n };\n\n const dimmedBackground = activeElementContainer && tooltipsData.fixed;\n const debug = false;\n return (\n <g transform={`translate(${dimensions.left + padding.left},${dimensions.top + padding.top})`}>\n {debug && (\n <g fill=\"none\" stroke=\"green\" strokeWidth=\"2px\">\n <rect width={width} height={padding.top} x={0} y={-padding.top} />\n <rect width={width} height={padding.bottom} x={0} y={height} />\n <rect width={padding.left} height={height} x={-padding.left} y={0} />\n <rect width={padding.right} height={height} x={width} y={0} />\n </g>\n )}\n {facetTitle.length && (\n <g>\n {frameType === 'full' && (\n <rect x=\"0\" y={-padding.top} height={padding.top} width={width} fill=\"#F7F8FA\" stroke={BLACK} />\n )}\n {facetTitle.map((titleLine, idx) => {\n const linesCount = facetTitle.length;\n const topOffset = (padding.top - FACET_TITLE_LINE * linesCount) / 2;\n return (\n <text\n key={idx}\n fontSize=\"14px\"\n fontWeight=\"500\"\n fill={BLACK}\n x={width / 2}\n dy={topOffset + FACET_TITLE_LINE / 2 - padding.top}\n y={idx * FACET_TITLE_LINE}\n textAnchor=\"middle\"\n dominantBaseline=\"central\"\n >\n {titleLine}\n </text>\n );\n })}\n </g>\n )}\n <g dominantBaseline=\"central\" textAnchor=\"middle\" fontWeight=\"500\" fontSize=\"14px\" fill={BLACK}>\n {needBottomAxisTitle && xAxis.title && (\n <text x={width / 2} y={height + padding.bottom - TITLE_LINE / 2}>\n {getAxisTitle(xAxis.title)}\n </text>\n )}\n {debug && needBottomAxisTitle && (\n <rect\n x=\"0\"\n y={height + padding.bottom - TITLE_LINE}\n width={width}\n height={TITLE_LINE}\n fill=\"none\"\n stroke=\"black\"\n />\n )}\n </g>\n <ContinuousGrid\n width={width}\n height={height}\n scaleX={scales.x}\n scaleY={scales.y}\n axisX={xAxis}\n axisY={yAxis}\n frameType={frameType}\n />\n {needBottomAxis && (\n <g transform={`translate(0,${height})`}>\n <ContinuousAxis scale={scales.x} orient=\"bottom\" tickSize={tickSizeX} hiddenLabels={xAxis.hiddenLabels} />\n {debug && (\n <rect\n x=\"0\"\n y={tickSizeX + TICK_OFFSET}\n width={width}\n height={TITLE_LINE}\n fill=\"none\"\n stroke=\"black\"\n />\n )}\n </g>\n )}\n {needLeftAxis && (\n <g>\n <ContinuousAxis scale={scales.y} orient=\"left\" tickSize={tickSizeY} hiddenLabels={yAxis.hiddenLabels} />\n {debug && (\n <rect\n x={-tickSizeY - TICK_OFFSET - captionsSizes.yAxisCaptionsWidth}\n y=\"0\"\n width={captionsSizes.yAxisCaptionsWidth}\n height={height}\n fill=\"none\"\n stroke=\"black\"\n />\n )}\n </g>\n )}\n {layers.map(layer => groupingKeys.map((groupingKey, keyIdx) =>\n histogramData.histogramByGroupingKey[groupingKey].bins.map((bin) => {\n const highlighted = dimmedBackground && tooltipsData.selectedData === bin;\n const binElement = (\n <rect\n key={`${groupingKey}-${bin.x}`}\n x={getBinX(scales.x(bin.x), groupingStack, keyIdx, partialBinWidth)}\n y={getBinY(bin, scales.y, groupingStack, groupingDirection)}\n fill={bin.indexes.length > 0 ? aesColorGetter(layer.aes.fillColor, bin.indexes[0], bin.count) : ''}\n stroke={layer.aes.lineColor}\n width={partialBinWidth}\n height={scales.y(0) - scales.y(bin.count)}\n opacity={layer.aes.opacity ?? 1}\n onMouseOver={() => tooltipsData.onMouseEnter(bin, facetKey)}\n onMouseLeave={() => tooltipsData.onMouseLeave()}\n />\n );\n return highlighted ? createPortal(binElement, activeElementContainer) : binElement;\n })\n ))}\n {tooltipsData.fixed && <rect width={chartSizes.chartWidth} height={chartSizes.chartHeight} fill=\"rgba(255,255,255,0.8)\"/>}\n <g ref={node => {\n if (node && !activeElementContainer) {\n setActiveElementContainer(node);\n }\n }}\n />\n {tooltipsData.selectedData && tooltipsData.currentFacet === facetKey && (\n <Tooltip\n content={getTooltipContent(tooltipsData.selectedData, groupingLabels)}\n x={getBinX(scales.x(tooltipsData.selectedData.x), groupingStack, tooltipsData.selectedData.groupingKeyIdx, partialBinWidth) + partialBinWidth}\n y={getBinY(tooltipsData.selectedData, scales.y, groupingStack, groupingDirection) + scales.y(0) - scales.y(tooltipsData.selectedData.count / 2)}\n offset={0}\n active\n fixed={tooltipsData.fixed}\n sideDistances={sideDistances}\n container={tooltipsContainer}\n onClose={tooltipsData.onClose}\n />\n )}\n </g>\n );\n}\n"],"names":["getAxisTitle","title","getTooltipContent","bin","groupingLabels","lines","numberFormat","getBinX","xPx","groupingStack","keyIdx","width","getBinY","scaleY","groupingDirection","Chart","facetKey","height","dimensions","scales","xAxis","yAxis","frameType","histogramData","facetSettings","captionsSizes","facetTitle","layers","aesColorGetter","chartSizes","margins","tooltipsContainer","tooltipsData","activeElementContainer","setActiveElementContainer","useState","padding","tickSizeX","DEFAULT_TICKS_SIZE","tickSizeY","needLeftAxis","needBottomAxis","needBottomAxisTitle","groupingKeys","firstBin","binWidth","partialBinWidth","sideDistances","dimmedBackground","debug","jsxs","jsx","BLACK","titleLine","idx","linesCount","topOffset","FACET_TITLE_LINE","TITLE_LINE","ContinuousGrid","ContinuousAxis","layer","groupingKey","highlighted","binElement","createPortal","node","Tooltip"],"mappings":"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"}
@@ -26,3 +26,4 @@ interface ChartsGroupProps {
26
26
  }
27
27
  export declare function ChartsGroup({ settingsId, chartSettings, chartSizes, chartsDimensions, columnsCount, facetKeys, facetSettings, scales, margins, mainTitle, facetTitles, captionsSizes, histogramDataByFacets, layers, aesColorGetter, groupingDirection, groupingStack, groupingLabels, legend, onTooltipHintSwitch, }: ChartsGroupProps): import("react/jsx-runtime").JSX.Element;
28
28
  export {};
29
+ //# sourceMappingURL=ChartsGroup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChartsGroup.d.ts","sourceRoot":"","sources":["../../../src/histogram/components/ChartsGroup.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,oBAAoB,CAAC;AAEnD,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,SAAS,CAAC;AACvC,OAAO,KAAK,EAAU,oBAAoB,EAAC,MAAM,qBAAqB,CAAC;AACvE,OAAO,KAAK,EAAC,cAAc,EAAE,qBAAqB,EAAC,MAAM,0BAA0B,CAAC;AAGpF,OAAO,KAAK,EACR,aAAa,EACb,mBAAmB,EACnB,UAAU,EACV,YAAY,EACZ,OAAO,EACV,MAAM,SAAS,CAAC;AAGjB,UAAU,gBAAgB;IACtB,aAAa,EAAE,qBAAqB,CAAC,eAAe,CAAC,CAAC;IACtD,aAAa,EAAE,qBAAqB,CAAC,eAAe,CAAC,CAAC;IACtD,UAAU,EAAE,UAAU,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IACtD,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACtC,aAAa,EAAE,aAAa,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IAC5D,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,cAAc,EAAE,SAAS,CAAC;IAC1B,iBAAiB,EAAE,qBAAqB,CAAC,mBAAmB,CAAC,CAAC;IAC9D,aAAa,EAAE,qBAAqB,CAAC,eAAe,CAAC,CAAC;IACtD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,MAAM,EAAE,UAAU,CAAC;IACnB,mBAAmB,EAAE,CAAC,CAAC,EAAC,OAAO,KAAK,IAAI,CAAC;CAC5C;AAED,wBAAgB,WAAW,CAAC,EACxB,UAAU,EACV,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACT,aAAa,EACb,MAAM,EACN,OAAO,EACP,SAAS,EACT,WAAW,EACX,aAAa,EACb,qBAAqB,EACrB,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,MAAM,EACN,mBAAmB,GACtB,EAAE,gBAAgB,2CAqElB"}
@@ -52,3 +52,4 @@ export type HistogramLegendInfo = Record<string, {
52
52
  aesMap: AesRecord;
53
53
  labels: Record<string, string>;
54
54
  }>;
55
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/histogram/components/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC3E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAE1F,MAAM,WAAW,OAAO;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IACxB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChG,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnG;AAED,MAAM,WAAW,YAAY;IAEzB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE;QACH,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,KAAK,EAAE;QACH,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,OAAO,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,cAAc,EAAE,CAAC,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;CAC3D;AAED,MAAM,WAAW,aAAa;IAC1B,kBAAkB,EAAC,MAAM,CAAC;IAC1B,kBAAkB,EAAC,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,GAAG,sBAAsB,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;AAElI,MAAM,MAAM,mBAAmB,GAAG,MAAM,CACpC,MAAM,EACN;IACI,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CACJ,CAAC"}
@@ -13,3 +13,4 @@ export declare const PADDINGS: {
13
13
  LEFT: number;
14
14
  RIGHT: number;
15
15
  };
16
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/histogram/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,iBAAiB,IAAI,CAAC;AACnC,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,eAAO,MAAM,WAAW,KAAK,CAAC;AAE9B,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,eAAO,MAAM,kBAAkB,IAAI,CAAC;AACpC,eAAO,MAAM,WAAW,IAAI,CAAC;AAE7B,eAAO,MAAM,aAAa,KAAK,CAAC;AAGhC,eAAO,MAAM,QAAQ;;;;;CAKpB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { DataFrame, RowIndex } from '../DataFrame';
1
+ import { DataFrame, GroupKey, RowIndex } from '../DataFrame';
2
2
  import { ColumnName } from '../types';
3
3
  export type BinData = {
4
4
  indexes: RowIndex[];
@@ -26,4 +26,5 @@ export type GroupedHistogramData = {
26
26
  };
27
27
  export declare function createHistogramDataLinear(dataFrame: DataFrame, indexes: RowIndex[], column: ColumnName, binsCount: number, domain: [number, number], key: string, keyIdx: number): HistogramData;
28
28
  export declare function createHistogramDataLog(dataFrame: DataFrame, indexes: RowIndex[], column: ColumnName, binsCount: number, domain: [number, number], key: string, keyIdx: number): HistogramData;
29
- export declare function createHistogramDataByFacets(data: DataFrame, facetKeysCombinations: string[][], groupingKeys: string[], valueColumn: ColumnName, binsCount: number, scale: 'linear' | 'log'): Record<string, GroupedHistogramData>;
29
+ export declare function createHistogramDataByFacets(data: DataFrame, facetKeysCombinations: GroupKey[][], groupingKeys: GroupKey[], valueColumn: ColumnName, binsCount: number, scale: 'linear' | 'log'): Record<string, GroupedHistogramData>;
30
+ //# sourceMappingURL=getHistogramData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getHistogramData.d.ts","sourceRoot":"","sources":["../../src/histogram/getHistogramData.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG3C,MAAM,MAAM,OAAO,GAAG;IAClB,OAAO,EAAE,QAAQ,EAAE,CAAC;IACpB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE;QACC,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAA;KAClB,CAAC;IACF,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAA;CAChB,CAAA;AACD,MAAM,MAAM,aAAa,GAAG;IACxB,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAC/B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,kBAAkB,EAAE,MAAM,CAAC;CAC9B,CAAA;AAiCD,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAC,MAAM,EAAE,MAAM,EAAC,MAAM,GAAE,aAAa,CAU3L;AACD,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAC,MAAM,EAAE,MAAM,EAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAC,MAAM,EAAE,MAAM,EAAC,MAAM,GAAE,aAAa,CAaxL;AAED,wBAAgB,2BAA2B,CACvC,IAAI,EAAC,SAAS,EACd,qBAAqB,EAAE,QAAQ,EAAE,EAAE,EACnC,YAAY,EAAE,QAAQ,EAAE,EACxB,WAAW,EAAC,UAAU,EACtB,SAAS,EAAC,MAAM,EAChB,KAAK,EAAE,QAAQ,GAAG,KAAK,wCA6D1B"}