react-cheminfo 0.9.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1131) hide show
  1. package/README.md +251 -20
  2. package/lib/chart/core/chartAxisScale.d.ts +88 -0
  3. package/lib/chart/core/chartAxisScale.d.ts.map +1 -0
  4. package/lib/chart/core/chartAxisScale.js +205 -0
  5. package/lib/chart/core/chartAxisScale.js.map +1 -0
  6. package/lib/chart/core/chartBand.d.ts +47 -0
  7. package/lib/chart/core/chartBand.d.ts.map +1 -0
  8. package/lib/chart/core/chartBand.js +55 -0
  9. package/lib/chart/core/chartBand.js.map +1 -0
  10. package/lib/chart/core/chartBins.d.ts +32 -0
  11. package/lib/chart/core/chartBins.d.ts.map +1 -0
  12. package/lib/chart/core/chartBins.js +64 -0
  13. package/lib/chart/core/chartBins.js.map +1 -0
  14. package/lib/chart/core/chartExtent.d.ts +105 -0
  15. package/lib/chart/core/chartExtent.d.ts.map +1 -0
  16. package/lib/chart/core/chartExtent.js +134 -0
  17. package/lib/chart/core/chartExtent.js.map +1 -0
  18. package/lib/chart/core/chartLabels.d.ts +49 -0
  19. package/lib/chart/core/chartLabels.d.ts.map +1 -0
  20. package/lib/chart/core/chartLabels.js +44 -0
  21. package/lib/chart/core/chartLabels.js.map +1 -0
  22. package/lib/chart/core/chartPalette.d.ts +33 -0
  23. package/lib/chart/core/chartPalette.d.ts.map +1 -0
  24. package/lib/chart/core/chartPalette.js +51 -0
  25. package/lib/chart/core/chartPalette.js.map +1 -0
  26. package/lib/chart/core/chartScale.d.ts +49 -0
  27. package/lib/chart/core/chartScale.d.ts.map +1 -0
  28. package/lib/chart/core/chartScale.js +53 -0
  29. package/lib/chart/core/chartScale.js.map +1 -0
  30. package/lib/chart/core/chartViewport.d.ts +88 -0
  31. package/lib/chart/core/chartViewport.d.ts.map +1 -0
  32. package/lib/chart/core/chartViewport.js +164 -0
  33. package/lib/chart/core/chartViewport.js.map +1 -0
  34. package/lib/chart/core/index.d.ts +29 -0
  35. package/lib/chart/core/index.d.ts.map +1 -0
  36. package/lib/chart/core/index.js +20 -0
  37. package/lib/chart/core/index.js.map +1 -0
  38. package/lib/chart/core/matrix.d.ts +56 -0
  39. package/lib/chart/core/matrix.d.ts.map +1 -0
  40. package/lib/chart/core/matrix.js +75 -0
  41. package/lib/chart/core/matrix.js.map +1 -0
  42. package/lib/chart/ui/ChartAxis.d.ts +50 -0
  43. package/lib/chart/ui/ChartAxis.d.ts.map +1 -0
  44. package/lib/chart/ui/ChartAxis.js +89 -0
  45. package/lib/chart/ui/ChartAxis.js.map +1 -0
  46. package/lib/chart/ui/ChartFrame.d.ts +136 -0
  47. package/lib/chart/ui/ChartFrame.d.ts.map +1 -0
  48. package/lib/chart/ui/ChartFrame.js +61 -0
  49. package/lib/chart/ui/ChartFrame.js.map +1 -0
  50. package/lib/chart/ui/ChartSeriesMarks.d.ts +44 -0
  51. package/lib/chart/ui/ChartSeriesMarks.d.ts.map +1 -0
  52. package/lib/chart/ui/ChartSeriesMarks.js +48 -0
  53. package/lib/chart/ui/ChartSeriesMarks.js.map +1 -0
  54. package/lib/chart/ui/ChartTrackingLayer.d.ts +54 -0
  55. package/lib/chart/ui/ChartTrackingLayer.d.ts.map +1 -0
  56. package/lib/chart/ui/ChartTrackingLayer.js +98 -0
  57. package/lib/chart/ui/ChartTrackingLayer.js.map +1 -0
  58. package/lib/chart/ui/TrackedLineChart.d.ts +136 -0
  59. package/lib/chart/ui/TrackedLineChart.d.ts.map +1 -0
  60. package/lib/chart/ui/TrackedLineChart.js +90 -0
  61. package/lib/chart/ui/TrackedLineChart.js.map +1 -0
  62. package/lib/chart/ui/TrackedStickChart.d.ts +88 -0
  63. package/lib/chart/ui/TrackedStickChart.d.ts.map +1 -0
  64. package/lib/chart/ui/TrackedStickChart.js +58 -0
  65. package/lib/chart/ui/TrackedStickChart.js.map +1 -0
  66. package/lib/chart/ui/chartStyles.d.ts +141 -0
  67. package/lib/chart/ui/chartStyles.d.ts.map +1 -0
  68. package/lib/chart/ui/chartStyles.js +154 -0
  69. package/lib/chart/ui/chartStyles.js.map +1 -0
  70. package/lib/chart/ui/index.d.ts +20 -0
  71. package/lib/chart/ui/index.d.ts.map +1 -0
  72. package/lib/chart/ui/index.js +13 -0
  73. package/lib/chart/ui/index.js.map +1 -0
  74. package/lib/chart/ui/stickChartModel.d.ts +99 -0
  75. package/lib/chart/ui/stickChartModel.d.ts.map +1 -0
  76. package/lib/chart/ui/stickChartModel.js +140 -0
  77. package/lib/chart/ui/stickChartModel.js.map +1 -0
  78. package/lib/chart/ui/useWheelZoom.d.ts +69 -0
  79. package/lib/chart/ui/useWheelZoom.d.ts.map +1 -0
  80. package/lib/chart/ui/useWheelZoom.js +122 -0
  81. package/lib/chart/ui/useWheelZoom.js.map +1 -0
  82. package/lib/color/core/gradient.d.ts +15 -0
  83. package/lib/color/core/gradient.d.ts.map +1 -0
  84. package/lib/color/core/gradient.js +28 -0
  85. package/lib/color/core/gradient.js.map +1 -0
  86. package/lib/color/core/hsv.d.ts +38 -0
  87. package/lib/color/core/hsv.d.ts.map +1 -0
  88. package/lib/color/core/hsv.js +92 -0
  89. package/lib/color/core/hsv.js.map +1 -0
  90. package/lib/color/core/index.d.ts +12 -1
  91. package/lib/color/core/index.d.ts.map +1 -1
  92. package/lib/color/core/index.js +6 -0
  93. package/lib/color/core/index.js.map +1 -1
  94. package/lib/color/core/interpolate.d.ts +67 -0
  95. package/lib/color/core/interpolate.d.ts.map +1 -0
  96. package/lib/color/core/interpolate.js +121 -0
  97. package/lib/color/core/interpolate.js.map +1 -0
  98. package/lib/color/core/scale.d.ts +11 -15
  99. package/lib/color/core/scale.d.ts.map +1 -1
  100. package/lib/color/core/scale.js +14 -41
  101. package/lib/color/core/scale.js.map +1 -1
  102. package/lib/color/core/scaleData.d.ts +19 -0
  103. package/lib/color/core/scaleData.d.ts.map +1 -0
  104. package/lib/color/core/scaleData.js +120 -0
  105. package/lib/color/core/scaleData.js.map +1 -0
  106. package/lib/color/core/scaleText.d.ts +43 -0
  107. package/lib/color/core/scaleText.d.ts.map +1 -0
  108. package/lib/color/core/scaleText.js +109 -0
  109. package/lib/color/core/scaleText.js.map +1 -0
  110. package/lib/color/core/scales.d.ts +42 -0
  111. package/lib/color/core/scales.d.ts.map +1 -0
  112. package/lib/color/core/scales.js +110 -0
  113. package/lib/color/core/scales.js.map +1 -0
  114. package/lib/color/ui/ColorScaleBar.d.ts +39 -0
  115. package/lib/color/ui/ColorScaleBar.d.ts.map +1 -0
  116. package/lib/color/ui/ColorScaleBar.js +27 -0
  117. package/lib/color/ui/ColorScaleBar.js.map +1 -0
  118. package/lib/color/ui/ColorScaleEditor.d.ts +21 -0
  119. package/lib/color/ui/ColorScaleEditor.d.ts.map +1 -0
  120. package/lib/color/ui/ColorScaleEditor.js +141 -0
  121. package/lib/color/ui/ColorScaleEditor.js.map +1 -0
  122. package/lib/color/ui/ColorScaleSelect.d.ts +38 -0
  123. package/lib/color/ui/ColorScaleSelect.d.ts.map +1 -0
  124. package/lib/color/ui/ColorScaleSelect.js +109 -0
  125. package/lib/color/ui/ColorScaleSelect.js.map +1 -0
  126. package/lib/color/ui/index.d.ts +6 -0
  127. package/lib/color/ui/index.d.ts.map +1 -1
  128. package/lib/color/ui/index.js +3 -0
  129. package/lib/color/ui/index.js.map +1 -1
  130. package/lib/core.d.ts +5 -0
  131. package/lib/core.d.ts.map +1 -1
  132. package/lib/core.js +5 -0
  133. package/lib/core.js.map +1 -1
  134. package/lib/credits/core/credits.d.ts +17 -0
  135. package/lib/credits/core/credits.d.ts.map +1 -1
  136. package/lib/credits/core/credits.js +20 -0
  137. package/lib/credits/core/credits.js.map +1 -1
  138. package/lib/download/core/cssTokens.d.ts +33 -0
  139. package/lib/download/core/cssTokens.d.ts.map +1 -0
  140. package/lib/download/core/cssTokens.js +82 -0
  141. package/lib/download/core/cssTokens.js.map +1 -0
  142. package/lib/download/core/downloadFigure.d.ts +39 -0
  143. package/lib/download/core/downloadFigure.d.ts.map +1 -0
  144. package/lib/download/core/downloadFigure.js +35 -0
  145. package/lib/download/core/downloadFigure.js.map +1 -0
  146. package/lib/download/core/figurePng.d.ts +21 -0
  147. package/lib/download/core/figurePng.d.ts.map +1 -0
  148. package/lib/download/core/figurePng.js +76 -0
  149. package/lib/download/core/figurePng.js.map +1 -0
  150. package/lib/download/core/figureScale.d.ts +61 -0
  151. package/lib/download/core/figureScale.d.ts.map +1 -0
  152. package/lib/download/core/figureScale.js +67 -0
  153. package/lib/download/core/figureScale.js.map +1 -0
  154. package/lib/download/core/figureSvg.d.ts +37 -0
  155. package/lib/download/core/figureSvg.d.ts.map +1 -0
  156. package/lib/download/core/figureSvg.js +94 -0
  157. package/lib/download/core/figureSvg.js.map +1 -0
  158. package/lib/download/core/figureSvgDocument.d.ts +55 -0
  159. package/lib/download/core/figureSvgDocument.d.ts.map +1 -0
  160. package/lib/download/core/figureSvgDocument.js +79 -0
  161. package/lib/download/core/figureSvgDocument.js.map +1 -0
  162. package/lib/download/core/figureTarget.d.ts +56 -0
  163. package/lib/download/core/figureTarget.d.ts.map +1 -0
  164. package/lib/download/core/figureTarget.js +119 -0
  165. package/lib/download/core/figureTarget.js.map +1 -0
  166. package/lib/download/core/index.d.ts +12 -0
  167. package/lib/download/core/index.d.ts.map +1 -1
  168. package/lib/download/core/index.js +7 -0
  169. package/lib/download/core/index.js.map +1 -1
  170. package/lib/download/ui/FigureDownload.d.ts +81 -0
  171. package/lib/download/ui/FigureDownload.d.ts.map +1 -0
  172. package/lib/download/ui/FigureDownload.js +65 -0
  173. package/lib/download/ui/FigureDownload.js.map +1 -0
  174. package/lib/download/ui/FigureDownloadPanel.d.ts +45 -0
  175. package/lib/download/ui/FigureDownloadPanel.d.ts.map +1 -0
  176. package/lib/download/ui/FigureDownloadPanel.js +86 -0
  177. package/lib/download/ui/FigureDownloadPanel.js.map +1 -0
  178. package/lib/download/ui/index.d.ts +13 -0
  179. package/lib/download/ui/index.d.ts.map +1 -0
  180. package/lib/download/ui/index.js +11 -0
  181. package/lib/download/ui/index.js.map +1 -0
  182. package/lib/ecosystem/core/sites.d.ts +1 -1
  183. package/lib/ecosystem/core/sites.d.ts.map +1 -1
  184. package/lib/ecosystem/core/sites.js +10 -0
  185. package/lib/ecosystem/core/sites.js.map +1 -1
  186. package/lib/ecosystem/ui/glyphs.d.ts.map +1 -1
  187. package/lib/ecosystem/ui/glyphs.js +4 -0
  188. package/lib/ecosystem/ui/glyphs.js.map +1 -1
  189. package/lib/overlay/core/emptiestCorner.d.ts +47 -0
  190. package/lib/overlay/core/emptiestCorner.d.ts.map +1 -0
  191. package/lib/overlay/core/emptiestCorner.js +84 -0
  192. package/lib/overlay/core/emptiestCorner.js.map +1 -0
  193. package/lib/overlay/core/index.d.ts +23 -0
  194. package/lib/overlay/core/index.d.ts.map +1 -0
  195. package/lib/overlay/core/index.js +16 -0
  196. package/lib/overlay/core/index.js.map +1 -0
  197. package/lib/overlay/core/overlayCollapse.d.ts +14 -0
  198. package/lib/overlay/core/overlayCollapse.d.ts.map +1 -0
  199. package/lib/overlay/core/overlayCollapse.js +20 -0
  200. package/lib/overlay/core/overlayCollapse.js.map +1 -0
  201. package/lib/overlay/core/overlayMarks.d.ts +31 -0
  202. package/lib/overlay/core/overlayMarks.d.ts.map +1 -0
  203. package/lib/overlay/core/overlayMarks.js +38 -0
  204. package/lib/overlay/core/overlayMarks.js.map +1 -0
  205. package/lib/overlay/core/overlayMetrics.d.ts +41 -0
  206. package/lib/overlay/core/overlayMetrics.d.ts.map +1 -0
  207. package/lib/overlay/core/overlayMetrics.js +73 -0
  208. package/lib/overlay/core/overlayMetrics.js.map +1 -0
  209. package/lib/overlay/core/overlayPlacement.d.ts +60 -0
  210. package/lib/overlay/core/overlayPlacement.d.ts.map +1 -0
  211. package/lib/overlay/core/overlayPlacement.js +24 -0
  212. package/lib/overlay/core/overlayPlacement.js.map +1 -0
  213. package/lib/overlay/core/overlayTierRoom.d.ts +89 -0
  214. package/lib/overlay/core/overlayTierRoom.d.ts.map +1 -0
  215. package/lib/overlay/core/overlayTierRoom.js +135 -0
  216. package/lib/overlay/core/overlayTierRoom.js.map +1 -0
  217. package/lib/overlay/core/overlayTiers.d.ts +71 -0
  218. package/lib/overlay/core/overlayTiers.d.ts.map +1 -0
  219. package/lib/overlay/core/overlayTiers.js +89 -0
  220. package/lib/overlay/core/overlayTiers.js.map +1 -0
  221. package/lib/overlay/core/placeOverlayCard.d.ts +47 -0
  222. package/lib/overlay/core/placeOverlayCard.d.ts.map +1 -0
  223. package/lib/overlay/core/placeOverlayCard.js +42 -0
  224. package/lib/overlay/core/placeOverlayCard.js.map +1 -0
  225. package/lib/overlay/ui/OverlayAction.d.ts +32 -0
  226. package/lib/overlay/ui/OverlayAction.d.ts.map +1 -0
  227. package/lib/overlay/ui/OverlayAction.js +19 -0
  228. package/lib/overlay/ui/OverlayAction.js.map +1 -0
  229. package/lib/overlay/ui/OverlayBar.d.ts +122 -0
  230. package/lib/overlay/ui/OverlayBar.d.ts.map +1 -0
  231. package/lib/overlay/ui/OverlayBar.js +42 -0
  232. package/lib/overlay/ui/OverlayBar.js.map +1 -0
  233. package/lib/overlay/ui/OverlayBarButton.d.ts +38 -0
  234. package/lib/overlay/ui/OverlayBarButton.d.ts.map +1 -0
  235. package/lib/overlay/ui/OverlayBarButton.js +40 -0
  236. package/lib/overlay/ui/OverlayBarButton.js.map +1 -0
  237. package/lib/overlay/ui/OverlayBarCard.d.ts +25 -0
  238. package/lib/overlay/ui/OverlayBarCard.d.ts.map +1 -0
  239. package/lib/overlay/ui/OverlayBarCard.js +28 -0
  240. package/lib/overlay/ui/OverlayBarCard.js.map +1 -0
  241. package/lib/overlay/ui/OverlayBarStrip.d.ts +18 -0
  242. package/lib/overlay/ui/OverlayBarStrip.d.ts.map +1 -0
  243. package/lib/overlay/ui/OverlayBarStrip.js +26 -0
  244. package/lib/overlay/ui/OverlayBarStrip.js.map +1 -0
  245. package/lib/overlay/ui/OverlayCaption.d.ts +52 -0
  246. package/lib/overlay/ui/OverlayCaption.d.ts.map +1 -0
  247. package/lib/overlay/ui/OverlayCaption.js +62 -0
  248. package/lib/overlay/ui/OverlayCaption.js.map +1 -0
  249. package/lib/overlay/ui/OverlayChip.d.ts +60 -0
  250. package/lib/overlay/ui/OverlayChip.d.ts.map +1 -0
  251. package/lib/overlay/ui/OverlayChip.js +73 -0
  252. package/lib/overlay/ui/OverlayChip.js.map +1 -0
  253. package/lib/overlay/ui/OverlayDivider.d.ts +11 -0
  254. package/lib/overlay/ui/OverlayDivider.d.ts.map +1 -0
  255. package/lib/overlay/ui/OverlayDivider.js +16 -0
  256. package/lib/overlay/ui/OverlayDivider.js.map +1 -0
  257. package/lib/overlay/ui/OverlayGroup.d.ts +53 -0
  258. package/lib/overlay/ui/OverlayGroup.d.ts.map +1 -0
  259. package/lib/overlay/ui/OverlayGroup.js +63 -0
  260. package/lib/overlay/ui/OverlayGroup.js.map +1 -0
  261. package/lib/overlay/ui/OverlayIconButton.d.ts +75 -0
  262. package/lib/overlay/ui/OverlayIconButton.d.ts.map +1 -0
  263. package/lib/overlay/ui/OverlayIconButton.js +43 -0
  264. package/lib/overlay/ui/OverlayIconButton.js.map +1 -0
  265. package/lib/overlay/ui/OverlayInfo.d.ts +43 -0
  266. package/lib/overlay/ui/OverlayInfo.d.ts.map +1 -0
  267. package/lib/overlay/ui/OverlayInfo.js +47 -0
  268. package/lib/overlay/ui/OverlayInfo.js.map +1 -0
  269. package/lib/overlay/ui/OverlayLayer.d.ts +54 -0
  270. package/lib/overlay/ui/OverlayLayer.d.ts.map +1 -0
  271. package/lib/overlay/ui/OverlayLayer.js +50 -0
  272. package/lib/overlay/ui/OverlayLayer.js.map +1 -0
  273. package/lib/overlay/ui/OverlayLegend.d.ts +75 -0
  274. package/lib/overlay/ui/OverlayLegend.d.ts.map +1 -0
  275. package/lib/overlay/ui/OverlayLegend.js +81 -0
  276. package/lib/overlay/ui/OverlayLegend.js.map +1 -0
  277. package/lib/overlay/ui/OverlayLegendMark.d.ts +36 -0
  278. package/lib/overlay/ui/OverlayLegendMark.d.ts.map +1 -0
  279. package/lib/overlay/ui/OverlayLegendMark.js +43 -0
  280. package/lib/overlay/ui/OverlayLegendMark.js.map +1 -0
  281. package/lib/overlay/ui/OverlayNumber.d.ts +43 -0
  282. package/lib/overlay/ui/OverlayNumber.d.ts.map +1 -0
  283. package/lib/overlay/ui/OverlayNumber.js +74 -0
  284. package/lib/overlay/ui/OverlayNumber.js.map +1 -0
  285. package/lib/overlay/ui/OverlayPanel.d.ts +81 -0
  286. package/lib/overlay/ui/OverlayPanel.d.ts.map +1 -0
  287. package/lib/overlay/ui/OverlayPanel.js +42 -0
  288. package/lib/overlay/ui/OverlayPanel.js.map +1 -0
  289. package/lib/overlay/ui/OverlayPills.d.ts +73 -0
  290. package/lib/overlay/ui/OverlayPills.d.ts.map +1 -0
  291. package/lib/overlay/ui/OverlayPills.js +55 -0
  292. package/lib/overlay/ui/OverlayPills.js.map +1 -0
  293. package/lib/overlay/ui/OverlayReadout.d.ts +63 -0
  294. package/lib/overlay/ui/OverlayReadout.d.ts.map +1 -0
  295. package/lib/overlay/ui/OverlayReadout.js +129 -0
  296. package/lib/overlay/ui/OverlayReadout.js.map +1 -0
  297. package/lib/overlay/ui/OverlayRow.d.ts +111 -0
  298. package/lib/overlay/ui/OverlayRow.d.ts.map +1 -0
  299. package/lib/overlay/ui/OverlayRow.js +50 -0
  300. package/lib/overlay/ui/OverlayRow.js.map +1 -0
  301. package/lib/overlay/ui/OverlaySegmented.d.ts +28 -0
  302. package/lib/overlay/ui/OverlaySegmented.d.ts.map +1 -0
  303. package/lib/overlay/ui/OverlaySegmented.js +23 -0
  304. package/lib/overlay/ui/OverlaySegmented.js.map +1 -0
  305. package/lib/overlay/ui/OverlaySelect.d.ts +35 -0
  306. package/lib/overlay/ui/OverlaySelect.d.ts.map +1 -0
  307. package/lib/overlay/ui/OverlaySelect.js +30 -0
  308. package/lib/overlay/ui/OverlaySelect.js.map +1 -0
  309. package/lib/overlay/ui/OverlaySwatchIcon.d.ts +26 -0
  310. package/lib/overlay/ui/OverlaySwatchIcon.d.ts.map +1 -0
  311. package/lib/overlay/ui/OverlaySwatchIcon.js +94 -0
  312. package/lib/overlay/ui/OverlaySwatchIcon.js.map +1 -0
  313. package/lib/overlay/ui/OverlayToggle.d.ts +56 -0
  314. package/lib/overlay/ui/OverlayToggle.d.ts.map +1 -0
  315. package/lib/overlay/ui/OverlayToggle.js +42 -0
  316. package/lib/overlay/ui/OverlayToggle.js.map +1 -0
  317. package/lib/overlay/ui/OverlayValueButton.d.ts +80 -0
  318. package/lib/overlay/ui/OverlayValueButton.d.ts.map +1 -0
  319. package/lib/overlay/ui/OverlayValueButton.js +46 -0
  320. package/lib/overlay/ui/OverlayValueButton.js.map +1 -0
  321. package/lib/overlay/ui/OverlayValueMenu.d.ts +68 -0
  322. package/lib/overlay/ui/OverlayValueMenu.d.ts.map +1 -0
  323. package/lib/overlay/ui/OverlayValueMenu.js +40 -0
  324. package/lib/overlay/ui/OverlayValueMenu.js.map +1 -0
  325. package/lib/overlay/ui/index.d.ts +55 -0
  326. package/lib/overlay/ui/index.d.ts.map +1 -0
  327. package/lib/overlay/ui/index.js +33 -0
  328. package/lib/overlay/ui/index.js.map +1 -0
  329. package/lib/overlay/ui/overlayBarShape.d.ts +85 -0
  330. package/lib/overlay/ui/overlayBarShape.d.ts.map +1 -0
  331. package/lib/overlay/ui/overlayBarShape.js +48 -0
  332. package/lib/overlay/ui/overlayBarShape.js.map +1 -0
  333. package/lib/overlay/ui/overlayControlStyles.d.ts +82 -0
  334. package/lib/overlay/ui/overlayControlStyles.d.ts.map +1 -0
  335. package/lib/overlay/ui/overlayControlStyles.js +142 -0
  336. package/lib/overlay/ui/overlayControlStyles.js.map +1 -0
  337. package/lib/overlay/ui/overlayFigureStyles.d.ts +52 -0
  338. package/lib/overlay/ui/overlayFigureStyles.d.ts.map +1 -0
  339. package/lib/overlay/ui/overlayFigureStyles.js +98 -0
  340. package/lib/overlay/ui/overlayFigureStyles.js.map +1 -0
  341. package/lib/overlay/ui/overlayPanelContext.d.ts +34 -0
  342. package/lib/overlay/ui/overlayPanelContext.d.ts.map +1 -0
  343. package/lib/overlay/ui/overlayPanelContext.js +29 -0
  344. package/lib/overlay/ui/overlayPanelContext.js.map +1 -0
  345. package/lib/overlay/ui/overlayPanelStyles.d.ts +112 -0
  346. package/lib/overlay/ui/overlayPanelStyles.d.ts.map +1 -0
  347. package/lib/overlay/ui/overlayPanelStyles.js +193 -0
  348. package/lib/overlay/ui/overlayPanelStyles.js.map +1 -0
  349. package/lib/overlay/ui/overlayPillKeys.d.ts +19 -0
  350. package/lib/overlay/ui/overlayPillKeys.d.ts.map +1 -0
  351. package/lib/overlay/ui/overlayPillKeys.js +33 -0
  352. package/lib/overlay/ui/overlayPillKeys.js.map +1 -0
  353. package/lib/overlay/ui/overlayPillStyles.d.ts +78 -0
  354. package/lib/overlay/ui/overlayPillStyles.d.ts.map +1 -0
  355. package/lib/overlay/ui/overlayPillStyles.js +140 -0
  356. package/lib/overlay/ui/overlayPillStyles.js.map +1 -0
  357. package/lib/overlay/ui/overlayRowStyles.d.ts +113 -0
  358. package/lib/overlay/ui/overlayRowStyles.d.ts.map +1 -0
  359. package/lib/overlay/ui/overlayRowStyles.js +135 -0
  360. package/lib/overlay/ui/overlayRowStyles.js.map +1 -0
  361. package/lib/overlay/ui/overlayStepperStyles.d.ts +51 -0
  362. package/lib/overlay/ui/overlayStepperStyles.d.ts.map +1 -0
  363. package/lib/overlay/ui/overlayStepperStyles.js +96 -0
  364. package/lib/overlay/ui/overlayStepperStyles.js.map +1 -0
  365. package/lib/overlay/ui/overlayStyles.d.ts +123 -0
  366. package/lib/overlay/ui/overlayStyles.d.ts.map +1 -0
  367. package/lib/overlay/ui/overlayStyles.js +203 -0
  368. package/lib/overlay/ui/overlayStyles.js.map +1 -0
  369. package/lib/overlay/ui/overlaySurface.d.ts +54 -0
  370. package/lib/overlay/ui/overlaySurface.d.ts.map +1 -0
  371. package/lib/overlay/ui/overlaySurface.js +85 -0
  372. package/lib/overlay/ui/overlaySurface.js.map +1 -0
  373. package/lib/overlay/ui/overlaySwitchStyles.d.ts +70 -0
  374. package/lib/overlay/ui/overlaySwitchStyles.d.ts.map +1 -0
  375. package/lib/overlay/ui/overlaySwitchStyles.js +102 -0
  376. package/lib/overlay/ui/overlaySwitchStyles.js.map +1 -0
  377. package/lib/overlay/ui/overlayValueStyles.d.ts +101 -0
  378. package/lib/overlay/ui/overlayValueStyles.d.ts.map +1 -0
  379. package/lib/overlay/ui/overlayValueStyles.js +166 -0
  380. package/lib/overlay/ui/overlayValueStyles.js.map +1 -0
  381. package/lib/projection/core/embeddingResult.d.ts +60 -0
  382. package/lib/projection/core/embeddingResult.d.ts.map +1 -0
  383. package/lib/projection/core/embeddingResult.js +52 -0
  384. package/lib/projection/core/embeddingResult.js.map +1 -0
  385. package/lib/projection/core/explainedShares.d.ts +51 -0
  386. package/lib/projection/core/explainedShares.d.ts.map +1 -0
  387. package/lib/projection/core/explainedShares.js +55 -0
  388. package/lib/projection/core/explainedShares.js.map +1 -0
  389. package/lib/projection/core/index.d.ts +38 -0
  390. package/lib/projection/core/index.d.ts.map +1 -0
  391. package/lib/projection/core/index.js +25 -0
  392. package/lib/projection/core/index.js.map +1 -0
  393. package/lib/projection/core/loadingProfiles.d.ts +87 -0
  394. package/lib/projection/core/loadingProfiles.d.ts.map +1 -0
  395. package/lib/projection/core/loadingProfiles.js +125 -0
  396. package/lib/projection/core/loadingProfiles.js.map +1 -0
  397. package/lib/projection/core/pcaLike.d.ts +32 -0
  398. package/lib/projection/core/pcaLike.d.ts.map +1 -0
  399. package/lib/projection/core/pcaLike.js +2 -0
  400. package/lib/projection/core/pcaLike.js.map +1 -0
  401. package/lib/projection/core/pcaResult.d.ts +86 -0
  402. package/lib/projection/core/pcaResult.d.ts.map +1 -0
  403. package/lib/projection/core/pcaResult.js +122 -0
  404. package/lib/projection/core/pcaResult.js.map +1 -0
  405. package/lib/projection/core/projectionCopy.d.ts +130 -0
  406. package/lib/projection/core/projectionCopy.d.ts.map +1 -0
  407. package/lib/projection/core/projectionCopy.js +111 -0
  408. package/lib/projection/core/projectionCopy.js.map +1 -0
  409. package/lib/projection/core/projectionCopyPatch.d.ts +13 -0
  410. package/lib/projection/core/projectionCopyPatch.d.ts.map +1 -0
  411. package/lib/projection/core/projectionCopyPatch.js +2 -0
  412. package/lib/projection/core/projectionCopyPatch.js.map +1 -0
  413. package/lib/projection/core/projectionOptions.d.ts +131 -0
  414. package/lib/projection/core/projectionOptions.d.ts.map +1 -0
  415. package/lib/projection/core/projectionOptions.js +85 -0
  416. package/lib/projection/core/projectionOptions.js.map +1 -0
  417. package/lib/projection/core/projectionResult.d.ts +119 -0
  418. package/lib/projection/core/projectionResult.d.ts.map +1 -0
  419. package/lib/projection/core/projectionResult.js +2 -0
  420. package/lib/projection/core/projectionResult.js.map +1 -0
  421. package/lib/projection/core/projectionSamples.d.ts +77 -0
  422. package/lib/projection/core/projectionSamples.d.ts.map +1 -0
  423. package/lib/projection/core/projectionSamples.js +81 -0
  424. package/lib/projection/core/projectionSamples.js.map +1 -0
  425. package/lib/projection/core/projectionStrings.d.ts +134 -0
  426. package/lib/projection/core/projectionStrings.d.ts.map +1 -0
  427. package/lib/projection/core/projectionStrings.js +168 -0
  428. package/lib/projection/core/projectionStrings.js.map +1 -0
  429. package/lib/projection/core/projectionTabDefaults.d.ts +18 -0
  430. package/lib/projection/core/projectionTabDefaults.d.ts.map +1 -0
  431. package/lib/projection/core/projectionTabDefaults.js +46 -0
  432. package/lib/projection/core/projectionTabDefaults.js.map +1 -0
  433. package/lib/projection/core/projectionTabs.d.ts +25 -0
  434. package/lib/projection/core/projectionTabs.d.ts.map +1 -0
  435. package/lib/projection/core/projectionTabs.js +51 -0
  436. package/lib/projection/core/projectionTabs.js.map +1 -0
  437. package/lib/projection/core/variableAxis.d.ts +106 -0
  438. package/lib/projection/core/variableAxis.d.ts.map +1 -0
  439. package/lib/projection/core/variableAxis.js +84 -0
  440. package/lib/projection/core/variableAxis.js.map +1 -0
  441. package/lib/projection/core/variablesView.d.ts +33 -0
  442. package/lib/projection/core/variablesView.d.ts.map +1 -0
  443. package/lib/projection/core/variablesView.js +49 -0
  444. package/lib/projection/core/variablesView.js.map +1 -0
  445. package/lib/projection/ui/PcaViewer.d.ts +31 -0
  446. package/lib/projection/ui/PcaViewer.d.ts.map +1 -0
  447. package/lib/projection/ui/PcaViewer.js +46 -0
  448. package/lib/projection/ui/PcaViewer.js.map +1 -0
  449. package/lib/projection/ui/ProjectionBar.d.ts +55 -0
  450. package/lib/projection/ui/ProjectionBar.d.ts.map +1 -0
  451. package/lib/projection/ui/ProjectionBar.js +112 -0
  452. package/lib/projection/ui/ProjectionBar.js.map +1 -0
  453. package/lib/projection/ui/ProjectionMapCaption.d.ts +46 -0
  454. package/lib/projection/ui/ProjectionMapCaption.d.ts.map +1 -0
  455. package/lib/projection/ui/ProjectionMapCaption.js +54 -0
  456. package/lib/projection/ui/ProjectionMapCaption.js.map +1 -0
  457. package/lib/projection/ui/ProjectionMapControls.d.ts +67 -0
  458. package/lib/projection/ui/ProjectionMapControls.d.ts.map +1 -0
  459. package/lib/projection/ui/ProjectionMapControls.js +108 -0
  460. package/lib/projection/ui/ProjectionMapControls.js.map +1 -0
  461. package/lib/projection/ui/ProjectionMapLegend.d.ts +39 -0
  462. package/lib/projection/ui/ProjectionMapLegend.d.ts.map +1 -0
  463. package/lib/projection/ui/ProjectionMapLegend.js +29 -0
  464. package/lib/projection/ui/ProjectionMapLegend.js.map +1 -0
  465. package/lib/projection/ui/ProjectionMapMore.d.ts +42 -0
  466. package/lib/projection/ui/ProjectionMapMore.d.ts.map +1 -0
  467. package/lib/projection/ui/ProjectionMapMore.js +74 -0
  468. package/lib/projection/ui/ProjectionMapMore.js.map +1 -0
  469. package/lib/projection/ui/ProjectionMapTab.d.ts +101 -0
  470. package/lib/projection/ui/ProjectionMapTab.d.ts.map +1 -0
  471. package/lib/projection/ui/ProjectionMapTab.js +42 -0
  472. package/lib/projection/ui/ProjectionMapTab.js.map +1 -0
  473. package/lib/projection/ui/ProjectionPairsControls.d.ts +37 -0
  474. package/lib/projection/ui/ProjectionPairsControls.d.ts.map +1 -0
  475. package/lib/projection/ui/ProjectionPairsControls.js +20 -0
  476. package/lib/projection/ui/ProjectionPairsControls.js.map +1 -0
  477. package/lib/projection/ui/ProjectionPairsMore.d.ts +40 -0
  478. package/lib/projection/ui/ProjectionPairsMore.d.ts.map +1 -0
  479. package/lib/projection/ui/ProjectionPairsMore.js +31 -0
  480. package/lib/projection/ui/ProjectionPairsMore.js.map +1 -0
  481. package/lib/projection/ui/ProjectionPairsTab.d.ts +66 -0
  482. package/lib/projection/ui/ProjectionPairsTab.d.ts.map +1 -0
  483. package/lib/projection/ui/ProjectionPairsTab.js +64 -0
  484. package/lib/projection/ui/ProjectionPairsTab.js.map +1 -0
  485. package/lib/projection/ui/ProjectionPanel.d.ts +73 -0
  486. package/lib/projection/ui/ProjectionPanel.d.ts.map +1 -0
  487. package/lib/projection/ui/ProjectionPanel.js +58 -0
  488. package/lib/projection/ui/ProjectionPanel.js.map +1 -0
  489. package/lib/projection/ui/ProjectionReadout.d.ts +65 -0
  490. package/lib/projection/ui/ProjectionReadout.d.ts.map +1 -0
  491. package/lib/projection/ui/ProjectionReadout.js +46 -0
  492. package/lib/projection/ui/ProjectionReadout.js.map +1 -0
  493. package/lib/projection/ui/ProjectionSharesControls.d.ts +34 -0
  494. package/lib/projection/ui/ProjectionSharesControls.d.ts.map +1 -0
  495. package/lib/projection/ui/ProjectionSharesControls.js +20 -0
  496. package/lib/projection/ui/ProjectionSharesControls.js.map +1 -0
  497. package/lib/projection/ui/ProjectionSharesMarks.d.ts +49 -0
  498. package/lib/projection/ui/ProjectionSharesMarks.d.ts.map +1 -0
  499. package/lib/projection/ui/ProjectionSharesMarks.js +110 -0
  500. package/lib/projection/ui/ProjectionSharesMarks.js.map +1 -0
  501. package/lib/projection/ui/ProjectionSharesMore.d.ts +19 -0
  502. package/lib/projection/ui/ProjectionSharesMore.d.ts.map +1 -0
  503. package/lib/projection/ui/ProjectionSharesMore.js +25 -0
  504. package/lib/projection/ui/ProjectionSharesMore.js.map +1 -0
  505. package/lib/projection/ui/ProjectionSharesTab.d.ts +50 -0
  506. package/lib/projection/ui/ProjectionSharesTab.d.ts.map +1 -0
  507. package/lib/projection/ui/ProjectionSharesTab.js +48 -0
  508. package/lib/projection/ui/ProjectionSharesTab.js.map +1 -0
  509. package/lib/projection/ui/ProjectionSurface.d.ts +33 -0
  510. package/lib/projection/ui/ProjectionSurface.d.ts.map +1 -0
  511. package/lib/projection/ui/ProjectionSurface.js +35 -0
  512. package/lib/projection/ui/ProjectionSurface.js.map +1 -0
  513. package/lib/projection/ui/ProjectionTabStrip.d.ts +74 -0
  514. package/lib/projection/ui/ProjectionTabStrip.d.ts.map +1 -0
  515. package/lib/projection/ui/ProjectionTabStrip.js +64 -0
  516. package/lib/projection/ui/ProjectionTabStrip.js.map +1 -0
  517. package/lib/projection/ui/ProjectionVariablesControls.d.ts +33 -0
  518. package/lib/projection/ui/ProjectionVariablesControls.d.ts.map +1 -0
  519. package/lib/projection/ui/ProjectionVariablesControls.js +26 -0
  520. package/lib/projection/ui/ProjectionVariablesControls.js.map +1 -0
  521. package/lib/projection/ui/ProjectionVariablesMore.d.ts +33 -0
  522. package/lib/projection/ui/ProjectionVariablesMore.d.ts.map +1 -0
  523. package/lib/projection/ui/ProjectionVariablesMore.js +55 -0
  524. package/lib/projection/ui/ProjectionVariablesMore.js.map +1 -0
  525. package/lib/projection/ui/ProjectionVariablesTab.d.ts +78 -0
  526. package/lib/projection/ui/ProjectionVariablesTab.d.ts.map +1 -0
  527. package/lib/projection/ui/ProjectionVariablesTab.js +93 -0
  528. package/lib/projection/ui/ProjectionVariablesTab.js.map +1 -0
  529. package/lib/projection/ui/ProjectionViewer.d.ts +32 -0
  530. package/lib/projection/ui/ProjectionViewer.d.ts.map +1 -0
  531. package/lib/projection/ui/ProjectionViewer.js +90 -0
  532. package/lib/projection/ui/ProjectionViewer.js.map +1 -0
  533. package/lib/projection/ui/index.d.ts +19 -0
  534. package/lib/projection/ui/index.d.ts.map +1 -0
  535. package/lib/projection/ui/index.js +15 -0
  536. package/lib/projection/ui/index.js.map +1 -0
  537. package/lib/projection/ui/projectionBarModel.d.ts +92 -0
  538. package/lib/projection/ui/projectionBarModel.d.ts.map +1 -0
  539. package/lib/projection/ui/projectionBarModel.js +140 -0
  540. package/lib/projection/ui/projectionBarModel.js.map +1 -0
  541. package/lib/projection/ui/projectionBarReadings.d.ts +65 -0
  542. package/lib/projection/ui/projectionBarReadings.d.ts.map +1 -0
  543. package/lib/projection/ui/projectionBarReadings.js +121 -0
  544. package/lib/projection/ui/projectionBarReadings.js.map +1 -0
  545. package/lib/projection/ui/projectionBarSlots.d.ts +59 -0
  546. package/lib/projection/ui/projectionBarSlots.d.ts.map +1 -0
  547. package/lib/projection/ui/projectionBarSlots.js +81 -0
  548. package/lib/projection/ui/projectionBarSlots.js.map +1 -0
  549. package/lib/projection/ui/projectionBarStyles.d.ts +102 -0
  550. package/lib/projection/ui/projectionBarStyles.d.ts.map +1 -0
  551. package/lib/projection/ui/projectionBarStyles.js +154 -0
  552. package/lib/projection/ui/projectionBarStyles.js.map +1 -0
  553. package/lib/projection/ui/projectionEllipse.d.ts +50 -0
  554. package/lib/projection/ui/projectionEllipse.d.ts.map +1 -0
  555. package/lib/projection/ui/projectionEllipse.js +101 -0
  556. package/lib/projection/ui/projectionEllipse.js.map +1 -0
  557. package/lib/projection/ui/projectionFormat.d.ts +13 -0
  558. package/lib/projection/ui/projectionFormat.d.ts.map +1 -0
  559. package/lib/projection/ui/projectionFormat.js +19 -0
  560. package/lib/projection/ui/projectionFormat.js.map +1 -0
  561. package/lib/projection/ui/projectionMapChoices.d.ts +31 -0
  562. package/lib/projection/ui/projectionMapChoices.d.ts.map +1 -0
  563. package/lib/projection/ui/projectionMapChoices.js +46 -0
  564. package/lib/projection/ui/projectionMapChoices.js.map +1 -0
  565. package/lib/projection/ui/projectionMapChrome.d.ts +73 -0
  566. package/lib/projection/ui/projectionMapChrome.d.ts.map +1 -0
  567. package/lib/projection/ui/projectionMapChrome.js +135 -0
  568. package/lib/projection/ui/projectionMapChrome.js.map +1 -0
  569. package/lib/projection/ui/projectionMapModel.d.ts +114 -0
  570. package/lib/projection/ui/projectionMapModel.d.ts.map +1 -0
  571. package/lib/projection/ui/projectionMapModel.js +177 -0
  572. package/lib/projection/ui/projectionMapModel.js.map +1 -0
  573. package/lib/projection/ui/projectionMapView.d.ts +59 -0
  574. package/lib/projection/ui/projectionMapView.d.ts.map +1 -0
  575. package/lib/projection/ui/projectionMapView.js +90 -0
  576. package/lib/projection/ui/projectionMapView.js.map +1 -0
  577. package/lib/projection/ui/projectionPairsCeiling.d.ts +29 -0
  578. package/lib/projection/ui/projectionPairsCeiling.d.ts.map +1 -0
  579. package/lib/projection/ui/projectionPairsCeiling.js +29 -0
  580. package/lib/projection/ui/projectionPairsCeiling.js.map +1 -0
  581. package/lib/projection/ui/projectionSelection.d.ts +51 -0
  582. package/lib/projection/ui/projectionSelection.d.ts.map +1 -0
  583. package/lib/projection/ui/projectionSelection.js +66 -0
  584. package/lib/projection/ui/projectionSelection.js.map +1 -0
  585. package/lib/projection/ui/projectionTabInfo.d.ts +59 -0
  586. package/lib/projection/ui/projectionTabInfo.d.ts.map +1 -0
  587. package/lib/projection/ui/projectionTabInfo.js +108 -0
  588. package/lib/projection/ui/projectionTabInfo.js.map +1 -0
  589. package/lib/projection/ui/projectionTabModels.d.ts +49 -0
  590. package/lib/projection/ui/projectionTabModels.d.ts.map +1 -0
  591. package/lib/projection/ui/projectionTabModels.js +59 -0
  592. package/lib/projection/ui/projectionTabModels.js.map +1 -0
  593. package/lib/projection/ui/projectionTabStyles.d.ts +131 -0
  594. package/lib/projection/ui/projectionTabStyles.d.ts.map +1 -0
  595. package/lib/projection/ui/projectionTabStyles.js +134 -0
  596. package/lib/projection/ui/projectionTabStyles.js.map +1 -0
  597. package/lib/projection/ui/projectionVariablesModel.d.ts +104 -0
  598. package/lib/projection/ui/projectionVariablesModel.d.ts.map +1 -0
  599. package/lib/projection/ui/projectionVariablesModel.js +165 -0
  600. package/lib/projection/ui/projectionVariablesModel.js.map +1 -0
  601. package/lib/projection/ui/projectionVariablesWords.d.ts +50 -0
  602. package/lib/projection/ui/projectionVariablesWords.d.ts.map +1 -0
  603. package/lib/projection/ui/projectionVariablesWords.js +91 -0
  604. package/lib/projection/ui/projectionVariablesWords.js.map +1 -0
  605. package/lib/projection/ui/projectionViewChoices.d.ts +31 -0
  606. package/lib/projection/ui/projectionViewChoices.d.ts.map +1 -0
  607. package/lib/projection/ui/projectionViewChoices.js +53 -0
  608. package/lib/projection/ui/projectionViewChoices.js.map +1 -0
  609. package/lib/projection/ui/projectionViewerProps.d.ts +153 -0
  610. package/lib/projection/ui/projectionViewerProps.d.ts.map +1 -0
  611. package/lib/projection/ui/projectionViewerProps.js +9 -0
  612. package/lib/projection/ui/projectionViewerProps.js.map +1 -0
  613. package/lib/projection/ui/useProjectionState.d.ts +63 -0
  614. package/lib/projection/ui/useProjectionState.d.ts.map +1 -0
  615. package/lib/projection/ui/useProjectionState.js +107 -0
  616. package/lib/projection/ui/useProjectionState.js.map +1 -0
  617. package/lib/scatter/core/confidenceEllipse.d.ts +117 -0
  618. package/lib/scatter/core/confidenceEllipse.d.ts.map +1 -0
  619. package/lib/scatter/core/confidenceEllipse.js +132 -0
  620. package/lib/scatter/core/confidenceEllipse.js.map +1 -0
  621. package/lib/scatter/core/ellipseCoverage.d.ts +33 -0
  622. package/lib/scatter/core/ellipseCoverage.d.ts.map +1 -0
  623. package/lib/scatter/core/ellipseCoverage.js +46 -0
  624. package/lib/scatter/core/ellipseCoverage.js.map +1 -0
  625. package/lib/scatter/core/ellipseProjection.d.ts +53 -0
  626. package/lib/scatter/core/ellipseProjection.d.ts.map +1 -0
  627. package/lib/scatter/core/ellipseProjection.js +94 -0
  628. package/lib/scatter/core/ellipseProjection.js.map +1 -0
  629. package/lib/scatter/core/index.d.ts +24 -0
  630. package/lib/scatter/core/index.d.ts.map +1 -0
  631. package/lib/scatter/core/index.js +19 -0
  632. package/lib/scatter/core/index.js.map +1 -0
  633. package/lib/scatter/core/lassoPath.d.ts +60 -0
  634. package/lib/scatter/core/lassoPath.d.ts.map +1 -0
  635. package/lib/scatter/core/lassoPath.js +101 -0
  636. package/lib/scatter/core/lassoPath.js.map +1 -0
  637. package/lib/scatter/core/polygon.d.ts +58 -0
  638. package/lib/scatter/core/polygon.d.ts.map +1 -0
  639. package/lib/scatter/core/polygon.js +140 -0
  640. package/lib/scatter/core/polygon.js.map +1 -0
  641. package/lib/scatter/core/scatterSelection.d.ts +44 -0
  642. package/lib/scatter/core/scatterSelection.d.ts.map +1 -0
  643. package/lib/scatter/core/scatterSelection.js +81 -0
  644. package/lib/scatter/core/scatterSelection.js.map +1 -0
  645. package/lib/scatter/core/screenPoints.d.ts +58 -0
  646. package/lib/scatter/core/screenPoints.d.ts.map +1 -0
  647. package/lib/scatter/core/screenPoints.js +78 -0
  648. package/lib/scatter/core/screenPoints.js.map +1 -0
  649. package/lib/scatter/ui/ScatterEllipseLayer.d.ts +69 -0
  650. package/lib/scatter/ui/ScatterEllipseLayer.d.ts.map +1 -0
  651. package/lib/scatter/ui/ScatterEllipseLayer.js +77 -0
  652. package/lib/scatter/ui/ScatterEllipseLayer.js.map +1 -0
  653. package/lib/scatter/ui/ScatterLabelLayer.d.ts +40 -0
  654. package/lib/scatter/ui/ScatterLabelLayer.d.ts.map +1 -0
  655. package/lib/scatter/ui/ScatterLabelLayer.js +77 -0
  656. package/lib/scatter/ui/ScatterLabelLayer.js.map +1 -0
  657. package/lib/scatter/ui/ScatterMarkLayer.d.ts +68 -0
  658. package/lib/scatter/ui/ScatterMarkLayer.d.ts.map +1 -0
  659. package/lib/scatter/ui/ScatterMarkLayer.js +134 -0
  660. package/lib/scatter/ui/ScatterMarkLayer.js.map +1 -0
  661. package/lib/scatter/ui/ScatterMatrix.d.ts +19 -0
  662. package/lib/scatter/ui/ScatterMatrix.d.ts.map +1 -0
  663. package/lib/scatter/ui/ScatterMatrix.js +125 -0
  664. package/lib/scatter/ui/ScatterMatrix.js.map +1 -0
  665. package/lib/scatter/ui/ScatterMatrixCell.d.ts +24 -0
  666. package/lib/scatter/ui/ScatterMatrixCell.d.ts.map +1 -0
  667. package/lib/scatter/ui/ScatterMatrixCell.js +90 -0
  668. package/lib/scatter/ui/ScatterMatrixCell.js.map +1 -0
  669. package/lib/scatter/ui/ScatterMatrixDiagonal.d.ts +78 -0
  670. package/lib/scatter/ui/ScatterMatrixDiagonal.d.ts.map +1 -0
  671. package/lib/scatter/ui/ScatterMatrixDiagonal.js +83 -0
  672. package/lib/scatter/ui/ScatterMatrixDiagonal.js.map +1 -0
  673. package/lib/scatter/ui/ScatterPlot.d.ts +17 -0
  674. package/lib/scatter/ui/ScatterPlot.d.ts.map +1 -0
  675. package/lib/scatter/ui/ScatterPlot.js +91 -0
  676. package/lib/scatter/ui/ScatterPlot.js.map +1 -0
  677. package/lib/scatter/ui/ScatterPointLayer.d.ts +67 -0
  678. package/lib/scatter/ui/ScatterPointLayer.d.ts.map +1 -0
  679. package/lib/scatter/ui/ScatterPointLayer.js +87 -0
  680. package/lib/scatter/ui/ScatterPointLayer.js.map +1 -0
  681. package/lib/scatter/ui/index.d.ts +53 -0
  682. package/lib/scatter/ui/index.d.ts.map +1 -0
  683. package/lib/scatter/ui/index.js +34 -0
  684. package/lib/scatter/ui/index.js.map +1 -0
  685. package/lib/scatter/ui/lassoGesture.d.ts +185 -0
  686. package/lib/scatter/ui/lassoGesture.d.ts.map +1 -0
  687. package/lib/scatter/ui/lassoGesture.js +100 -0
  688. package/lib/scatter/ui/lassoGesture.js.map +1 -0
  689. package/lib/scatter/ui/scatterGroupSpread.d.ts +81 -0
  690. package/lib/scatter/ui/scatterGroupSpread.d.ts.map +1 -0
  691. package/lib/scatter/ui/scatterGroupSpread.js +147 -0
  692. package/lib/scatter/ui/scatterGroupSpread.js.map +1 -0
  693. package/lib/scatter/ui/scatterLabelBoxes.d.ts +94 -0
  694. package/lib/scatter/ui/scatterLabelBoxes.d.ts.map +1 -0
  695. package/lib/scatter/ui/scatterLabelBoxes.js +140 -0
  696. package/lib/scatter/ui/scatterLabelBoxes.js.map +1 -0
  697. package/lib/scatter/ui/scatterLabelPlacement.d.ts +96 -0
  698. package/lib/scatter/ui/scatterLabelPlacement.d.ts.map +1 -0
  699. package/lib/scatter/ui/scatterLabelPlacement.js +210 -0
  700. package/lib/scatter/ui/scatterLabelPlacement.js.map +1 -0
  701. package/lib/scatter/ui/scatterLabels.d.ts +81 -0
  702. package/lib/scatter/ui/scatterLabels.d.ts.map +1 -0
  703. package/lib/scatter/ui/scatterLabels.js +101 -0
  704. package/lib/scatter/ui/scatterLabels.js.map +1 -0
  705. package/lib/scatter/ui/scatterMarkGlyph.d.ts +37 -0
  706. package/lib/scatter/ui/scatterMarkGlyph.d.ts.map +1 -0
  707. package/lib/scatter/ui/scatterMarkGlyph.js +33 -0
  708. package/lib/scatter/ui/scatterMarkGlyph.js.map +1 -0
  709. package/lib/scatter/ui/scatterMatrixDots.d.ts +24 -0
  710. package/lib/scatter/ui/scatterMatrixDots.d.ts.map +1 -0
  711. package/lib/scatter/ui/scatterMatrixDots.js +84 -0
  712. package/lib/scatter/ui/scatterMatrixDots.js.map +1 -0
  713. package/lib/scatter/ui/scatterMatrixLayout.d.ts +93 -0
  714. package/lib/scatter/ui/scatterMatrixLayout.d.ts.map +1 -0
  715. package/lib/scatter/ui/scatterMatrixLayout.js +117 -0
  716. package/lib/scatter/ui/scatterMatrixLayout.js.map +1 -0
  717. package/lib/scatter/ui/scatterMatrixOutlines.d.ts +27 -0
  718. package/lib/scatter/ui/scatterMatrixOutlines.d.ts.map +1 -0
  719. package/lib/scatter/ui/scatterMatrixOutlines.js +34 -0
  720. package/lib/scatter/ui/scatterMatrixOutlines.js.map +1 -0
  721. package/lib/scatter/ui/scatterMatrixProps.d.ts +99 -0
  722. package/lib/scatter/ui/scatterMatrixProps.d.ts.map +1 -0
  723. package/lib/scatter/ui/scatterMatrixProps.js +10 -0
  724. package/lib/scatter/ui/scatterMatrixProps.js.map +1 -0
  725. package/lib/scatter/ui/scatterOutlineShape.d.ts +63 -0
  726. package/lib/scatter/ui/scatterOutlineShape.d.ts.map +1 -0
  727. package/lib/scatter/ui/scatterOutlineShape.js +82 -0
  728. package/lib/scatter/ui/scatterOutlineShape.js.map +1 -0
  729. package/lib/scatter/ui/scatterPlotModel.d.ts +107 -0
  730. package/lib/scatter/ui/scatterPlotModel.d.ts.map +1 -0
  731. package/lib/scatter/ui/scatterPlotModel.js +139 -0
  732. package/lib/scatter/ui/scatterPlotModel.js.map +1 -0
  733. package/lib/scatter/ui/scatterPlotProps.d.ts +235 -0
  734. package/lib/scatter/ui/scatterPlotProps.d.ts.map +1 -0
  735. package/lib/scatter/ui/scatterPlotProps.js +10 -0
  736. package/lib/scatter/ui/scatterPlotProps.js.map +1 -0
  737. package/lib/scatter/ui/useLassoGesture.d.ts +18 -0
  738. package/lib/scatter/ui/useLassoGesture.d.ts.map +1 -0
  739. package/lib/scatter/ui/useLassoGesture.js +140 -0
  740. package/lib/scatter/ui/useLassoGesture.js.map +1 -0
  741. package/lib/scatter/ui/usePointHover.d.ts +88 -0
  742. package/lib/scatter/ui/usePointHover.d.ts.map +1 -0
  743. package/lib/scatter/ui/usePointHover.js +88 -0
  744. package/lib/scatter/ui/usePointHover.js.map +1 -0
  745. package/lib/scatter/ui/useScatterFrame.d.ts +80 -0
  746. package/lib/scatter/ui/useScatterFrame.d.ts.map +1 -0
  747. package/lib/scatter/ui/useScatterFrame.js +101 -0
  748. package/lib/scatter/ui/useScatterFrame.js.map +1 -0
  749. package/lib/scatter/ui/useScatterInteraction.d.ts +103 -0
  750. package/lib/scatter/ui/useScatterInteraction.d.ts.map +1 -0
  751. package/lib/scatter/ui/useScatterInteraction.js +93 -0
  752. package/lib/scatter/ui/useScatterInteraction.js.map +1 -0
  753. package/lib/scatter/ui/useScatterKeyboard.d.ts +60 -0
  754. package/lib/scatter/ui/useScatterKeyboard.d.ts.map +1 -0
  755. package/lib/scatter/ui/useScatterKeyboard.js +56 -0
  756. package/lib/scatter/ui/useScatterKeyboard.js.map +1 -0
  757. package/lib/scatter/ui/useScatterSelection.d.ts +78 -0
  758. package/lib/scatter/ui/useScatterSelection.d.ts.map +1 -0
  759. package/lib/scatter/ui/useScatterSelection.js +72 -0
  760. package/lib/scatter/ui/useScatterSelection.js.map +1 -0
  761. package/lib/share/core/query.d.ts +10 -4
  762. package/lib/share/core/query.d.ts.map +1 -1
  763. package/lib/share/core/query.js +11 -7
  764. package/lib/share/core/query.js.map +1 -1
  765. package/lib/spectra/core/axisEntries.d.ts +50 -0
  766. package/lib/spectra/core/axisEntries.d.ts.map +1 -0
  767. package/lib/spectra/core/axisEntries.js +78 -0
  768. package/lib/spectra/core/axisEntries.js.map +1 -0
  769. package/lib/spectra/core/chainProblems.d.ts +14 -0
  770. package/lib/spectra/core/chainProblems.d.ts.map +1 -0
  771. package/lib/spectra/core/chainProblems.js +100 -0
  772. package/lib/spectra/core/chainProblems.js.map +1 -0
  773. package/lib/spectra/core/filterCatalog.d.ts +57 -0
  774. package/lib/spectra/core/filterCatalog.d.ts.map +1 -0
  775. package/lib/spectra/core/filterCatalog.js +81 -0
  776. package/lib/spectra/core/filterCatalog.js.map +1 -0
  777. package/lib/spectra/core/filterChain.d.ts +69 -0
  778. package/lib/spectra/core/filterChain.d.ts.map +1 -0
  779. package/lib/spectra/core/filterChain.js +163 -0
  780. package/lib/spectra/core/filterChain.js.map +1 -0
  781. package/lib/spectra/core/filterEntries.d.ts +136 -0
  782. package/lib/spectra/core/filterEntries.d.ts.map +1 -0
  783. package/lib/spectra/core/filterEntries.js +139 -0
  784. package/lib/spectra/core/filterEntries.js.map +1 -0
  785. package/lib/spectra/core/filterFields.d.ts +94 -0
  786. package/lib/spectra/core/filterFields.d.ts.map +1 -0
  787. package/lib/spectra/core/filterFields.js +82 -0
  788. package/lib/spectra/core/filterFields.js.map +1 -0
  789. package/lib/spectra/core/index.d.ts +14 -0
  790. package/lib/spectra/core/index.d.ts.map +1 -0
  791. package/lib/spectra/core/index.js +9 -0
  792. package/lib/spectra/core/index.js.map +1 -0
  793. package/lib/spectra/core/principalComponents.d.ts +70 -0
  794. package/lib/spectra/core/principalComponents.d.ts.map +1 -0
  795. package/lib/spectra/core/principalComponents.js +90 -0
  796. package/lib/spectra/core/principalComponents.js.map +1 -0
  797. package/lib/spectra/core/problems.d.ts +57 -0
  798. package/lib/spectra/core/problems.d.ts.map +1 -0
  799. package/lib/spectra/core/problems.js +121 -0
  800. package/lib/spectra/core/problems.js.map +1 -0
  801. package/lib/spectra/core/settings.d.ts +67 -0
  802. package/lib/spectra/core/settings.d.ts.map +1 -0
  803. package/lib/spectra/core/settings.js +35 -0
  804. package/lib/spectra/core/settings.js.map +1 -0
  805. package/lib/spectra/core/settingsProblems.d.ts +18 -0
  806. package/lib/spectra/core/settingsProblems.d.ts.map +1 -0
  807. package/lib/spectra/core/settingsProblems.js +148 -0
  808. package/lib/spectra/core/settingsProblems.js.map +1 -0
  809. package/lib/spectra/core/stepProblems.d.ts +13 -0
  810. package/lib/spectra/core/stepProblems.d.ts.map +1 -0
  811. package/lib/spectra/core/stepProblems.js +133 -0
  812. package/lib/spectra/core/stepProblems.js.map +1 -0
  813. package/lib/spectra/ui/CalculationRows.d.ts +21 -0
  814. package/lib/spectra/ui/CalculationRows.d.ts.map +1 -0
  815. package/lib/spectra/ui/CalculationRows.js +77 -0
  816. package/lib/spectra/ui/CalculationRows.js.map +1 -0
  817. package/lib/spectra/ui/FilterChainEditor.d.ts +34 -0
  818. package/lib/spectra/ui/FilterChainEditor.d.ts.map +1 -0
  819. package/lib/spectra/ui/FilterChainEditor.js +111 -0
  820. package/lib/spectra/ui/FilterChainEditor.js.map +1 -0
  821. package/lib/spectra/ui/FilterChoiceControl.d.ts +23 -0
  822. package/lib/spectra/ui/FilterChoiceControl.d.ts.map +1 -0
  823. package/lib/spectra/ui/FilterChoiceControl.js +65 -0
  824. package/lib/spectra/ui/FilterChoiceControl.js.map +1 -0
  825. package/lib/spectra/ui/FilterFieldControl.d.ts +25 -0
  826. package/lib/spectra/ui/FilterFieldControl.d.ts.map +1 -0
  827. package/lib/spectra/ui/FilterFieldControl.js +68 -0
  828. package/lib/spectra/ui/FilterFieldControl.js.map +1 -0
  829. package/lib/spectra/ui/FilterRow.d.ts +33 -0
  830. package/lib/spectra/ui/FilterRow.d.ts.map +1 -0
  831. package/lib/spectra/ui/FilterRow.js +76 -0
  832. package/lib/spectra/ui/FilterRow.js.map +1 -0
  833. package/lib/spectra/ui/MatrixFilterRows.d.ts +22 -0
  834. package/lib/spectra/ui/MatrixFilterRows.d.ts.map +1 -0
  835. package/lib/spectra/ui/MatrixFilterRows.js +92 -0
  836. package/lib/spectra/ui/MatrixFilterRows.js.map +1 -0
  837. package/lib/spectra/ui/NormalizationEditor.d.ts +24 -0
  838. package/lib/spectra/ui/NormalizationEditor.d.ts.map +1 -0
  839. package/lib/spectra/ui/NormalizationEditor.js +108 -0
  840. package/lib/spectra/ui/NormalizationEditor.js.map +1 -0
  841. package/lib/spectra/ui/NumberField.d.ts +41 -0
  842. package/lib/spectra/ui/NumberField.d.ts.map +1 -0
  843. package/lib/spectra/ui/NumberField.js +81 -0
  844. package/lib/spectra/ui/NumberField.js.map +1 -0
  845. package/lib/spectra/ui/PostProcessingEditor.d.ts +29 -0
  846. package/lib/spectra/ui/PostProcessingEditor.d.ts.map +1 -0
  847. package/lib/spectra/ui/PostProcessingEditor.js +53 -0
  848. package/lib/spectra/ui/PostProcessingEditor.js.map +1 -0
  849. package/lib/spectra/ui/PrincipalComponentSelect.d.ts +40 -0
  850. package/lib/spectra/ui/PrincipalComponentSelect.d.ts.map +1 -0
  851. package/lib/spectra/ui/PrincipalComponentSelect.js +97 -0
  852. package/lib/spectra/ui/PrincipalComponentSelect.js.map +1 -0
  853. package/lib/spectra/ui/ProblemList.d.ts +24 -0
  854. package/lib/spectra/ui/ProblemList.d.ts.map +1 -0
  855. package/lib/spectra/ui/ProblemList.js +40 -0
  856. package/lib/spectra/ui/ProblemList.js.map +1 -0
  857. package/lib/spectra/ui/RangeRows.d.ts +23 -0
  858. package/lib/spectra/ui/RangeRows.d.ts.map +1 -0
  859. package/lib/spectra/ui/RangeRows.js +76 -0
  860. package/lib/spectra/ui/RangeRows.js.map +1 -0
  861. package/lib/spectra/ui/ScaleFields.d.ts +28 -0
  862. package/lib/spectra/ui/ScaleFields.d.ts.map +1 -0
  863. package/lib/spectra/ui/ScaleFields.js +67 -0
  864. package/lib/spectra/ui/ScaleFields.js.map +1 -0
  865. package/lib/spectra/ui/SettingsPart.d.ts +25 -0
  866. package/lib/spectra/ui/SettingsPart.d.ts.map +1 -0
  867. package/lib/spectra/ui/SettingsPart.js +35 -0
  868. package/lib/spectra/ui/SettingsPart.js.map +1 -0
  869. package/lib/spectra/ui/SpectraSettingsEditor.d.ts +62 -0
  870. package/lib/spectra/ui/SpectraSettingsEditor.d.ts.map +1 -0
  871. package/lib/spectra/ui/SpectraSettingsEditor.js +39 -0
  872. package/lib/spectra/ui/SpectraSettingsEditor.js.map +1 -0
  873. package/lib/spectra/ui/SpectrumSelection.d.ts +30 -0
  874. package/lib/spectra/ui/SpectrumSelection.d.ts.map +1 -0
  875. package/lib/spectra/ui/SpectrumSelection.js +116 -0
  876. package/lib/spectra/ui/SpectrumSelection.js.map +1 -0
  877. package/lib/spectra/ui/ZoneRows.d.ts +41 -0
  878. package/lib/spectra/ui/ZoneRows.d.ts.map +1 -0
  879. package/lib/spectra/ui/ZoneRows.js +70 -0
  880. package/lib/spectra/ui/ZoneRows.js.map +1 -0
  881. package/lib/spectra/ui/index.d.ts +7 -0
  882. package/lib/spectra/ui/index.d.ts.map +1 -0
  883. package/lib/spectra/ui/index.js +4 -0
  884. package/lib/spectra/ui/index.js.map +1 -0
  885. package/lib/spectra/ui/matrixSteps.d.ts +61 -0
  886. package/lib/spectra/ui/matrixSteps.d.ts.map +1 -0
  887. package/lib/spectra/ui/matrixSteps.js +92 -0
  888. package/lib/spectra/ui/matrixSteps.js.map +1 -0
  889. package/lib/spectra/ui/problemsAbout.d.ts +14 -0
  890. package/lib/spectra/ui/problemsAbout.d.ts.map +1 -0
  891. package/lib/spectra/ui/problemsAbout.js +15 -0
  892. package/lib/spectra/ui/problemsAbout.js.map +1 -0
  893. package/lib/spectra/ui/rowKeys.d.ts +27 -0
  894. package/lib/spectra/ui/rowKeys.d.ts.map +1 -0
  895. package/lib/spectra/ui/rowKeys.js +45 -0
  896. package/lib/spectra/ui/rowKeys.js.map +1 -0
  897. package/lib/spectra/ui/scaleOptions.d.ts +50 -0
  898. package/lib/spectra/ui/scaleOptions.d.ts.map +1 -0
  899. package/lib/spectra/ui/scaleOptions.js +103 -0
  900. package/lib/spectra/ui/scaleOptions.js.map +1 -0
  901. package/lib/ui.d.ts +6 -0
  902. package/lib/ui.d.ts.map +1 -1
  903. package/lib/ui.js +6 -0
  904. package/lib/ui.js.map +1 -1
  905. package/package.json +17 -1
  906. package/src/chart/core/chartAxisScale.ts +249 -0
  907. package/src/chart/core/chartBand.ts +82 -0
  908. package/src/chart/core/chartBins.ts +96 -0
  909. package/src/chart/core/chartExtent.ts +203 -0
  910. package/src/chart/core/chartLabels.ts +68 -0
  911. package/src/chart/core/chartPalette.ts +71 -0
  912. package/src/chart/core/chartScale.ts +72 -0
  913. package/src/chart/core/chartViewport.ts +211 -0
  914. package/src/chart/core/index.ts +58 -0
  915. package/src/chart/core/matrix.ts +100 -0
  916. package/src/chart/ui/ChartAxis.tsx +232 -0
  917. package/src/chart/ui/ChartFrame.tsx +246 -0
  918. package/src/chart/ui/ChartSeriesMarks.tsx +98 -0
  919. package/src/chart/ui/ChartTrackingLayer.tsx +192 -0
  920. package/src/chart/ui/TrackedLineChart.tsx +267 -0
  921. package/src/chart/ui/TrackedStickChart.tsx +197 -0
  922. package/src/chart/ui/chartStyles.ts +194 -0
  923. package/src/chart/ui/index.ts +34 -0
  924. package/src/chart/ui/stickChartModel.ts +201 -0
  925. package/src/chart/ui/useWheelZoom.ts +177 -0
  926. package/src/color/core/gradient.ts +29 -0
  927. package/src/color/core/hsv.ts +112 -0
  928. package/src/color/core/index.ts +27 -1
  929. package/src/color/core/interpolate.ts +179 -0
  930. package/src/color/core/scale.ts +17 -49
  931. package/src/color/core/scaleData.ts +128 -0
  932. package/src/color/core/scaleText.ts +134 -0
  933. package/src/color/core/scales.ts +148 -0
  934. package/src/color/ui/ColorScaleBar.tsx +73 -0
  935. package/src/color/ui/ColorScaleEditor.tsx +243 -0
  936. package/src/color/ui/ColorScaleSelect.tsx +252 -0
  937. package/src/color/ui/index.ts +6 -0
  938. package/src/core.ts +5 -0
  939. package/src/credits/core/credits.ts +20 -0
  940. package/src/download/core/cssTokens.ts +90 -0
  941. package/src/download/core/downloadFigure.ts +66 -0
  942. package/src/download/core/figurePng.ts +87 -0
  943. package/src/download/core/figureScale.ts +83 -0
  944. package/src/download/core/figureSvg.ts +130 -0
  945. package/src/download/core/figureSvgDocument.ts +129 -0
  946. package/src/download/core/figureTarget.ts +130 -0
  947. package/src/download/core/index.ts +28 -0
  948. package/src/download/ui/FigureDownload.tsx +158 -0
  949. package/src/download/ui/FigureDownloadPanel.tsx +165 -0
  950. package/src/download/ui/index.ts +13 -0
  951. package/src/ecosystem/core/sites.ts +12 -1
  952. package/src/ecosystem/ui/glyphs.tsx +16 -0
  953. package/src/overlay/core/emptiestCorner.ts +122 -0
  954. package/src/overlay/core/index.ts +34 -0
  955. package/src/overlay/core/overlayCollapse.ts +20 -0
  956. package/src/overlay/core/overlayMarks.ts +43 -0
  957. package/src/overlay/core/overlayMetrics.ts +112 -0
  958. package/src/overlay/core/overlayPlacement.ts +80 -0
  959. package/src/overlay/core/overlayTierRoom.ts +199 -0
  960. package/src/overlay/core/overlayTiers.ts +130 -0
  961. package/src/overlay/core/placeOverlayCard.ts +93 -0
  962. package/src/overlay/ui/OverlayAction.tsx +66 -0
  963. package/src/overlay/ui/OverlayBar.tsx +188 -0
  964. package/src/overlay/ui/OverlayBarButton.tsx +83 -0
  965. package/src/overlay/ui/OverlayBarCard.tsx +78 -0
  966. package/src/overlay/ui/OverlayBarStrip.tsx +62 -0
  967. package/src/overlay/ui/OverlayCaption.tsx +124 -0
  968. package/src/overlay/ui/OverlayChip.tsx +181 -0
  969. package/src/overlay/ui/OverlayDivider.tsx +24 -0
  970. package/src/overlay/ui/OverlayGroup.tsx +157 -0
  971. package/src/overlay/ui/OverlayIconButton.tsx +131 -0
  972. package/src/overlay/ui/OverlayInfo.tsx +92 -0
  973. package/src/overlay/ui/OverlayLayer.tsx +118 -0
  974. package/src/overlay/ui/OverlayLegend.tsx +222 -0
  975. package/src/overlay/ui/OverlayLegendMark.tsx +95 -0
  976. package/src/overlay/ui/OverlayNumber.tsx +160 -0
  977. package/src/overlay/ui/OverlayPanel.tsx +162 -0
  978. package/src/overlay/ui/OverlayPills.tsx +157 -0
  979. package/src/overlay/ui/OverlayReadout.tsx +247 -0
  980. package/src/overlay/ui/OverlayRow.tsx +200 -0
  981. package/src/overlay/ui/OverlaySegmented.tsx +67 -0
  982. package/src/overlay/ui/OverlaySelect.tsx +114 -0
  983. package/src/overlay/ui/OverlaySwatchIcon.tsx +126 -0
  984. package/src/overlay/ui/OverlayToggle.tsx +136 -0
  985. package/src/overlay/ui/OverlayValueButton.tsx +149 -0
  986. package/src/overlay/ui/OverlayValueMenu.tsx +141 -0
  987. package/src/overlay/ui/index.ts +72 -0
  988. package/src/overlay/ui/overlayBarShape.ts +113 -0
  989. package/src/overlay/ui/overlayControlStyles.ts +176 -0
  990. package/src/overlay/ui/overlayFigureStyles.ts +111 -0
  991. package/src/overlay/ui/overlayPanelContext.ts +42 -0
  992. package/src/overlay/ui/overlayPanelStyles.ts +235 -0
  993. package/src/overlay/ui/overlayPillKeys.ts +45 -0
  994. package/src/overlay/ui/overlayPillStyles.ts +190 -0
  995. package/src/overlay/ui/overlayRowStyles.ts +166 -0
  996. package/src/overlay/ui/overlayStepperStyles.ts +112 -0
  997. package/src/overlay/ui/overlayStyles.ts +222 -0
  998. package/src/overlay/ui/overlaySurface.ts +120 -0
  999. package/src/overlay/ui/overlaySwitchStyles.ts +136 -0
  1000. package/src/overlay/ui/overlayValueStyles.ts +210 -0
  1001. package/src/projection/core/embeddingResult.ts +119 -0
  1002. package/src/projection/core/explainedShares.ts +105 -0
  1003. package/src/projection/core/index.ts +81 -0
  1004. package/src/projection/core/loadingProfiles.ts +226 -0
  1005. package/src/projection/core/pcaLike.ts +33 -0
  1006. package/src/projection/core/pcaResult.ts +238 -0
  1007. package/src/projection/core/projectionCopy.ts +252 -0
  1008. package/src/projection/core/projectionCopyPatch.ts +12 -0
  1009. package/src/projection/core/projectionOptions.ts +238 -0
  1010. package/src/projection/core/projectionResult.ts +123 -0
  1011. package/src/projection/core/projectionSamples.ts +170 -0
  1012. package/src/projection/core/projectionStrings.ts +265 -0
  1013. package/src/projection/core/projectionTabDefaults.ts +51 -0
  1014. package/src/projection/core/projectionTabs.ts +56 -0
  1015. package/src/projection/core/variableAxis.ts +161 -0
  1016. package/src/projection/core/variablesView.ts +53 -0
  1017. package/src/projection/ui/PcaViewer.tsx +80 -0
  1018. package/src/projection/ui/ProjectionBar.tsx +222 -0
  1019. package/src/projection/ui/ProjectionMapCaption.tsx +96 -0
  1020. package/src/projection/ui/ProjectionMapControls.tsx +271 -0
  1021. package/src/projection/ui/ProjectionMapLegend.tsx +70 -0
  1022. package/src/projection/ui/ProjectionMapMore.tsx +178 -0
  1023. package/src/projection/ui/ProjectionMapTab.tsx +205 -0
  1024. package/src/projection/ui/ProjectionPairsControls.tsx +58 -0
  1025. package/src/projection/ui/ProjectionPairsMore.tsx +95 -0
  1026. package/src/projection/ui/ProjectionPairsTab.tsx +159 -0
  1027. package/src/projection/ui/ProjectionPanel.tsx +199 -0
  1028. package/src/projection/ui/ProjectionReadout.tsx +149 -0
  1029. package/src/projection/ui/ProjectionSharesControls.tsx +56 -0
  1030. package/src/projection/ui/ProjectionSharesMarks.tsx +241 -0
  1031. package/src/projection/ui/ProjectionSharesMore.tsx +53 -0
  1032. package/src/projection/ui/ProjectionSharesTab.tsx +118 -0
  1033. package/src/projection/ui/ProjectionSurface.tsx +63 -0
  1034. package/src/projection/ui/ProjectionTabStrip.tsx +144 -0
  1035. package/src/projection/ui/ProjectionVariablesControls.tsx +62 -0
  1036. package/src/projection/ui/ProjectionVariablesMore.tsx +144 -0
  1037. package/src/projection/ui/ProjectionVariablesTab.tsx +216 -0
  1038. package/src/projection/ui/ProjectionViewer.tsx +143 -0
  1039. package/src/projection/ui/index.ts +19 -0
  1040. package/src/projection/ui/projectionBarModel.ts +193 -0
  1041. package/src/projection/ui/projectionBarReadings.ts +177 -0
  1042. package/src/projection/ui/projectionBarSlots.tsx +139 -0
  1043. package/src/projection/ui/projectionBarStyles.ts +174 -0
  1044. package/src/projection/ui/projectionEllipse.ts +104 -0
  1045. package/src/projection/ui/projectionFormat.ts +18 -0
  1046. package/src/projection/ui/projectionMapChoices.ts +64 -0
  1047. package/src/projection/ui/projectionMapChrome.ts +207 -0
  1048. package/src/projection/ui/projectionMapModel.ts +253 -0
  1049. package/src/projection/ui/projectionMapView.ts +188 -0
  1050. package/src/projection/ui/projectionPairsCeiling.ts +45 -0
  1051. package/src/projection/ui/projectionSelection.ts +87 -0
  1052. package/src/projection/ui/projectionTabInfo.ts +126 -0
  1053. package/src/projection/ui/projectionTabModels.ts +106 -0
  1054. package/src/projection/ui/projectionTabStyles.ts +161 -0
  1055. package/src/projection/ui/projectionVariablesModel.ts +231 -0
  1056. package/src/projection/ui/projectionVariablesWords.ts +105 -0
  1057. package/src/projection/ui/projectionViewChoices.ts +77 -0
  1058. package/src/projection/ui/projectionViewerProps.ts +155 -0
  1059. package/src/projection/ui/useProjectionState.ts +224 -0
  1060. package/src/scatter/core/confidenceEllipse.ts +230 -0
  1061. package/src/scatter/core/ellipseCoverage.ts +46 -0
  1062. package/src/scatter/core/ellipseProjection.ts +126 -0
  1063. package/src/scatter/core/index.ts +48 -0
  1064. package/src/scatter/core/lassoPath.ts +127 -0
  1065. package/src/scatter/core/polygon.ts +155 -0
  1066. package/src/scatter/core/scatterSelection.ts +88 -0
  1067. package/src/scatter/core/screenPoints.ts +110 -0
  1068. package/src/scatter/ui/ScatterEllipseLayer.tsx +153 -0
  1069. package/src/scatter/ui/ScatterLabelLayer.tsx +135 -0
  1070. package/src/scatter/ui/ScatterMarkLayer.tsx +245 -0
  1071. package/src/scatter/ui/ScatterMatrix.tsx +177 -0
  1072. package/src/scatter/ui/ScatterMatrixCell.tsx +140 -0
  1073. package/src/scatter/ui/ScatterMatrixDiagonal.tsx +182 -0
  1074. package/src/scatter/ui/ScatterPlot.tsx +234 -0
  1075. package/src/scatter/ui/ScatterPointLayer.tsx +168 -0
  1076. package/src/scatter/ui/index.ts +123 -0
  1077. package/src/scatter/ui/lassoGesture.ts +237 -0
  1078. package/src/scatter/ui/scatterGroupSpread.ts +206 -0
  1079. package/src/scatter/ui/scatterLabelBoxes.ts +177 -0
  1080. package/src/scatter/ui/scatterLabelPlacement.ts +325 -0
  1081. package/src/scatter/ui/scatterLabels.ts +147 -0
  1082. package/src/scatter/ui/scatterMarkGlyph.tsx +94 -0
  1083. package/src/scatter/ui/scatterMatrixDots.tsx +134 -0
  1084. package/src/scatter/ui/scatterMatrixLayout.ts +133 -0
  1085. package/src/scatter/ui/scatterMatrixOutlines.tsx +53 -0
  1086. package/src/scatter/ui/scatterMatrixProps.ts +103 -0
  1087. package/src/scatter/ui/scatterOutlineShape.tsx +169 -0
  1088. package/src/scatter/ui/scatterPlotModel.ts +200 -0
  1089. package/src/scatter/ui/scatterPlotProps.ts +240 -0
  1090. package/src/scatter/ui/useLassoGesture.ts +214 -0
  1091. package/src/scatter/ui/usePointHover.ts +187 -0
  1092. package/src/scatter/ui/useScatterFrame.ts +191 -0
  1093. package/src/scatter/ui/useScatterInteraction.ts +237 -0
  1094. package/src/scatter/ui/useScatterKeyboard.ts +120 -0
  1095. package/src/scatter/ui/useScatterSelection.ts +189 -0
  1096. package/src/share/core/query.ts +11 -7
  1097. package/src/spectra/core/axisEntries.ts +107 -0
  1098. package/src/spectra/core/chainProblems.ts +165 -0
  1099. package/src/spectra/core/filterCatalog.ts +100 -0
  1100. package/src/spectra/core/filterChain.ts +194 -0
  1101. package/src/spectra/core/filterEntries.ts +214 -0
  1102. package/src/spectra/core/filterFields.ts +159 -0
  1103. package/src/spectra/core/index.ts +67 -0
  1104. package/src/spectra/core/principalComponents.ts +130 -0
  1105. package/src/spectra/core/problems.ts +143 -0
  1106. package/src/spectra/core/settings.ts +119 -0
  1107. package/src/spectra/core/settingsProblems.ts +222 -0
  1108. package/src/spectra/core/stepProblems.ts +228 -0
  1109. package/src/spectra/ui/CalculationRows.tsx +161 -0
  1110. package/src/spectra/ui/FilterChainEditor.tsx +199 -0
  1111. package/src/spectra/ui/FilterChoiceControl.tsx +153 -0
  1112. package/src/spectra/ui/FilterFieldControl.tsx +105 -0
  1113. package/src/spectra/ui/FilterRow.tsx +190 -0
  1114. package/src/spectra/ui/MatrixFilterRows.tsx +184 -0
  1115. package/src/spectra/ui/NormalizationEditor.tsx +235 -0
  1116. package/src/spectra/ui/NumberField.tsx +126 -0
  1117. package/src/spectra/ui/PostProcessingEditor.tsx +136 -0
  1118. package/src/spectra/ui/PrincipalComponentSelect.tsx +245 -0
  1119. package/src/spectra/ui/ProblemList.tsx +77 -0
  1120. package/src/spectra/ui/RangeRows.tsx +175 -0
  1121. package/src/spectra/ui/ScaleFields.tsx +183 -0
  1122. package/src/spectra/ui/SettingsPart.tsx +60 -0
  1123. package/src/spectra/ui/SpectraSettingsEditor.tsx +143 -0
  1124. package/src/spectra/ui/SpectrumSelection.tsx +193 -0
  1125. package/src/spectra/ui/ZoneRows.tsx +159 -0
  1126. package/src/spectra/ui/index.ts +9 -0
  1127. package/src/spectra/ui/matrixSteps.ts +128 -0
  1128. package/src/spectra/ui/problemsAbout.ts +21 -0
  1129. package/src/spectra/ui/rowKeys.ts +47 -0
  1130. package/src/spectra/ui/scaleOptions.ts +116 -0
  1131. package/src/ui.ts +6 -0
