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,51 @@
1
+ /**
2
+ * Eight hues that stay apart under deuteranopia, protanopia and tritanopia,
3
+ * and that keep their order when a figure is printed in grey.
4
+ *
5
+ * Okabe and Ito's set with black dropped and yellow held back to seventh,
6
+ * because yellow disappears as a one-and-a-half pixel line on a white ground;
7
+ * the eighth is a neutral dark, for the series past the ones anybody reads.
8
+ */
9
+ export const CHART_SERIES_COLORS = [
10
+ '#0072b2', // blue
11
+ '#d55e00', // vermillion
12
+ '#009e73', // bluish green
13
+ '#cc79a7', // reddish purple
14
+ '#e69f00', // orange
15
+ '#56b4e9', // sky blue
16
+ '#f0e442', // yellow
17
+ '#4d4d4d', // neutral dark
18
+ ];
19
+ /**
20
+ * The colour of the nth series of a role, cycling once the palette runs out.
21
+ *
22
+ * A caller appending a series must never repeat a colour already on the chart,
23
+ * so pass the count of series already drawn rather than a stable identifier.
24
+ * @param index - Which series, from 0. A negative or non-finite index gives the first colour.
25
+ * @param role - What the colour stands for. Defaults to `'group'`.
26
+ * @returns The colour, as a six-digit hex string.
27
+ */
28
+ export function chartSeriesColor(index, role = 'group') {
29
+ const order = role === 'component' ? COMPONENT_ORDER : GROUP_ORDER;
30
+ const step = Number.isFinite(index) && index > 0 ? Math.floor(index) : 0;
31
+ const position = order[step % order.length] ?? 0;
32
+ return CHART_SERIES_COLORS[position] ?? DEFAULT_SERIES_COLOR;
33
+ }
34
+ /**
35
+ * Where each group in turn reads the palette.
36
+ *
37
+ * Blue, vermillion, green and purple first: the four that hold their distance
38
+ * from one another under every deficiency at once, and the four a legend of a
39
+ * three or four species dataset will actually be read with. Yellow and the
40
+ * neutral come next and the two colours the components have claimed come last,
41
+ * so a chart has to reach eight groups before the roles collide.
42
+ */
43
+ const GROUP_ORDER = [0, 1, 2, 3, 6, 7, 4, 5];
44
+ /**
45
+ * Where each component in turn reads the palette: the same eight colours
46
+ * entered from the two the groups leave alone longest, orange and sky blue.
47
+ */
48
+ const COMPONENT_ORDER = [4, 5, 7, 6, 0, 1, 2, 3];
49
+ /** The blue a first group takes, and the answer when the palette is read past its end. */
50
+ const DEFAULT_SERIES_COLOR = '#0072b2';
51
+ //# sourceMappingURL=chartPalette.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chartPalette.js","sourceRoot":"","sources":["../../../src/chart/core/chartPalette.ts"],"names":[],"mappings":"AAcA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAsB;IACpD,SAAS,EAAE,OAAO;IAClB,SAAS,EAAE,aAAa;IACxB,SAAS,EAAE,eAAe;IAC1B,SAAS,EAAE,iBAAiB;IAC5B,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,eAAe;CAC3B,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAa,EACb,OAAuB,OAAO;IAE9B,MAAM,KAAK,GAAG,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC;IACnE,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzE,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjD,OAAO,mBAAmB,CAAC,QAAQ,CAAC,IAAI,oBAAoB,CAAC;AAC/D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,GAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAEhE;;;GAGG;AACH,MAAM,eAAe,GAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAEpE,0FAA0F;AAC1F,MAAM,oBAAoB,GAAG,SAAS,CAAC"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * A data-to-pixel mapping, held as the two numbers a multiply-add needs.
3
+ *
4
+ * Deliberately not a callable: a chart converts one value per point per axis,
5
+ * so a closure would be one non-inlinable call per mark. The two fields are
6
+ * built once per axis per render and the inner loop writes the arithmetic out
7
+ * as `offset + value * factor`.
8
+ */
9
+ export interface ChartScale {
10
+ /** The pixel the data value `0` lands on. */
11
+ readonly offset: number;
12
+ /** Pixels per unit of data. Negative for a y axis, which grows upward. */
13
+ readonly factor: number;
14
+ }
15
+ /**
16
+ * The mapping that puts `domainMin` at `rangeMin` and `domainMax` at `rangeMax`.
17
+ *
18
+ * For a y axis pass the plot's bottom as `rangeMin` and its top as `rangeMax`,
19
+ * which is what makes `factor` negative and what makes an ellipse projected
20
+ * through it come out the right way up with no separate flip.
21
+ * @param domainMin - The data value at the low end of the range.
22
+ * @param domainMax - The data value at the high end.
23
+ * @param rangeMin - The pixel `domainMin` maps to.
24
+ * @param rangeMax - The pixel `domainMax` maps to.
25
+ * @returns The mapping. A zero-width or non-finite domain gives a `factor` of
26
+ * zero, which pins every value to the middle of the range so that a constant
27
+ * column still draws instead of vanishing.
28
+ */
29
+ export declare function chartScale(domainMin: number, domainMax: number, rangeMin: number, rangeMax: number): ChartScale;
30
+ /**
31
+ * Where one data value falls, in pixels.
32
+ *
33
+ * For a single conversion — a tick, a pointer, a group's mean. Inside a loop
34
+ * over points, write the multiply-add directly.
35
+ * @param scale - The mapping.
36
+ * @param value - The data value.
37
+ * @returns The pixel.
38
+ */
39
+ export declare function chartPixel(scale: ChartScale, value: number): number;
40
+ /**
41
+ * What data value a pixel stands for — the pointer's direction.
42
+ * @param scale - The mapping.
43
+ * @param pixel - The pixel.
44
+ * @returns The data value, or `offset` when the scale is flat. Zero comes
45
+ * back unsigned, so a readout at the origin of an inverted axis never reads
46
+ * `-0`.
47
+ */
48
+ export declare function chartValue(scale: ChartScale, pixel: number): number;
49
+ //# sourceMappingURL=chartScale.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chartScale.d.ts","sourceRoot":"","sources":["../../../src/chart/core/chartScale.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;IACzB,6CAA6C;IAC7C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,0EAA0E;IAC1E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CACxB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,UAAU,CASZ;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAGnE;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAInE"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * The mapping that puts `domainMin` at `rangeMin` and `domainMax` at `rangeMax`.
3
+ *
4
+ * For a y axis pass the plot's bottom as `rangeMin` and its top as `rangeMax`,
5
+ * which is what makes `factor` negative and what makes an ellipse projected
6
+ * through it come out the right way up with no separate flip.
7
+ * @param domainMin - The data value at the low end of the range.
8
+ * @param domainMax - The data value at the high end.
9
+ * @param rangeMin - The pixel `domainMin` maps to.
10
+ * @param rangeMax - The pixel `domainMax` maps to.
11
+ * @returns The mapping. A zero-width or non-finite domain gives a `factor` of
12
+ * zero, which pins every value to the middle of the range so that a constant
13
+ * column still draws instead of vanishing.
14
+ */
15
+ export function chartScale(domainMin, domainMax, rangeMin, rangeMax) {
16
+ const span = domainMax - domainMin;
17
+ const reach = rangeMax - rangeMin;
18
+ if (span === 0 || !Number.isFinite(span) || !Number.isFinite(reach)) {
19
+ const middle = (rangeMin + rangeMax) / 2;
20
+ return { offset: Number.isFinite(middle) ? middle : 0, factor: 0 };
21
+ }
22
+ const factor = reach / span;
23
+ return { offset: rangeMin - domainMin * factor, factor };
24
+ }
25
+ /**
26
+ * Where one data value falls, in pixels.
27
+ *
28
+ * For a single conversion — a tick, a pointer, a group's mean. Inside a loop
29
+ * over points, write the multiply-add directly.
30
+ * @param scale - The mapping.
31
+ * @param value - The data value.
32
+ * @returns The pixel.
33
+ */
34
+ export function chartPixel(scale, value) {
35
+ if (scale.factor === 0)
36
+ return scale.offset;
37
+ return scale.offset + value * scale.factor;
38
+ }
39
+ /**
40
+ * What data value a pixel stands for — the pointer's direction.
41
+ * @param scale - The mapping.
42
+ * @param pixel - The pixel.
43
+ * @returns The data value, or `offset` when the scale is flat. Zero comes
44
+ * back unsigned, so a readout at the origin of an inverted axis never reads
45
+ * `-0`.
46
+ */
47
+ export function chartValue(scale, pixel) {
48
+ if (scale.factor === 0)
49
+ return scale.offset;
50
+ const value = (pixel - scale.offset) / scale.factor;
51
+ return value === 0 ? 0 : value;
52
+ }
53
+ //# sourceMappingURL=chartScale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chartScale.js","sourceRoot":"","sources":["../../../src/chart/core/chartScale.ts"],"names":[],"mappings":"AAeA;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,UAAU,CACxB,SAAiB,EACjB,SAAiB,EACjB,QAAgB,EAChB,QAAgB;IAEhB,MAAM,IAAI,GAAG,SAAS,GAAG,SAAS,CAAC;IACnC,MAAM,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAClC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpE,MAAM,MAAM,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IACrE,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,EAAE,MAAM,EAAE,CAAC;AAC3D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CAAC,KAAiB,EAAE,KAAa;IACzD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,MAAM,CAAC;IAC5C,OAAO,KAAK,CAAC,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;AAC7C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,KAAiB,EAAE,KAAa;IACzD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,MAAM,CAAC;IAC5C,MAAM,KAAK,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IACpD,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACjC,CAAC"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * The frame a chart is zoomed into, and the arithmetic that moves it.
3
+ *
4
+ * A zoom here is a domain and never a transform: the frame hands the two axes
5
+ * a narrower range and everything downstream — the ticks, the outlines, the
6
+ * hit tests, the labels — is computed from it exactly as it is computed
7
+ * unzoomed. Nothing has to be told a zoom happened, which is the whole reason
8
+ * it is done this way, and it is why all of it is arithmetic that can be
9
+ * checked without rendering anything.
10
+ */
11
+ /** The range each axis of a chart covers, when it is not covering all of it. */
12
+ export interface ChartViewport {
13
+ /** What the horizontal axis covers, ascending. */
14
+ readonly x: readonly [number, number];
15
+ /** What the vertical axis covers. */
16
+ readonly y: readonly [number, number];
17
+ }
18
+ /**
19
+ * The smallest share of an axis's full range a viewport may cover, which caps
20
+ * how far in the reader can go. Five hundred times is past the point where the
21
+ * dots left on screen still stand for anything.
22
+ */
23
+ export declare const CHART_SMALLEST_ZOOM = 0.002;
24
+ /** How much one pixel of wheel travel zooms by, as a share. */
25
+ export declare const CHART_WHEEL_SPEED = 0.0015;
26
+ /** Pixels a wheel notch is worth where the browser reports lines. */
27
+ export declare const CHART_WHEEL_LINE = 16;
28
+ /** Pixels it is worth where the browser reports pages. */
29
+ export declare const CHART_WHEEL_PAGE = 400;
30
+ /** The most one wheel event may zoom by, so a stray burst cannot jump. */
31
+ export declare const CHART_WHEEL_LARGEST = 4;
32
+ /**
33
+ * The viewport a zoom about one point leaves behind.
34
+ *
35
+ * The point under the anchor stays where it is, which is what makes the
36
+ * gesture read as pulling the picture rather than nudging a slider: the reader
37
+ * aims at the crowd they want and it grows around the pointer.
38
+ * @param full - What the axes cover unzoomed, which the result never leaves.
39
+ * @param current - The viewport now, or `null` when the chart is showing all of it.
40
+ * @param anchorX - The horizontal value to hold still, in data units.
41
+ * @param anchorY - The vertical one.
42
+ * @param factor - How much wider the frame becomes; below one it narrows.
43
+ * @returns The new viewport, or `null` once it covers everything again — so a
44
+ * reader who zooms back out gets the unzoomed chart back rather than a frame
45
+ * that merely looks like it.
46
+ */
47
+ export declare function chartZoomViewport(full: ChartViewport, current: ChartViewport | null, anchorX: number, anchorY: number, factor: number): ChartViewport | null;
48
+ /**
49
+ * A frame the reader asked for, made to fit: never narrower than the zoom cap,
50
+ * never reaching outside the data, and never wider than the whole of it.
51
+ *
52
+ * It is what "zoom to selection" goes through, so a lasso around one sample
53
+ * lands at the same depth as a wheel held down over it rather than at the
54
+ * bottom of a well.
55
+ * @param full - What the axes cover unzoomed.
56
+ * @param wanted - The frame asked for.
57
+ * @returns The frame that will be drawn, or `null` when it covers everything.
58
+ */
59
+ export declare function chartClampViewport(full: ChartViewport, wanted: ChartViewport): ChartViewport | null;
60
+ /**
61
+ * One axis zoomed about one value, clamped to its full range.
62
+ *
63
+ * A frame that would reach past an end is slid back inside rather than
64
+ * squashed, so the reader keeps the magnification they asked for and the cloud
65
+ * cannot be pushed off the edge and lost.
66
+ * @param full - What the axis covers unzoomed.
67
+ * @param current - What it covers now.
68
+ * @param anchor - The value to hold still, in data units.
69
+ * @param factor - How much wider the range becomes.
70
+ * @returns The new range, ascending, or `full` when the zoom has reached back out to it.
71
+ */
72
+ export declare function chartZoomDomain(full: readonly [number, number], current: readonly [number, number], anchor: number, factor: number): readonly [number, number];
73
+ /**
74
+ * How much a wheel event zooms by.
75
+ *
76
+ * The travel is normalised first, because the same notch of the same wheel
77
+ * arrives as pixels in one browser and as lines in another, and a zoom that
78
+ * moves three times as fast in Firefox is a fault the reader blames on the
79
+ * figure. One event is capped: a trackpad flick can deliver a whole page of
80
+ * travel at once, and landing four hundred times out is not recoverable by
81
+ * feel.
82
+ * @param delta - The event's `deltaY`; positive scrolls away and zooms out.
83
+ * @param mode - Its `deltaMode`: 0 pixels, 1 lines, 2 pages. Defaults to `0`.
84
+ * @param speed - Share zoomed per pixel of travel. Defaults to {@link CHART_WHEEL_SPEED}.
85
+ * @returns The factor to hand {@link chartZoomViewport}; `1` for an event that says nothing.
86
+ */
87
+ export declare function chartWheelFactor(delta: number, mode?: number, speed?: number): number;
88
+ //# sourceMappingURL=chartViewport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chartViewport.d.ts","sourceRoot":"","sources":["../../../src/chart/core/chartViewport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,gFAAgF;AAChF,MAAM,WAAW,aAAa;IAC5B,kDAAkD;IAClD,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,qCAAqC;IACrC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AAEzC,+DAA+D;AAC/D,eAAO,MAAM,iBAAiB,SAAS,CAAC;AAExC,qEAAqE;AACrE,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAEnC,0DAA0D;AAC1D,eAAO,MAAM,gBAAgB,MAAM,CAAC;AAEpC,0EAA0E;AAC1E,eAAO,MAAM,mBAAmB,IAAI,CAAC;AAErC;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,aAAa,GAAG,IAAI,EAC7B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACb,aAAa,GAAG,IAAI,CAMtB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,aAAa,GACpB,aAAa,GAAG,IAAI,CAQtB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,OAAO,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAgB3B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EACb,IAAI,SAAI,EACR,KAAK,SAAoB,GACxB,MAAM,CAUR"}
@@ -0,0 +1,164 @@
1
+ /**
2
+ * The frame a chart is zoomed into, and the arithmetic that moves it.
3
+ *
4
+ * A zoom here is a domain and never a transform: the frame hands the two axes
5
+ * a narrower range and everything downstream — the ticks, the outlines, the
6
+ * hit tests, the labels — is computed from it exactly as it is computed
7
+ * unzoomed. Nothing has to be told a zoom happened, which is the whole reason
8
+ * it is done this way, and it is why all of it is arithmetic that can be
9
+ * checked without rendering anything.
10
+ */
11
+ /**
12
+ * The smallest share of an axis's full range a viewport may cover, which caps
13
+ * how far in the reader can go. Five hundred times is past the point where the
14
+ * dots left on screen still stand for anything.
15
+ */
16
+ export const CHART_SMALLEST_ZOOM = 0.002;
17
+ /** How much one pixel of wheel travel zooms by, as a share. */
18
+ export const CHART_WHEEL_SPEED = 0.0015;
19
+ /** Pixels a wheel notch is worth where the browser reports lines. */
20
+ export const CHART_WHEEL_LINE = 16;
21
+ /** Pixels it is worth where the browser reports pages. */
22
+ export const CHART_WHEEL_PAGE = 400;
23
+ /** The most one wheel event may zoom by, so a stray burst cannot jump. */
24
+ export const CHART_WHEEL_LARGEST = 4;
25
+ /**
26
+ * The viewport a zoom about one point leaves behind.
27
+ *
28
+ * The point under the anchor stays where it is, which is what makes the
29
+ * gesture read as pulling the picture rather than nudging a slider: the reader
30
+ * aims at the crowd they want and it grows around the pointer.
31
+ * @param full - What the axes cover unzoomed, which the result never leaves.
32
+ * @param current - The viewport now, or `null` when the chart is showing all of it.
33
+ * @param anchorX - The horizontal value to hold still, in data units.
34
+ * @param anchorY - The vertical one.
35
+ * @param factor - How much wider the frame becomes; below one it narrows.
36
+ * @returns The new viewport, or `null` once it covers everything again — so a
37
+ * reader who zooms back out gets the unzoomed chart back rather than a frame
38
+ * that merely looks like it.
39
+ */
40
+ export function chartZoomViewport(full, current, anchorX, anchorY, factor) {
41
+ const scale = Number.isFinite(factor) && factor > 0 ? factor : 1;
42
+ const x = chartZoomDomain(full.x, current?.x ?? full.x, anchorX, scale);
43
+ const y = chartZoomDomain(full.y, current?.y ?? full.y, anchorY, scale);
44
+ if (sameDomain(x, full.x) && sameDomain(y, full.y))
45
+ return null;
46
+ return { x, y };
47
+ }
48
+ /**
49
+ * A frame the reader asked for, made to fit: never narrower than the zoom cap,
50
+ * never reaching outside the data, and never wider than the whole of it.
51
+ *
52
+ * It is what "zoom to selection" goes through, so a lasso around one sample
53
+ * lands at the same depth as a wheel held down over it rather than at the
54
+ * bottom of a well.
55
+ * @param full - What the axes cover unzoomed.
56
+ * @param wanted - The frame asked for.
57
+ * @returns The frame that will be drawn, or `null` when it covers everything.
58
+ */
59
+ export function chartClampViewport(full, wanted) {
60
+ return chartZoomViewport(full, wanted, middleOf(wanted.x), middleOf(wanted.y), 1);
61
+ }
62
+ /**
63
+ * One axis zoomed about one value, clamped to its full range.
64
+ *
65
+ * A frame that would reach past an end is slid back inside rather than
66
+ * squashed, so the reader keeps the magnification they asked for and the cloud
67
+ * cannot be pushed off the edge and lost.
68
+ * @param full - What the axis covers unzoomed.
69
+ * @param current - What it covers now.
70
+ * @param anchor - The value to hold still, in data units.
71
+ * @param factor - How much wider the range becomes.
72
+ * @returns The new range, ascending, or `full` when the zoom has reached back out to it.
73
+ */
74
+ export function chartZoomDomain(full, current, anchor, factor) {
75
+ const bounds = ascending(full);
76
+ const reach = bounds[1] - bounds[0];
77
+ if (!(reach > 0) || !Number.isFinite(reach))
78
+ return full;
79
+ const shown = ascending(current);
80
+ const span = fittedSpan((shown[1] - shown[0]) * factor, reach);
81
+ if (span === reach)
82
+ return full;
83
+ const share = anchorShare(anchor, shown);
84
+ const wanted = Number.isFinite(anchor) ? anchor - share * span : shown[0];
85
+ const start = Math.min(Math.max(wanted, bounds[0]), Math.max(bounds[1] - span, bounds[0]));
86
+ return [start, start + span];
87
+ }
88
+ /**
89
+ * How much a wheel event zooms by.
90
+ *
91
+ * The travel is normalised first, because the same notch of the same wheel
92
+ * arrives as pixels in one browser and as lines in another, and a zoom that
93
+ * moves three times as fast in Firefox is a fault the reader blames on the
94
+ * figure. One event is capped: a trackpad flick can deliver a whole page of
95
+ * travel at once, and landing four hundred times out is not recoverable by
96
+ * feel.
97
+ * @param delta - The event's `deltaY`; positive scrolls away and zooms out.
98
+ * @param mode - Its `deltaMode`: 0 pixels, 1 lines, 2 pages. Defaults to `0`.
99
+ * @param speed - Share zoomed per pixel of travel. Defaults to {@link CHART_WHEEL_SPEED}.
100
+ * @returns The factor to hand {@link chartZoomViewport}; `1` for an event that says nothing.
101
+ */
102
+ export function chartWheelFactor(delta, mode = 0, speed = CHART_WHEEL_SPEED) {
103
+ if (!Number.isFinite(delta) || delta === 0)
104
+ return 1;
105
+ const pixels = delta * wheelPixels(mode);
106
+ const rate = Number.isFinite(speed) && speed > 0 ? speed : CHART_WHEEL_SPEED;
107
+ const factor = Math.exp(pixels * rate);
108
+ if (!Number.isFinite(factor))
109
+ return delta > 0 ? CHART_WHEEL_LARGEST : 1;
110
+ return Math.min(CHART_WHEEL_LARGEST, Math.max(1 / CHART_WHEEL_LARGEST, factor));
111
+ }
112
+ function wheelPixels(mode) {
113
+ if (mode === 1)
114
+ return CHART_WHEEL_LINE;
115
+ if (mode === 2)
116
+ return CHART_WHEEL_PAGE;
117
+ return 1;
118
+ }
119
+ /**
120
+ * The span a frame ends up with: at least the zoom cap, at most the whole
121
+ * range.
122
+ * @param span - The span asked for.
123
+ * @param reach - The full range's span.
124
+ * @returns The span to draw. A span of nothing is drawn at the cap, since
125
+ * framing one sample means going as far in as the chart goes rather than
126
+ * giving up and showing everything; one that is not a number does show
127
+ * everything, because nothing better can be said about it.
128
+ */
129
+ function fittedSpan(span, reach) {
130
+ const smallest = reach * CHART_SMALLEST_ZOOM;
131
+ if (!Number.isFinite(span))
132
+ return reach;
133
+ if (span <= 0)
134
+ return smallest;
135
+ if (span >= reach)
136
+ return reach;
137
+ return Math.max(span, smallest);
138
+ }
139
+ /**
140
+ * Where the anchor sits across the frame it is anchoring, from 0 to 1.
141
+ * @param anchor - The value held still.
142
+ * @param shown - The frame it sits in, ascending.
143
+ * @returns The share; the middle of a frame with no width, which is the only
144
+ * place an anchor can be said to sit on one.
145
+ */
146
+ function anchorShare(anchor, shown) {
147
+ const span = shown[1] - shown[0];
148
+ if (!(span > 0) || !Number.isFinite(span))
149
+ return 0.5;
150
+ const share = (anchor - shown[0]) / span;
151
+ if (!Number.isFinite(share))
152
+ return 0.5;
153
+ return Math.min(1, Math.max(0, share));
154
+ }
155
+ function middleOf(domain) {
156
+ return (domain[0] + domain[1]) / 2;
157
+ }
158
+ function sameDomain(one, other) {
159
+ return one[0] === other[0] && one[1] === other[1];
160
+ }
161
+ function ascending(domain) {
162
+ return domain[0] <= domain[1] ? domain : [domain[1], domain[0]];
163
+ }
164
+ //# sourceMappingURL=chartViewport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chartViewport.js","sourceRoot":"","sources":["../../../src/chart/core/chartViewport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAUH;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AAEzC,+DAA+D;AAC/D,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAExC,qEAAqE;AACrE,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAEnC,0DAA0D;AAC1D,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAEpC,0EAA0E;AAC1E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAErC;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAAmB,EACnB,OAA6B,EAC7B,OAAe,EACf,OAAe,EACf,MAAc;IAEd,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACxE,MAAM,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACxE,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAChE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAClB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAChC,IAAmB,EACnB,MAAqB;IAErB,OAAO,iBAAiB,CACtB,IAAI,EACJ,MAAM,EACN,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAClB,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAClB,CAAC,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAC7B,IAA+B,EAC/B,OAAkC,EAClC,MAAc,EACd,MAAc;IAEd,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEzD,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/D,IAAI,IAAI,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IAEhC,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC1E,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAC3B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CACtC,CAAC;IACF,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAa,EACb,IAAI,GAAG,CAAC,EACR,KAAK,GAAG,iBAAiB;IAEzB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC;IAC7E,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACvC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;IACzE,OAAO,IAAI,CAAC,GAAG,CACb,mBAAmB,EACnB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,mBAAmB,EAAE,MAAM,CAAC,CAC1C,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,IAAI,IAAI,KAAK,CAAC;QAAE,OAAO,gBAAgB,CAAC;IACxC,IAAI,IAAI,KAAK,CAAC;QAAE,OAAO,gBAAgB,CAAC;IACxC,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,UAAU,CAAC,IAAY,EAAE,KAAa;IAC7C,MAAM,QAAQ,GAAG,KAAK,GAAG,mBAAmB,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACzC,IAAI,IAAI,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC/B,IAAI,IAAI,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC;IAChC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,WAAW,CAAC,MAAc,EAAE,KAAgC;IACnE,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACjC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC;IACtD,MAAM,KAAK,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACzC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC;IACxC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,QAAQ,CAAC,MAAiC;IACjD,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,UAAU,CACjB,GAA8B,EAC9B,KAAgC;IAEhC,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,SAAS,CAChB,MAAiC;IAEjC,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * The arithmetic a figure is drawn from: a matrix read where it stands, the
3
+ * two numbers that turn a value into a pixel, round tick values, and the
4
+ * colours a series takes.
5
+ *
6
+ * None of it knows what a chart is. That is deliberate — the same scale places
7
+ * a principal component, a wavenumber and a cluster centre, and a site that
8
+ * only wants round numbers for its own canvas can have them without loading
9
+ * React.
10
+ */
11
+ export type { ChartAxisScale, ChartAxisScaleOptions, } from './chartAxisScale.ts';
12
+ export { chartAxisScale, chartExponentSuffix, chartNiceDomain, chartTickDecimals, chartTickLabel, } from './chartAxisScale.ts';
13
+ export type { ChartBand, ChartBandOptions } from './chartBand.ts';
14
+ export { chartBand, chartBandCenter, chartBandIndexAt } from './chartBand.ts';
15
+ export type { ChartBins } from './chartBins.ts';
16
+ export { chartBinCounts } from './chartBins.ts';
17
+ export type { ChartColumnExtentOptions, ChartExtent, ChartValuesExtentOptions, } from './chartExtent.ts';
18
+ export { EMPTY_EXTENT, chartColumnExtent, chartMergeExtents, chartPadExtent, chartValuesExtent, } from './chartExtent.ts';
19
+ export type { ChartAxisTitleOptions } from './chartLabels.ts';
20
+ export { chartAxisTitle, chartShare } from './chartLabels.ts';
21
+ export type { ChartColorRole } from './chartPalette.ts';
22
+ export { CHART_SERIES_COLORS, chartSeriesColor } from './chartPalette.ts';
23
+ export type { ChartScale } from './chartScale.ts';
24
+ export { chartPixel, chartScale, chartValue } from './chartScale.ts';
25
+ export type { ChartViewport } from './chartViewport.ts';
26
+ export { CHART_SMALLEST_ZOOM, CHART_WHEEL_LARGEST, CHART_WHEEL_LINE, CHART_WHEEL_PAGE, CHART_WHEEL_SPEED, chartClampViewport, chartWheelFactor, chartZoomDomain, chartZoomViewport, } from './chartViewport.ts';
27
+ export type { MatrixLike } from './matrix.ts';
28
+ export { mappedMatrix, rowMatrix, stackedMatrix } from './matrix.ts';
29
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/chart/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,YAAY,EACV,cAAc,EACd,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,cAAc,GACf,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,YAAY,EACV,wBAAwB,EACxB,WAAW,EACX,wBAAwB,GACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9D,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACrE,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * The arithmetic a figure is drawn from: a matrix read where it stands, the
3
+ * two numbers that turn a value into a pixel, round tick values, and the
4
+ * colours a series takes.
5
+ *
6
+ * None of it knows what a chart is. That is deliberate — the same scale places
7
+ * a principal component, a wavenumber and a cluster centre, and a site that
8
+ * only wants round numbers for its own canvas can have them without loading
9
+ * React.
10
+ */
11
+ export { chartAxisScale, chartExponentSuffix, chartNiceDomain, chartTickDecimals, chartTickLabel, } from "./chartAxisScale.js";
12
+ export { chartBand, chartBandCenter, chartBandIndexAt } from "./chartBand.js";
13
+ export { chartBinCounts } from "./chartBins.js";
14
+ export { EMPTY_EXTENT, chartColumnExtent, chartMergeExtents, chartPadExtent, chartValuesExtent, } from "./chartExtent.js";
15
+ export { chartAxisTitle, chartShare } from "./chartLabels.js";
16
+ export { CHART_SERIES_COLORS, chartSeriesColor } from "./chartPalette.js";
17
+ export { chartPixel, chartScale, chartValue } from "./chartScale.js";
18
+ export { CHART_SMALLEST_ZOOM, CHART_WHEEL_LARGEST, CHART_WHEEL_LINE, CHART_WHEEL_PAGE, CHART_WHEEL_SPEED, chartClampViewport, chartWheelFactor, chartZoomDomain, chartZoomViewport, } from "./chartViewport.js";
19
+ export { mappedMatrix, rowMatrix, stackedMatrix } from "./matrix.js";
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/chart/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAE9E,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAMhD,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9D,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAErE,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Read-only view of a numeric matrix, satisfied by `ml-matrix`'s `Matrix`
3
+ * without a cast.
4
+ *
5
+ * Only `get` is required, because it is the cheapest read there is — 1.25 ns a
6
+ * cell against 12.2 ns through `to2DArray()`, which reallocates every row on
7
+ * every call. Nothing in this package ever copies a matrix out.
8
+ */
9
+ export interface MatrixLike {
10
+ /** Number of rows. */
11
+ readonly rows: number;
12
+ /** Number of columns. */
13
+ readonly columns: number;
14
+ /**
15
+ * The value at a position.
16
+ * @param rowIndex - Which row, from 0.
17
+ * @param columnIndex - Which column, from 0.
18
+ * @returns The value, or `NaN` when either index is outside the matrix.
19
+ */
20
+ get: (rowIndex: number, columnIndex: number) => number;
21
+ }
22
+ /**
23
+ * A plain array of rows read as a matrix.
24
+ *
25
+ * The door every method that is not `ml-pca` comes through: a UMAP embedding
26
+ * or a k-means table is `number[][]`, and this gives it the one shape the rest
27
+ * of the package reads, with no copy and no dependency.
28
+ * @param rows - One array per row; the width is taken from the first.
29
+ * @returns The matrix view. An empty input gives a zero by zero matrix.
30
+ */
31
+ export declare function rowMatrix(rows: ReadonlyArray<ArrayLike<number>>): MatrixLike;
32
+ /**
33
+ * A matrix whose values pass through a function on the way out.
34
+ *
35
+ * It exists for the sign convention: a principal component's direction is
36
+ * arbitrary, so the scores of a flipped component have to be negated, and
37
+ * negating them in place would mean allocating a copy of the whole score
38
+ * matrix to change one column's sign.
39
+ * @param source - The matrix to read.
40
+ * @param transform - Applied to every value, given its position.
41
+ * @returns The mapped view, which holds a reference to `source` rather than a copy.
42
+ */
43
+ export declare function mappedMatrix(source: MatrixLike, transform: (value: number, rowIndex: number, columnIndex: number) => number): MatrixLike;
44
+ /**
45
+ * Two matrices of the same width read as one, the second below the first.
46
+ *
47
+ * It is how a set of samples a model was fitted on and a set placed into it
48
+ * afterwards reach a plot as one table, without either being copied: the rows
49
+ * of a projection and the rows of a later projection through the same model
50
+ * are two separate matrices that everything downstream wants to read as one.
51
+ * @param top - The upper matrix, whose width the result takes.
52
+ * @param bottom - The lower matrix; a column it does not reach reads as `NaN`.
53
+ * @returns The stacked view, holding a reference to both rather than a copy.
54
+ */
55
+ export declare function stackedMatrix(top: MatrixLike, bottom: MatrixLike): MatrixLike;
56
+ //# sourceMappingURL=matrix.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matrix.d.ts","sourceRoot":"","sources":["../../../src/chart/core/matrix.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;IACzB,sBAAsB;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,yBAAyB;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,GAAG,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;CACxD;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,CAc5E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,UAAU,EAClB,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,MAAM,GAC1E,UAAU,CAYZ;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,UAAU,CAa7E"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * A plain array of rows read as a matrix.
3
+ *
4
+ * The door every method that is not `ml-pca` comes through: a UMAP embedding
5
+ * or a k-means table is `number[][]`, and this gives it the one shape the rest
6
+ * of the package reads, with no copy and no dependency.
7
+ * @param rows - One array per row; the width is taken from the first.
8
+ * @returns The matrix view. An empty input gives a zero by zero matrix.
9
+ */
10
+ export function rowMatrix(rows) {
11
+ const first = rows[0];
12
+ const columns = first === undefined ? 0 : first.length;
13
+ return {
14
+ rows: rows.length,
15
+ columns,
16
+ get(rowIndex, columnIndex) {
17
+ if (columnIndex < 0 || columnIndex >= columns)
18
+ return Number.NaN;
19
+ const row = rows[rowIndex];
20
+ if (row === undefined)
21
+ return Number.NaN;
22
+ const value = row[columnIndex];
23
+ return value === undefined ? Number.NaN : value;
24
+ },
25
+ };
26
+ }
27
+ /**
28
+ * A matrix whose values pass through a function on the way out.
29
+ *
30
+ * It exists for the sign convention: a principal component's direction is
31
+ * arbitrary, so the scores of a flipped component have to be negated, and
32
+ * negating them in place would mean allocating a copy of the whole score
33
+ * matrix to change one column's sign.
34
+ * @param source - The matrix to read.
35
+ * @param transform - Applied to every value, given its position.
36
+ * @returns The mapped view, which holds a reference to `source` rather than a copy.
37
+ */
38
+ export function mappedMatrix(source, transform) {
39
+ return {
40
+ rows: source.rows,
41
+ columns: source.columns,
42
+ get(rowIndex, columnIndex) {
43
+ return transform(source.get(rowIndex, columnIndex), rowIndex, columnIndex);
44
+ },
45
+ };
46
+ }
47
+ /**
48
+ * Two matrices of the same width read as one, the second below the first.
49
+ *
50
+ * It is how a set of samples a model was fitted on and a set placed into it
51
+ * afterwards reach a plot as one table, without either being copied: the rows
52
+ * of a projection and the rows of a later projection through the same model
53
+ * are two separate matrices that everything downstream wants to read as one.
54
+ * @param top - The upper matrix, whose width the result takes.
55
+ * @param bottom - The lower matrix; a column it does not reach reads as `NaN`.
56
+ * @returns The stacked view, holding a reference to both rather than a copy.
57
+ */
58
+ export function stackedMatrix(top, bottom) {
59
+ const rows = top.rows + bottom.rows;
60
+ const { columns } = top;
61
+ return {
62
+ rows,
63
+ columns,
64
+ get(rowIndex, columnIndex) {
65
+ if (rowIndex < 0 || rowIndex >= rows)
66
+ return Number.NaN;
67
+ if (columnIndex < 0 || columnIndex >= columns)
68
+ return Number.NaN;
69
+ if (rowIndex < top.rows)
70
+ return top.get(rowIndex, columnIndex);
71
+ return bottom.get(rowIndex - top.rows, columnIndex);
72
+ },
73
+ };
74
+ }
75
+ //# sourceMappingURL=matrix.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matrix.js","sourceRoot":"","sources":["../../../src/chart/core/matrix.ts"],"names":[],"mappings":"AAsBA;;;;;;;;GAQG;AACH,MAAM,UAAU,SAAS,CAAC,IAAsC;IAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,OAAO,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;IACvD,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,OAAO;QACP,GAAG,CAAC,QAAgB,EAAE,WAAmB;YACvC,IAAI,WAAW,GAAG,CAAC,IAAI,WAAW,IAAI,OAAO;gBAAE,OAAO,MAAM,CAAC,GAAG,CAAC;YACjE,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC3B,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,MAAM,CAAC,GAAG,CAAC;YACzC,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC;YAC/B,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;QAClD,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAC1B,MAAkB,EAClB,SAA2E;IAE3E,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,GAAG,CAAC,QAAgB,EAAE,WAAmB;YACvC,OAAO,SAAS,CACd,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,EACjC,QAAQ,EACR,WAAW,CACZ,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAAC,GAAe,EAAE,MAAkB;IAC/D,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IACpC,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;IACxB,OAAO;QACL,IAAI;QACJ,OAAO;QACP,GAAG,CAAC,QAAgB,EAAE,WAAmB;YACvC,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,IAAI,IAAI;gBAAE,OAAO,MAAM,CAAC,GAAG,CAAC;YACxD,IAAI,WAAW,GAAG,CAAC,IAAI,WAAW,IAAI,OAAO;gBAAE,OAAO,MAAM,CAAC,GAAG,CAAC;YACjE,IAAI,QAAQ,GAAG,GAAG,CAAC,IAAI;gBAAE,OAAO,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YAC/D,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACtD,CAAC;KACF,CAAC;AACJ,CAAC"}