@@ -0,0 +1,63 @@
1
+ /**
2
+ * How one group outline is drawn, wherever it is drawn.
3
+ *
4
+ * The map and the pair grid measure their groups differently — the map over
5
+ * two columns of points, the grid over one shared block of covariances — but a
6
+ * reader moving between the two tabs has to see the same picture, so the one
7
+ * decision about fill and the collinear case lives here rather than once per
8
+ * figure.
9
+ */
10
+ import type { ReactElement } from 'react';
11
+ import type { ChartScale } from '../../chart/core/chartScale.ts';
12
+ import type { ConfidenceEllipse } from '../core/confidenceEllipse.ts';
13
+ /** How one outline is inked. */
14
+ export interface ScatterOutlineInk {
15
+ /** The group's own colour, which the region is filled with. */
16
+ color: string;
17
+ /**
18
+ * How strongly the whole outline is drawn, which is what a muted legend
19
+ * entry turns down.
20
+ * @default undefined — the outline is drawn at full strength
21
+ */
22
+ opacity?: number;
23
+ /**
24
+ * How solid the region is; `0` draws nothing at all, since the fill is the
25
+ * whole shape.
26
+ * @default SCATTER_OUTLINE_FILL_OPACITY
27
+ */
28
+ fillOpacity?: number;
29
+ }
30
+ /**
31
+ * One group outline, mapped onto a plot and ready to be drawn.
32
+ *
33
+ * The region is fill only, with no boundary drawn: a stroked edge reads as a
34
+ * measured limit the ellipse never claims to be, and it competes with the dots
35
+ * the reader is there to count. The fill is deliberately faint for the same
36
+ * reason it is the whole shape — fills stack where groups overlap, and a tint
37
+ * heavy enough to see on its own turns two overlapping species into a third
38
+ * colour the reader then looks for in the legend.
39
+ *
40
+ * A group whose points lie on a straight line is drawn as the segment it
41
+ * actually is, and that one is stroked, since a shape of no height fills to
42
+ * nothing: that a group is perfectly correlated in these two axes is a
43
+ * finding, and dropping its outline would hide it.
44
+ * @param group - Which group it belongs to, for the key and the attribute the tests read.
45
+ * @param ellipse - The outline in data units, from `confidenceEllipse` or `scatterPairEllipse`.
46
+ * @param scaleX - Data to pixels, horizontally.
47
+ * @param scaleY - Data to pixels, vertically; its `factor` is negative.
48
+ * @param ink - See {@link ScatterOutlineInk}.
49
+ * @returns The element, keyed by group.
50
+ */
51
+ export declare function scatterOutlineShape(group: number, ellipse: ConfidenceEllipse, scaleX: ChartScale, scaleY: ChartScale, ink: ScatterOutlineInk): ReactElement;
52
+ /**
53
+ * How solid a group's region is.
54
+ *
55
+ * Three iris species overlap in the leading components, and fills compound
56
+ * where they do: at 0.2 two of them stack to 0.36 and read as a fourth group
57
+ * with a colour of its own, while at 0.1 they stack to 0.19 — denser than
58
+ * either, plainly still the same family. Below about 0.06 the region stops
59
+ * being visible against a white ground at all, which is the other failure.
60
+ * A caller drawing ten groups should turn it down.
61
+ */
62
+ export declare const SCATTER_OUTLINE_FILL_OPACITY = 0.1;
63
+ //# sourceMappingURL=scatterOutlineShape.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scatterOutlineShape.d.ts","sourceRoot":"","sources":["../../../src/scatter/ui/scatterOutlineShape.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAItE,gCAAgC;AAChC,MAAM,WAAW,iBAAiB;IAChC,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,iBAAiB,EAC1B,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,iBAAiB,GACrB,YAAY,CAKd;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,4BAA4B,MAAM,CAAC"}
@@ -0,0 +1,82 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { ellipsePolygon, projectEllipse } from "../core/ellipseProjection.js";
3
+ /**
4
+ * One group outline, mapped onto a plot and ready to be drawn.
5
+ *
6
+ * The region is fill only, with no boundary drawn: a stroked edge reads as a
7
+ * measured limit the ellipse never claims to be, and it competes with the dots
8
+ * the reader is there to count. The fill is deliberately faint for the same
9
+ * reason it is the whole shape — fills stack where groups overlap, and a tint
10
+ * heavy enough to see on its own turns two overlapping species into a third
11
+ * colour the reader then looks for in the legend.
12
+ *
13
+ * A group whose points lie on a straight line is drawn as the segment it
14
+ * actually is, and that one is stroked, since a shape of no height fills to
15
+ * nothing: that a group is perfectly correlated in these two axes is a
16
+ * finding, and dropping its outline would hide it.
17
+ * @param group - Which group it belongs to, for the key and the attribute the tests read.
18
+ * @param ellipse - The outline in data units, from `confidenceEllipse` or `scatterPairEllipse`.
19
+ * @param scaleX - Data to pixels, horizontally.
20
+ * @param scaleY - Data to pixels, vertically; its `factor` is negative.
21
+ * @param ink - See {@link ScatterOutlineInk}.
22
+ * @returns The element, keyed by group.
23
+ */
24
+ export function scatterOutlineShape(group, ellipse, scaleX, scaleY, ink) {
25
+ const drawn = projectEllipse(ellipse, scaleX, scaleY);
26
+ return drawn === null
27
+ ? sampledOutline(group, ellipse, scaleX, scaleY, ink)
28
+ : projectedOutline(group, drawn, ink);
29
+ }
30
+ /**
31
+ * How solid a group's region is.
32
+ *
33
+ * Three iris species overlap in the leading components, and fills compound
34
+ * where they do: at 0.2 two of them stack to 0.36 and read as a fourth group
35
+ * with a colour of its own, while at 0.1 they stack to 0.19 — denser than
36
+ * either, plainly still the same family. Below about 0.06 the region stops
37
+ * being visible against a white ground at all, which is the other failure.
38
+ * A caller drawing ten groups should turn it down.
39
+ */
40
+ export const SCATTER_OUTLINE_FILL_OPACITY = 0.1;
41
+ /** Firm enough to read over a cloud of its own colour. */
42
+ const SEGMENT_STROKE_WIDTH = 1.5;
43
+ const HALF_TURN_DEGREES = 180;
44
+ function projectedOutline(group, shape, ink) {
45
+ const { cx, cy, rx, ry, angleDegrees } = shape;
46
+ const shared = { 'data-group': group, opacity: ink.opacity };
47
+ if (ry > 0) {
48
+ return (_jsx("ellipse", { ...shared, ...fillOf(ink), cx: round(cx), cy: round(cy), rx: round(rx), ry: round(ry), transform: `rotate(${round(angleDegrees)} ${round(cx)} ${round(cy)})` }, group));
49
+ }
50
+ const radians = (angleDegrees * Math.PI) / HALF_TURN_DEGREES;
51
+ const alongX = rx * Math.cos(radians);
52
+ const alongY = rx * Math.sin(radians);
53
+ return (_jsx("line", { ...shared, fill: "none", stroke: ink.color, strokeWidth: SEGMENT_STROKE_WIDTH, x1: round(cx - alongX), y1: round(cy - alongY), x2: round(cx + alongX), y2: round(cy + alongY) }, group));
54
+ }
55
+ /*
56
+ * The outline sampled and mapped point by point, for the one case the exact
57
+ * projection gives up on: coordinates large enough that squaring the mapping
58
+ * overflows. Mapping each point stays linear and so survives what squaring
59
+ * does not.
60
+ */
61
+ function sampledOutline(group, ellipse, scaleX, scaleY, ink) {
62
+ const outline = ellipsePolygon(ellipse);
63
+ let path = '';
64
+ for (let index = 0; index < outline.length; index++) {
65
+ const point = outline[index];
66
+ if (point === undefined)
67
+ continue;
68
+ const px = round(scaleX.offset + point.x * scaleX.factor);
69
+ const py = round(scaleY.offset + point.y * scaleY.factor);
70
+ path += `${index === 0 ? 'M' : 'L'}${px} ${py}`;
71
+ }
72
+ return (_jsx("path", { "data-group": group, d: path === '' ? path : `${path}Z`, opacity: ink.opacity, ...fillOf(ink) }, group));
73
+ }
74
+ /* A fill of no opacity is left off the element rather than painted invisibly. */
75
+ function fillOf(ink) {
76
+ const share = ink.fillOpacity ?? SCATTER_OUTLINE_FILL_OPACITY;
77
+ if (!(share > 0))
78
+ return { fill: 'none' };
79
+ return { fill: ink.color, fillOpacity: share };
80
+ }
81
+ const round = (value) => Math.round(value * 100) / 100;
82
+ //# sourceMappingURL=scatterOutlineShape.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scatterOutlineShape.js","sourceRoot":"","sources":["../../../src/scatter/ui/scatterOutlineShape.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,107 @@
1
+ /**
2
+ * What a scatter is made of before any of it is drawn: the groups it colours
3
+ * by, the marks laid over it, and the arithmetic that turns the caller's
4
+ * numbers into the pixels three layers and one hit test have to agree on.
5
+ *
6
+ * It is kept out of the component because a plot has to know its own rectangle
7
+ * before it can hand the interaction hook a set of screen positions, and a
8
+ * hook cannot be called from inside the frame's render callback.
9
+ */
10
+ import type { ChartScale } from '../../chart/core/chartScale.ts';
11
+ import type { ChartAxisSpec } from '../../chart/ui/ChartFrame.tsx';
12
+ import type { ScreenPoints } from '../core/screenPoints.ts';
13
+ import type { ScatterPixelMark } from './scatterMarkGlyph.tsx';
14
+ import type { ScatterGroup, ScatterMarker } from './scatterPlotProps.ts';
15
+ /** Where a scatter's data lands, and the rectangle it lands in. */
16
+ export interface ScatterPlotView {
17
+ /** The rectangle gestures are taken on, ready to spread onto a `<rect>`. */
18
+ rect: {
19
+ x: number;
20
+ y: number;
21
+ width: number;
22
+ height: number;
23
+ };
24
+ /** Data to pixels, horizontally. */
25
+ toX: ChartScale;
26
+ /** Data to pixels, vertically; its `factor` is negative. */
27
+ toY: ChartScale;
28
+ /** Every point in the frame's pixels, the space a gesture arrives in. */
29
+ points: ScreenPoints;
30
+ }
31
+ /** The colour and the strength each group is drawn at. */
32
+ export interface ScatterGroupInk {
33
+ /** One colour per group, in group order. */
34
+ colors: string[];
35
+ /** How strongly each group is drawn, in the same order. */
36
+ opacities: number[];
37
+ }
38
+ /**
39
+ * The plot rectangle, the two mappings, and every point in pixels.
40
+ *
41
+ * It repeats what `ChartFrame` works out for itself, from the same inputs and
42
+ * through the same two functions, because the interaction needs the positions
43
+ * before the frame has drawn anything and a hook cannot be called from inside
44
+ * the frame's render callback. Both answers come out of `chartPlotArea`, so
45
+ * they cannot drift apart without the frame's own tests saying so.
46
+ * @param x - Horizontal coordinate of every point, in data units.
47
+ * @param y - Vertical coordinate, in the same order.
48
+ * @param width - Total width of the figure, in pixels.
49
+ * @param height - Total height.
50
+ * @param xAxis - How the horizontal axis was asked for.
51
+ * @param yAxis - How the vertical one was.
52
+ * @returns Where everything sits.
53
+ */
54
+ export declare function scatterPlotGeometry(x: ArrayLike<number>, y: ArrayLike<number>, width: number, height: number, xAxis: ChartAxisSpec, yAxis: ChartAxisSpec): ScatterPlotView;
55
+ /**
56
+ * The colour of each group and how strongly it is drawn.
57
+ *
58
+ * A muted group is drawn faint rather than dropped: the reader turned it off
59
+ * to see past it, not to change the shape of what is left, and a cloud that
60
+ * loses points as entries are switched off is a cloud nobody can compare.
61
+ * @param groups - The groups, in the order they are coloured and listed.
62
+ * @param muted - The ids drawn faint.
63
+ * @returns One colour and one opacity per group.
64
+ */
65
+ export declare function scatterGroupInk(groups: readonly ScatterGroup[] | undefined, muted: ReadonlySet<string> | undefined): ScatterGroupInk;
66
+ /**
67
+ * The markers in pixels, which is the only space the layer that draws them
68
+ * knows about.
69
+ * @param markers - The marks, in data units.
70
+ * @param toX - Data to pixels, horizontally.
71
+ * @param toY - Data to pixels, vertically.
72
+ * @returns The same marks, placed.
73
+ */
74
+ export declare function scatterPixelMarks(markers: readonly ScatterMarker[] | undefined, toX: ChartScale, toY: ChartScale): ScatterPixelMark[];
75
+ /**
76
+ * What a screen reader is told when the caller says nothing.
77
+ *
78
+ * A figure with no label at all is hidden from a reader entirely, which for a
79
+ * plot carrying the whole result is worse than a sentence nobody wrote by
80
+ * hand. The axes are named the way the plot names them, so a reader hearing
81
+ * `PC 2 against PC 1` hears the same words a sighted reader sees.
82
+ * @param xAxis - The horizontal axis.
83
+ * @param yAxis - The vertical axis.
84
+ * @param count - How many points are drawn.
85
+ * @returns The sentence.
86
+ */
87
+ export declare function scatterPlotLabel(xAxis: ChartAxisSpec, yAxis: ChartAxisSpec, count: number): string;
88
+ /**
89
+ * The ring being dragged. Dashed, and filled only faintly: it is a gesture in
90
+ * progress and not anything the data says, and a solid shape over the cloud
91
+ * would hide the very points it is about to pick.
92
+ */
93
+ export declare const LASSO_STYLE: {
94
+ readonly fill: "var(--accent)";
95
+ readonly fillOpacity: 0.08;
96
+ readonly stroke: "var(--accent)";
97
+ readonly strokeWidth: 1.5;
98
+ readonly strokeDasharray: "5 4";
99
+ readonly pointerEvents: "none";
100
+ };
101
+ /**
102
+ * How far past the dot itself the pointer still counts as aiming at it. A
103
+ * scatter is aimed at with a hand, and a three-pixel dot that answers only
104
+ * when the pointer is exactly on it reads as a plot with no hover at all.
105
+ */
106
+ export declare const SCATTER_HOVER_SLACK = 8;
107
+ //# sourceMappingURL=scatterPlotModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scatterPlotModel.d.ts","sourceRoot":"","sources":["../../../src/scatter/ui/scatterPlotModel.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEzE,mEAAmE;AACnE,MAAM,WAAW,eAAe;IAC9B,4EAA4E;IAC5E,IAAI,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9D,oCAAoC;IACpC,GAAG,EAAE,UAAU,CAAC;IAChB,4DAA4D;IAC5D,GAAG,EAAE,UAAU,CAAC;IAChB,yEAAyE;IACzE,MAAM,EAAE,YAAY,CAAC;CACtB;AAED,0DAA0D;AAC1D,MAAM,WAAW,eAAe;IAC9B,4CAA4C;IAC5C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,2DAA2D;IAC3D,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CACjC,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,EACpB,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,EACpB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,aAAa,GACnB,eAAe,CAsCjB;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,SAAS,EAC3C,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,GACrC,eAAe,CAQjB;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,SAAS,aAAa,EAAE,GAAG,SAAS,EAC7C,GAAG,EAAE,UAAU,EACf,GAAG,EAAE,UAAU,GACd,gBAAgB,EAAE,CAYpB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,MAAM,GACZ,MAAM,CAIR;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW;;;;;;;CAOd,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,IAAI,CAAC"}
@@ -0,0 +1,139 @@
1
+ /**
2
+ * What a scatter is made of before any of it is drawn: the groups it colours
3
+ * by, the marks laid over it, and the arithmetic that turns the caller's
4
+ * numbers into the pixels three layers and one hit test have to agree on.
5
+ *
6
+ * It is kept out of the component because a plot has to know its own rectangle
7
+ * before it can hand the interaction hook a set of screen positions, and a
8
+ * hook cannot be called from inside the frame's render callback.
9
+ */
10
+ import { chartAxisScale } from "../../chart/core/chartAxisScale.js";
11
+ import { chartScale } from "../../chart/core/chartScale.js";
12
+ import { chartOuterRoom, chartPlotArea } from "../../chart/ui/chartStyles.js";
13
+ /**
14
+ * The plot rectangle, the two mappings, and every point in pixels.
15
+ *
16
+ * It repeats what `ChartFrame` works out for itself, from the same inputs and
17
+ * through the same two functions, because the interaction needs the positions
18
+ * before the frame has drawn anything and a hook cannot be called from inside
19
+ * the frame's render callback. Both answers come out of `chartPlotArea`, so
20
+ * they cannot drift apart without the frame's own tests saying so.
21
+ * @param x - Horizontal coordinate of every point, in data units.
22
+ * @param y - Vertical coordinate, in the same order.
23
+ * @param width - Total width of the figure, in pixels.
24
+ * @param height - Total height.
25
+ * @param xAxis - How the horizontal axis was asked for.
26
+ * @param yAxis - How the vertical one was.
27
+ * @returns Where everything sits.
28
+ */
29
+ export function scatterPlotGeometry(x, y, width, height, xAxis, yAxis) {
30
+ const across = chartAxisScale(xAxis.domain[0], xAxis.domain[1], {
31
+ count: xAxis.tickCount,
32
+ nice: xAxis.nice,
33
+ });
34
+ const up = chartAxisScale(yAxis.domain[0], yAxis.domain[1], {
35
+ count: yAxis.tickCount,
36
+ nice: yAxis.nice,
37
+ });
38
+ const plot = chartPlotArea(width, height, {}, {
39
+ bottom: chartOuterRoom('bottom', xAxis, across),
40
+ left: chartOuterRoom('left', yAxis, up),
41
+ });
42
+ const toX = chartScale(across.domain[0], across.domain[1], plot.left, plot.right);
43
+ const toY = chartScale(up.domain[0], up.domain[1], plot.bottom, plot.top);
44
+ const total = Math.min(x.length, y.length);
45
+ const pixelX = new Float64Array(total);
46
+ const pixelY = new Float64Array(total);
47
+ for (let index = 0; index < total; index++) {
48
+ pixelX[index] = toX.offset + (x[index] ?? Number.NaN) * toX.factor;
49
+ pixelY[index] = toY.offset + (y[index] ?? Number.NaN) * toY.factor;
50
+ }
51
+ return {
52
+ rect: { x: plot.left, y: plot.top, width: plot.width, height: plot.height },
53
+ toX,
54
+ toY,
55
+ points: { x: pixelX, y: pixelY },
56
+ };
57
+ }
58
+ /**
59
+ * The colour of each group and how strongly it is drawn.
60
+ *
61
+ * A muted group is drawn faint rather than dropped: the reader turned it off
62
+ * to see past it, not to change the shape of what is left, and a cloud that
63
+ * loses points as entries are switched off is a cloud nobody can compare.
64
+ * @param groups - The groups, in the order they are coloured and listed.
65
+ * @param muted - The ids drawn faint.
66
+ * @returns One colour and one opacity per group.
67
+ */
68
+ export function scatterGroupInk(groups, muted) {
69
+ const colors = [];
70
+ const opacities = [];
71
+ for (const group of groups ?? []) {
72
+ colors.push(group.color);
73
+ opacities.push(muted?.has(group.id) === true ? MUTED_OPACITY : 1);
74
+ }
75
+ return { colors, opacities };
76
+ }
77
+ /**
78
+ * The markers in pixels, which is the only space the layer that draws them
79
+ * knows about.
80
+ * @param markers - The marks, in data units.
81
+ * @param toX - Data to pixels, horizontally.
82
+ * @param toY - Data to pixels, vertically.
83
+ * @returns The same marks, placed.
84
+ */
85
+ export function scatterPixelMarks(markers, toX, toY) {
86
+ const marks = [];
87
+ for (const marker of markers ?? []) {
88
+ marks.push({
89
+ label: marker.label,
90
+ color: marker.color,
91
+ shape: marker.shape,
92
+ x: toX.offset + marker.x * toX.factor,
93
+ y: toY.offset + marker.y * toY.factor,
94
+ });
95
+ }
96
+ return marks;
97
+ }
98
+ /**
99
+ * What a screen reader is told when the caller says nothing.
100
+ *
101
+ * A figure with no label at all is hidden from a reader entirely, which for a
102
+ * plot carrying the whole result is worse than a sentence nobody wrote by
103
+ * hand. The axes are named the way the plot names them, so a reader hearing
104
+ * `PC 2 against PC 1` hears the same words a sighted reader sees.
105
+ * @param xAxis - The horizontal axis.
106
+ * @param yAxis - The vertical axis.
107
+ * @param count - How many points are drawn.
108
+ * @returns The sentence.
109
+ */
110
+ export function scatterPlotLabel(xAxis, yAxis, count) {
111
+ const across = xAxis.label ?? 'the horizontal axis';
112
+ const up = yAxis.label ?? 'the vertical axis';
113
+ return `A scatter plot of ${count} points, ${up} against ${across}.`;
114
+ }
115
+ /**
116
+ * The ring being dragged. Dashed, and filled only faintly: it is a gesture in
117
+ * progress and not anything the data says, and a solid shape over the cloud
118
+ * would hide the very points it is about to pick.
119
+ */
120
+ export const LASSO_STYLE = {
121
+ fill: 'var(--accent)',
122
+ fillOpacity: 0.08,
123
+ stroke: 'var(--accent)',
124
+ strokeWidth: 1.5,
125
+ strokeDasharray: '5 4',
126
+ pointerEvents: 'none',
127
+ };
128
+ /**
129
+ * How far past the dot itself the pointer still counts as aiming at it. A
130
+ * scatter is aimed at with a hand, and a three-pixel dot that answers only
131
+ * when the pointer is exactly on it reads as a plot with no hover at all.
132
+ */
133
+ export const SCATTER_HOVER_SLACK = 8;
134
+ /**
135
+ * Faint enough to read as switched off at a glance, dark enough that the shape
136
+ * of the group is still there — a reader mutes a group to see past it.
137
+ */
138
+ const MUTED_OPACITY = 0.2;
139
+ //# sourceMappingURL=scatterPlotModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scatterPlotModel.js","sourceRoot":"","sources":["../../../src/scatter/ui/scatterPlotModel.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,235 @@
1
+ /**
2
+ * What a caller hands a {@link ScatterPlot}.
3
+ *
4
+ * The types live beside the component rather than inside it because the plot's
5
+ * own file would otherwise be mostly prose: a reader looking for what the
6
+ * component does should not have to scroll past twenty documented options to
7
+ * find it.
8
+ */
9
+ import type { ReactNode } from 'react';
10
+ import type { ChartViewport } from '../../chart/core/chartViewport.ts';
11
+ import type { ChartAxisSpec } from '../../chart/ui/ChartFrame.tsx';
12
+ import type { OverlayMarkShape } from '../../overlay/core/overlayMarks.ts';
13
+ import type { EllipseSize } from '../core/confidenceEllipse.ts';
14
+ import type { ScatterSelectionMode } from '../core/scatterSelection.ts';
15
+ import type { SelectionChange } from './useScatterSelection.ts';
16
+ /** One group of points on a scatter plot. */
17
+ export interface ScatterGroup {
18
+ /** A stable id, named in the legend and in a group's own callbacks. */
19
+ id: string;
20
+ /** What it is called, in the reader's words. */
21
+ label: string;
22
+ /** Its colour, normally from `chartSeriesColor`. */
23
+ color: string;
24
+ }
25
+ /** A point drawn over the cloud that is not a sample — a cluster centre. */
26
+ export interface ScatterMarker {
27
+ /** What it is called, for its own hover card. */
28
+ label: string;
29
+ /** Horizontal position, in the plot's data units. */
30
+ x: number;
31
+ /** Vertical position, in the plot's data units. */
32
+ y: number;
33
+ /** Its colour. */
34
+ color: string;
35
+ /**
36
+ * The glyph it is drawn with, which is how a reader tells it from a sample
37
+ * without reading the legend first.
38
+ * @default 'cross'
39
+ */
40
+ shape?: OverlayMarkShape;
41
+ }
42
+ /** What {@link ScatterPlot} needs. */
43
+ export interface ScatterPlotProps {
44
+ /** Horizontal coordinate of every point, in data units. */
45
+ x: ArrayLike<number>;
46
+ /** Vertical coordinate of every point, in the same order. */
47
+ y: ArrayLike<number>;
48
+ /** Total width, in pixels, from `useContainerSize`. */
49
+ width: number;
50
+ /** Total height. */
51
+ height: number;
52
+ /** The horizontal axis. */
53
+ xAxis: ChartAxisSpec;
54
+ /** The vertical axis. */
55
+ yAxis: ChartAxisSpec;
56
+ /**
57
+ * Which group each point belongs to, as an index into `groups`. A point with
58
+ * `-1`, or an index outside the range, is drawn in the muted ink and left
59
+ * out of every outline.
60
+ * @default undefined — every point is one crowd
61
+ */
62
+ groupOf?: ArrayLike<number>;
63
+ /**
64
+ * The groups, in the order they are coloured and listed.
65
+ * @default undefined
66
+ */
67
+ groups?: readonly ScatterGroup[];
68
+ /**
69
+ * Which groups are drawn faint, by id — what a legend entry switches.
70
+ * @default undefined — every group is drawn in full
71
+ */
72
+ mutedGroups?: ReadonlySet<string>;
73
+ /**
74
+ * How large the group outlines are, or `null` for none.
75
+ * @default null
76
+ */
77
+ ellipse?: EllipseSize | null;
78
+ /**
79
+ * How many points a group needs before it is outlined at all. Below it the
80
+ * shape says more about the sample than about the group.
81
+ * @default 3
82
+ */
83
+ ellipseMinimumPoints?: number;
84
+ /**
85
+ * How solid each group outline is; `0` draws nothing at all, since the fill
86
+ * is the whole outline. Turn it down when many groups overlap, since the
87
+ * fills compound where two of them cross.
88
+ * @default SCATTER_OUTLINE_FILL_OPACITY
89
+ */
90
+ ellipseFillOpacity?: number;
91
+ /**
92
+ * Whether each group's average is marked with a cross.
93
+ * @default false
94
+ */
95
+ showGroupMeans?: boolean;
96
+ /**
97
+ * Points drawn over the cloud that are not samples.
98
+ * @default undefined
99
+ */
100
+ markers?: readonly ScatterMarker[];
101
+ /**
102
+ * Radius of a dot, in pixels.
103
+ * @default 3.5
104
+ */
105
+ pointRadius?: number;
106
+ /**
107
+ * The index from which points are drawn as outlines rather than filled.
108
+ *
109
+ * It is how a sample the model was built from is told from one placed into
110
+ * it afterwards: the first kind helped choose where the axes point and is
111
+ * bound to sit somewhere reasonable, while the second can land anywhere.
112
+ * Points before it are filled, points from it on are hollow.
113
+ * @default undefined — every point is filled
114
+ */
115
+ outlinedFrom?: number;
116
+ /**
117
+ * What each point is called, written beside its own dot. A point whose entry
118
+ * is `undefined` is left unnamed, so a caller may label the twenty samples
119
+ * it cares about and leave the crowd alone.
120
+ *
121
+ * Names are placed so that no two overlap: one that cannot be fitted near
122
+ * its own dot is moved aside with a line back to it, and one with nowhere
123
+ * left to go is dropped rather than written over another.
124
+ * @default undefined — no point is named
125
+ */
126
+ pointLabels?: ReadonlyArray<string | undefined>;
127
+ /**
128
+ * Whether each group's name is written once, over the middle of that group.
129
+ * It needs `groupOf` and `groups`, since it is their names it writes. They
130
+ * are placed like `pointLabels`, biggest group first, so the name that
131
+ * speaks for the most samples keeps the middle of its own crowd.
132
+ * @default false
133
+ */
134
+ showGroupLabels?: boolean;
135
+ /**
136
+ * The selected rows. Present, the caller owns the selection; the outline
137
+ * drawn while a lasso is being dragged stays inside the component either
138
+ * way, so a controlled parent is never asked to re-render sixty times a
139
+ * second.
140
+ * @default undefined — the plot keeps its own
141
+ */
142
+ selected?: readonly number[];
143
+ /**
144
+ * The rows selected before the reader touches anything.
145
+ * @default undefined — nothing is selected
146
+ */
147
+ defaultSelected?: readonly number[];
148
+ /**
149
+ * Called when a lasso is released, a dot is clicked, or the keyboard commits
150
+ * — never while a lasso is being drawn.
151
+ * @default undefined
152
+ */
153
+ onSelectionChange?: (change: SelectionChange) => void;
154
+ /**
155
+ * What a drag does to the selection when no modifier is held. Shift always
156
+ * adds and Alt always removes, whatever this says.
157
+ * @default 'replace'
158
+ */
159
+ selectMode?: ScatterSelectionMode;
160
+ /**
161
+ * Called with the row under the pointer, or `-1` when the pointer is on
162
+ * none.
163
+ * @default undefined
164
+ */
165
+ onHoverChange?: (index: number) => void;
166
+ /**
167
+ * Called with the row whose card the reader pinned, or `-1`.
168
+ * @default undefined
169
+ */
170
+ onPinChange?: (index: number) => void;
171
+ /**
172
+ * Called when a lasso starts being drawn and again when it ends, and never
173
+ * in between.
174
+ *
175
+ * The floating chrome reads the drag from the overlay surface instead, which
176
+ * costs the caller nothing. This is for the piece of chrome that has to say
177
+ * what letting go will do while sitting *outside* the plot — a caption in the
178
+ * flow beneath it, which cannot reach that surface and must not cover the
179
+ * axis title to get at it.
180
+ * @default undefined
181
+ */
182
+ onLassoChange?: (drawing: boolean) => void;
183
+ /**
184
+ * Whether a drag on a touch screen draws a lasso rather than scrolling the
185
+ * page. Off, because a chart that traps the page scroll on a phone is a
186
+ * worse fault than a missing gesture.
187
+ * @default false
188
+ */
189
+ touchLasso?: boolean;
190
+ /**
191
+ * The frame the plot is zoomed into, in data units. Present, the caller owns
192
+ * the zoom; `null` shows the whole of both axes. A frame reaching outside
193
+ * the axes is pulled back inside them — the reader can never zoom out past
194
+ * the picture they started with.
195
+ * @default undefined — the plot keeps its own frame
196
+ */
197
+ viewport?: ChartViewport | null;
198
+ /**
199
+ * Called with the frame a wheel or a double click asks for, and with `null`
200
+ * when it has reached back out to the whole of the data.
201
+ * @default undefined
202
+ */
203
+ onViewportChange?: (viewport: ChartViewport | null) => void;
204
+ /**
205
+ * Whether the wheel zooms about the pointer, once the pointer has rested
206
+ * over the plot for `wheelZoomDelay`. Off, because a figure set in a page of
207
+ * prose must not take the reader's scroll on their way past it; a figure
208
+ * given a panel of its own should turn it on.
209
+ * @default false
210
+ */
211
+ wheelZoom?: boolean;
212
+ /**
213
+ * How long the pointer has to rest over the plot before the wheel is caught,
214
+ * in milliseconds.
215
+ * @default CHART_WHEEL_DWELL
216
+ */
217
+ wheelZoomDelay?: number;
218
+ /**
219
+ * What floats over the plot — an `OverlayBar`, a legend, a caption, a
220
+ * readout.
221
+ * @default undefined
222
+ */
223
+ overlay?: ReactNode;
224
+ /**
225
+ * What a screen reader is told the plot shows.
226
+ * @default a sentence built from the two axis titles and the point count
227
+ */
228
+ label?: string;
229
+ /**
230
+ * Value of the `data-testid` attribute of the wrapper.
231
+ * @default undefined
232
+ */
233
+ testId?: string;
234
+ }
235
+ //# sourceMappingURL=scatterPlotProps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scatterPlotProps.d.ts","sourceRoot":"","sources":["../../../src/scatter/ui/scatterPlotProps.ts"],"names":[],"mappings":"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"}