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
package/README.md CHANGED
@@ -57,24 +57,27 @@ through a wildcard subpath exactly as `react-science` serves its own.
57
57
 
58
58
  ## What is in it
59
59
 
60
- | Area | `…/core` | `…/ui` |
61
- | ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
62
- | **Site identity** | `siteById`, `findSiteByHost`, `siteTokensCss`, `siteThemeColor`, `renderEcosystemLinksHtml` | `SiteMark`, `Wordmark`, `SiteTheme`, `SiteTile`, `EcosystemButton`, `EcosystemLinks` |
63
- | **Chrome** | — | `SiteHeader`, `SiteFooter`, `NavLink`, `NavMenuButton`, `MenuButton`, `useCompactHeader` |
64
- | **Citation** | `formatCitation`, `formatCitations`, `citationSegments`, `downloadCitation`, `citedReferences`, `doiUrl` | `CiteButton`, `CitationMenu`, `CitationPreview` |
65
- | **Share & embed** | `parseShareConfig`, `applyShareConfig`, `buildShareUrl`, `buildEmbedCode`, `isHidden`, the param codecs | `ShareDialog`, `ShareButton`, `HiddenPartsProvider`, `PagePart`, `useIsHidden` |
66
- | **Routing & head** | `createTabRouter`, `createPageAddresses`, `adoptLegacyHashAddress`, `writeDocumentMeta`, `canonicalLink` | — |
67
- | **Indexing** | `injectPageMeta`, `pageHeadTags`, `pageDocumentMeta`, `fill`, `PAGE_HEAD_MARKER`, `PAGE_BODY_MARKER`, `robotsTxt`, `sitemapXml`, `noscriptIndex`, `structuredDataScript`, `assertRoutes`, `routeFor`, `homeRoute` | `cheminfoPrerender`, `ogCardHtml`, `OG_WIDTH`, `OG_HEIGHT` (all `/vite`) |
68
- | **Pedagogy** | `parseGlossaryMarkers`, `localStorageProgressStore`, `progressSummary`, `finishValidation` | `GlossaryText`, `SyntaxTooltip`, `HintLadder`, `ExerciseActions`, `ExerciseProgressHeader`, `TutorialStepStrip`, `ReferenceGrid`, `TestCaseList` |
69
- | **Clipboard & files** | `writeToClipboard`, `downloadBlob`, `downloadText`, `sanitizeFileName`, `toDelimited`, `readDelimited` | `CopyButton`, `CodeBlock`, `DelimitedTextDialog` |
70
- | **Formatting & colour** | `formatInteger`, `formatDecimal`, `formatBytes`, `pluralize`, `readableInk`, `contrastRatio` | `ColorScaleLegend` |
71
- | **Widgets** | `CREDITS`, `credits` | `ErrorBoundary`, `CollapsibleSection`, `CapsuleFilter`, `HelpTooltip`, `CreditsList` |
72
- | **Hooks & state** | `createWorkerChannel` | `persistBucket`, `useDebouncedValue`, `useContainerSize`, `useListKeyboardNavigation`, `useDisclosure` |
73
- | **Chemistry** | `atomicOrbitalsOf`, `configurationOf`, `classifyMolfile`, `readStructure` | `AtomicOrbitalViewer` (`/orbital`), `StructureEditor`, `Structure` (`/structure`) |
74
- | **About** | `resolveAbout`, `aboutProblems` | `AboutPage` |
75
- | **Slideshows** | `parseTalk`, `splitDemoLinks`, `slideActionForKey`, `parseTalkOrigin`, `buildTalkManifest` (all `/slides`) | `Slideshow`, `SlideView`, `TalkList`, `BackToSlides` (all `/slides`), `cheminfoTalks` (`/vite`) |
76
- | **Token guard** | `findTokenViolations` | `cheminfo-check-tokens` (the bin) |
77
- | **Periodic table** | `PERIODIC_ELEMENTS`, `elementBySymbol`, `elementByAtomicNumber`, `cellOf`, `placedElements`, `elementByArrowKey`, `categorySwatch`, `CATEGORY_LABELS` | `PeriodicTable`, `ElementCell`, `CategoryLegend` |
60
+ | Area | `…/core` | `…/ui` |
61
+ | ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
62
+ | **Site identity** | `siteById`, `findSiteByHost`, `siteTokensCss`, `siteThemeColor`, `renderEcosystemLinksHtml` | `SiteMark`, `Wordmark`, `SiteTheme`, `SiteTile`, `EcosystemButton`, `EcosystemLinks` |
63
+ | **Chrome** | — | `SiteHeader`, `SiteFooter`, `NavLink`, `NavMenuButton`, `MenuButton`, `useCompactHeader` |
64
+ | **Citation** | `formatCitation`, `formatCitations`, `citationSegments`, `downloadCitation`, `citedReferences`, `doiUrl` | `CiteButton`, `CitationMenu`, `CitationPreview` |
65
+ | **Share & embed** | `parseShareConfig`, `applyShareConfig`, `buildShareUrl`, `buildEmbedCode`, `isHidden`, the param codecs | `ShareDialog`, `ShareButton`, `HiddenPartsProvider`, `PagePart`, `useIsHidden` |
66
+ | **Routing & head** | `createTabRouter`, `createPageAddresses`, `adoptLegacyHashAddress`, `writeDocumentMeta`, `canonicalLink` | — |
67
+ | **Indexing** | `injectPageMeta`, `pageHeadTags`, `pageDocumentMeta`, `fill`, `PAGE_HEAD_MARKER`, `PAGE_BODY_MARKER`, `robotsTxt`, `sitemapXml`, `noscriptIndex`, `structuredDataScript`, `assertRoutes`, `routeFor`, `homeRoute` | `cheminfoPrerender`, `ogCardHtml`, `OG_WIDTH`, `OG_HEIGHT` (all `/vite`) |
68
+ | **Pedagogy** | `parseGlossaryMarkers`, `localStorageProgressStore`, `progressSummary`, `finishValidation` | `GlossaryText`, `SyntaxTooltip`, `HintLadder`, `ExerciseActions`, `ExerciseProgressHeader`, `TutorialStepStrip`, `ReferenceGrid`, `TestCaseList` |
69
+ | **Clipboard & files** | `writeToClipboard`, `downloadBlob`, `downloadText`, `sanitizeFileName`, `toDelimited`, `readDelimited`, `downloadFigure`, `figureSvg`, `figurePng`, `figureSize` | `CopyButton`, `CodeBlock`, `DelimitedTextDialog`, `FigureDownload` |
70
+ | **Formatting & colour** | `formatInteger`, `formatDecimal`, `formatBytes`, `pluralize`, `readableInk`, `contrastRatio`, `COLOR_SCALES`, `resolveColorScale`, `formatColorScale`, `colorAt`, `swatchAt`, `sampleScale`, `colorScaleGradient`, `rgbToHsv` | `ColorScaleLegend`, `ColorScaleSelect`, `ColorScaleEditor`, `ColorScaleBar` |
71
+ | **Widgets** | `CREDITS`, `credits` | `ErrorBoundary`, `CollapsibleSection`, `CapsuleFilter`, `HelpTooltip`, `CreditsList` |
72
+ | **Hooks & state** | `createWorkerChannel` | `persistBucket`, `useDebouncedValue`, `useContainerSize`, `useListKeyboardNavigation`, `useDisclosure` |
73
+ | **Chemistry** | `atomicOrbitalsOf`, `configurationOf`, `classifyMolfile`, `readStructure` | `AtomicOrbitalViewer` (`/orbital`), `StructureEditor`, `Structure` (`/structure`) |
74
+ | **Spectra** | `FILTER_CATALOG`, `filterMenu`, `settingsProblems`, `normalizationFilters`, `addFilter`, `moveFilter`, `setFilterOption`, `principalComponentChoices`, `clampPrincipalComponents`, `EMPTY_SETTINGS` | `SpectraSettingsEditor`, `FilterChainEditor`, `PrincipalComponentSelect` |
75
+ | **About** | `resolveAbout`, `aboutProblems` | `AboutPage` |
76
+ | **Slideshows** | `parseTalk`, `splitDemoLinks`, `slideActionForKey`, `parseTalkOrigin`, `buildTalkManifest` (all `/slides`) | `Slideshow`, `SlideView`, `TalkList`, `BackToSlides` (all `/slides`), `cheminfoTalks` (`/vite`) |
77
+ | **Token guard** | `findTokenViolations` | `cheminfo-check-tokens` (the bin) |
78
+ | **Figures** | `chartScale`, `chartAxisScale`, `chartAxisTitle`, `chartShare`, `chartColumnExtent`, `chartBinCounts`, `chartSeriesColor`, `rowMatrix`, `stackedMatrix`, `emptiestCorner`, `placeOverlayCard`, `overlayMetrics` | `ChartFrame`, `ChartAxis`, `TrackedLineChart`, `OverlayBar`, `OverlaySelect`, `OverlaySegmented`, `OverlayToggle`, `OverlayNumber`, `OverlayLegend`, `OverlayCaption`, `OverlayReadout` |
79
+ | **Projections** | `pcaResult`, `embeddingResult`, `projectionTabs`, `loadingProfiles`, `explainedShares`, `confidenceEllipse`, `projectEllipse`, `pointsInPolygon`, `resolveProjectionGroups`, `PROJECTION_COPY` | `PcaViewer`, `ProjectionViewer`, `ScatterPlot`, `ScatterMatrix` |
80
+ | **Periodic table** | `PERIODIC_ELEMENTS`, `elementBySymbol`, `elementByAtomicNumber`, `cellOf`, `placedElements`, `elementByArrowKey`, `categorySwatch`, `CATEGORY_LABELS` | `PeriodicTable`, `ElementCell`, `CategoryLegend` |
78
81
 
79
82
  Everything in that table is exported from `./core`, `./ui`, `./slides`,
80
83
  `./vite` or `./structure` and nothing else is: the sub-components a component is built
@@ -87,11 +90,11 @@ second, your own code last.** The full import table and the checklist live in
87
90
 
88
91
  ## Seeing it
89
92
 
90
- Storybook is the demo, and every exported component has one — 210 stories:
93
+ Storybook is the demo, and every exported component has one — 287 stories:
91
94
 
92
95
  ```console
93
96
  npm run dev # the book on http://localhost:10815
94
- npm run test-e2e # Playwright opens all 210 and fails on any console error
97
+ npm run test-e2e # Playwright opens all 287 and fails on any console error
95
98
  ```
96
99
 
97
100
  The **Brand** toolbar at the top retunes `--brand` / `--brand-alt`, so any story
@@ -265,6 +268,234 @@ The colours a name is set in are the site's own and are not retuned to reach the
265
268
  4.5:1 of body text: ChemCalc's teal and NMRium's orange both land just under it,
266
269
  which is why a name is set bold, where 3:1 is the threshold.
267
270
 
271
+ ### `ColorScaleSelect`
272
+
273
+ The colours a quantity is read with, chosen by looking at them rather than by
274
+ reading their names — and, behind the last entry, built from anchors of the
275
+ reader's own.
276
+
277
+ ```tsx
278
+ import { COLOR_SCALES, resolveColorScale, swatchAt } from 'react-cheminfo/core';
279
+ import { ColorScaleSelect } from 'react-cheminfo/ui';
280
+
281
+ <ColorScaleSelect label="Colour scale" value={scale} onChange={setScale} />;
282
+
283
+ const { scale } = resolveColorScale(text); // 'plasma', or 'hsv-long,0-0000ff,1-ff0000'
284
+ swatchAt(scale, 0.5); // { background, foreground }
285
+ ```
286
+
287
+ - **The choice is one string**, which is what goes in the state and in the
288
+ address: the id of one of `COLOR_SCALES`, or a scale spelled out. Nothing else
289
+ has to be carried, and `resolveColorScale` never throws — a scale renamed
290
+ since a course page was written falls back to viridis rather than blanking the
291
+ figure.
292
+ - **Ten scales are offered**: viridis, plasma, magma, inferno, cividis and
293
+ turbo; greys for a photocopier; cool-warm and blue-red for a quantity read
294
+ away from a middle; and the rainbow, which orders nothing but is what a course
295
+ usually draws.
296
+ - **A custom scale is anchors plus a path.** `rgb` mixes the three channels,
297
+ which is what a browser gradient does; `hsv` turns along the colour wheel the
298
+ short way, keeping the saturation instead of fading through the grey in the
299
+ middle; `hsv-long` turns the other way, which is how two anchors of one hue
300
+ draw a whole rainbow. `ColorScaleEditor` is that editor on its own, for a site
301
+ that wants it inline.
302
+ - **A scale that turns is sampled, never handed to CSS as its two ends** — a
303
+ browser only interpolates the straight line between two colours.
304
+ `colorScaleGradient` and `ColorScaleBar` do the sampling.
305
+
306
+ ### `SpectraSettingsEditor`
307
+
308
+ Everything [`spectra-processor`](https://github.com/cheminfo/spectra-processor)
309
+ can be told, laid out in the order it happens — and the principal components a
310
+ score plot is then drawn against.
311
+
312
+ ```tsx
313
+ import { EMPTY_SETTINGS, settingsProblems } from 'react-cheminfo/core';
314
+ import { SpectraSettingsEditor } from 'react-cheminfo/ui';
315
+
316
+ <SpectraSettingsEditor
317
+ value={settings}
318
+ onChange={setSettings}
319
+ spectrumIds={processor.getIDs()}
320
+ principalComponents={{
321
+ selection,
322
+ onSelectionChange: setSelection, // { x: 0, y: 1 } — columns of the score matrix
323
+ count: scores.columns,
324
+ explainedVariance: pca.getExplainedVariance(),
325
+ settings: pcaOptions,
326
+ onSettingsChange: setPcaOptions,
327
+ }}
328
+ />;
329
+
330
+ processor.setNormalization(settings.processor.normalization);
331
+ processor.getPostProcessedData(settings.postProcessing);
332
+ ```
333
+
334
+ - **The types come from the packages that own them**, not from a copy.
335
+ `src/spectra/core/settings.ts` is the only file naming `spectra-processor` or
336
+ `ml-signal-processing`, and it reads the shapes off their public surface —
337
+ `ConstructorParameters<typeof SpectraProcessor>[0]`, `FilterXYType`. Both are
338
+ optional peers and every import is `import type`, so a site that does not use
339
+ this component downloads neither.
340
+ - **All 23 chain steps are offered**, grouped as a chain is built — baseline,
341
+ smoothing and derivatives, scaling, the two axes, housekeeping — with every
342
+ option each one takes, down to the nested peak picking of `calibrateX`. The
343
+ catalog is a `Record` keyed by the step name, so the day `ml-signal-processing`
344
+ adds a filter this package stops compiling instead of quietly not offering it.
345
+ - **The order is the meaning, so it is editable and it is checked.** A step moves
346
+ with two arrow buttons — no drag dependency, and it works from the keyboard.
347
+ Scaling placed before the baseline it depends on, a second resampling, a crop
348
+ that leaves the spectra on grids that no longer line up: each is named where it
349
+ sits.
350
+ - **Nothing blocks.** A reader mid-thought may hold settings the processor would
351
+ throw on. `settingsProblems` says which value it would throw on — separating
352
+ what fails from what merely looks unintended — and the editor still takes the
353
+ edit.
354
+ - **A cleared box means "whatever upstream does"**, never `undefined` written
355
+ into the settings, which is the only way back to a default once it has been
356
+ typed over. A half-typed `1e-` is kept as typed rather than parsed away.
357
+ - **The components are named `PC1` and handed back as `0`.** The label is what a
358
+ chemist writes; the number is the column of the score matrix, because that is
359
+ what indexes it. `clampPrincipalComponents` keeps a selection saved on other
360
+ data inside the components that exist, and keeps the two axes apart so a plot
361
+ never collapses onto its diagonal. `FilterChainEditor` and
362
+ `PrincipalComponentSelect` are each usable on their own.
363
+
364
+ ### `PcaViewer`
365
+
366
+ A finished principal component analysis, read by somebody who has never met one.
367
+
368
+ ```tsx
369
+ import { PCA } from 'ml-pca';
370
+ import { PcaViewer } from 'react-cheminfo/ui';
371
+
372
+ const pca = new PCA(rows, { scale: true });
373
+
374
+ <PcaViewer
375
+ pca={pca}
376
+ rows={rows}
377
+ scaled
378
+ projected={newBatch} // placed into the finished model, drawn hollow
379
+ variables={{
380
+ kind: 'named',
381
+ names: ['Sepal length', 'Sepal width', 'Petal length', 'Petal width'],
382
+ unit: 'cm',
383
+ }}
384
+ samples={{
385
+ ids,
386
+ groups: species,
387
+ groupLabel: 'Species',
388
+ fields: (index) => [
389
+ { label: 'Sepal length', value: `${rows[index][0]} cm` },
390
+ ],
391
+ }}
392
+ onSelectionChange={(ids) => setPicked(ids)}
393
+ onTrackVariable={(track) => setHovered(track?.readout ?? null)}
394
+ />;
395
+ ```
396
+
397
+ - **Four tabs, and only the ones the data can fill.** `projectionTabs` reads the
398
+ result rather than a prop: a principal component analysis publishes a share of
399
+ the variance and a set of weights, so it gets the map, every pair, what differs
400
+ and how much each explains. A UMAP embedding publishes neither, so it gets the
401
+ map alone — one tab and no tab strip, instead of three empty ones.
402
+ - **It never imports `ml-pca`.** `PcaLike` is a structural type — `predict`,
403
+ `getExplainedVariance`, `getEigenvalues`, `getLoadings` — which `ml-pca`'s
404
+ `PCA` satisfies as it stands, with no adapter and no cast. The package has no
405
+ runtime dependency on it, and `embeddingResult` is the same door for
406
+ coordinates from anywhere else.
407
+ - **An outline says what share of a group it holds, not how many standard
408
+ deviations it is.** In two dimensions those are not the numbers anybody
409
+ remembers: an ellipse at one standard deviation holds about 39% of the points,
410
+ not 68%. The picker therefore offers `50% of samples` … `99% of samples`, and
411
+ the legend writes the same words, so the figure cannot promise a coverage it
412
+ does not have.
413
+ - **The outline is projected, not rotated.** The two axes almost never carry the
414
+ same units per pixel, so an ellipse turned by an angle in the data is not
415
+ turned by that angle on the screen. Handing an SVG `<ellipse>` the data-space
416
+ angle draws every tilted group slightly wrong and never says so.
417
+ - **A sample the model was built from is filled; one placed into it afterwards is
418
+ hollow.** `pcaResult(pca, { rows, projected })` appends the second kind and
419
+ records where they start, because the two are not equally trustworthy: a fitted
420
+ sample helped choose where the axes point and is bound to land somewhere
421
+ reasonable, while a projected one can land anywhere — and landing far out is
422
+ the finding, not a fault.
423
+ - **Colour means one thing per tab and the legend says which.** Groups on the map
424
+ and the pair grid, components on the other two, drawn from two orders of the
425
+ Okabe–Ito palette that are disjoint over their first four, so blue-is-setosa on
426
+ one tab is never blue-is-PC1 on the next. `OverlayLegend` has no default title:
427
+ a legend that does not name its encoding is how a reader carries the wrong
428
+ meaning from one tab to the next.
429
+ - **The direction of a component is arbitrary, so it is never a colour.** Sign is
430
+ carried by geometry — above or below the zero line — and each component is
431
+ flipped so its strongest measurement comes out positive, because otherwise
432
+ refitting on one more sample mirrors the whole map and reads as a fault.
433
+ - **Selecting is a drag.** Plain drag replaces the selection, shift adds, alt
434
+ removes, and the caption says which while the pointer is still down.
435
+ `onSelectionChange` hands back sample **ids**, so a caller never keeps a second
436
+ index. Pointer capture, cancellation and lost capture all funnel into one path,
437
+ which is what stops a lasso being left half-drawn.
438
+
439
+ ### `ProjectionViewer` and the floating options
440
+
441
+ `PcaViewer` is a thin adapter over `ProjectionViewer`, which draws any
442
+ dimension-reduction result — a k-means run with its centroids, a UMAP embedding,
443
+ coordinates read from a file — from one `ProjectionResult`. The pieces below it
444
+ are meant to be built on:
445
+
446
+ | Domain | Holds |
447
+ | ---------------- | ---------------------------------------------------------------------------------------------------- |
448
+ | `src/chart` | `MatrixLike` read where it stands, linear scales, round ticks, the SVG frame, the tracked line chart |
449
+ | `src/overlay` | The card of controls that floats over a figure, and the caption, legend and readout that explain one |
450
+ | `src/scatter` | Lasso selection, hover, confidence ellipses, the plot and the pair grid |
451
+ | `src/projection` | The result model, the two adapters, and the viewer |
452
+
453
+ The overlay domain is the part most likely to turn up elsewhere. A card rests at
454
+ three quarters strength and wakes when the pointer reaches the figure or the
455
+ keyboard reaches one of its controls; **only its ground fades, never its text**,
456
+ because a label at three quarters over a busy scatter is unreadable exactly when
457
+ it is wanted. One or two controls stay in the strip and everything an expert
458
+ changes lives behind a cog — concealment is the default, and a control is visible
459
+ only because somebody put it there deliberately. Below about 420 pixels the whole
460
+ bar folds into that cog, and the tab order is the same folded or open.
461
+
462
+ ```tsx
463
+ <OverlayLayer width={width} density="compact">
464
+ <OverlayBar placement={emptiestCorner(points)} more={<Expert />}>
465
+ <OverlaySelect caption="Across" value={x} options={axes} onChange={setX} />
466
+ </OverlayBar>
467
+ </OverlayLayer>
468
+ ```
469
+
470
+ ### Saving a figure
471
+
472
+ Every projection viewer carries a save glyph in its bar: a reader picks PNG or
473
+ SVG, picks a resolution, and gets the figure as a file. The panel writes out the
474
+ pixels each resolution would produce, and `fileName` names what arrives — the
475
+ view is appended, so `fileName="ecstasy"` saves `ecstasy-map.png`.
476
+
477
+ The control behind it is `FigureDownload`, and it is not tied to the viewer: it
478
+ takes the **`id` of the box a figure sits in**, so it can stand in a bar, a
479
+ toolbar or a menu without the component that drew the figure handing anything
480
+ over.
481
+
482
+ ```tsx
483
+ <FigureDownload targetId="pca-figure" fileName="ecstasy-map" />
484
+ <div id="pca-figure">
485
+ <PcaViewer pca={pca} rows={rows} samples={samples} />
486
+ </div>
487
+ ```
488
+
489
+ Three things it does that a screenshot does not. Everything inside the box is
490
+ saved, so a view that is really sixteen charts arrives as one picture with each
491
+ placed back where the reader saw it. The tokens the figure is drawn from are
492
+ resolved first — a `var(--border)` that left the site would draw a chart with no
493
+ axes. And the chrome floating over the picture is left behind: an `OverlayLayer`
494
+ marks itself, so the cog in the corner never lands in the middle of the scatter.
495
+
496
+ `downloadFigure(target, options)`, `figureSvg` and `figurePng` are the same thing
497
+ without the button, for a site saving a figure from its own menu.
498
+
268
499
  ## Carrying talks
269
500
 
270
501
  A deck is one Markdown file in the repository of the site whose subject it
@@ -0,0 +1,88 @@
1
+ /** A niced axis: its domain, its ticks, and the labels they are written with. */
2
+ export interface ChartAxisScale {
3
+ /** The domain the ticks span, widened outward to whole steps when asked. */
4
+ readonly domain: readonly [number, number];
5
+ /** The tick values, ascending. */
6
+ readonly values: readonly number[];
7
+ /** The spacing: always 1, 2 or 5 times a power of ten. */
8
+ readonly step: number;
9
+ /** Decimals every label on this axis carries, so a column of them lines up. */
10
+ readonly decimals: number;
11
+ /** A power of ten lifted out of every label, or `0` when none was. */
12
+ readonly exponent: number;
13
+ /** One label per value, already written out. */
14
+ readonly labels: readonly string[];
15
+ }
16
+ /** How an axis is divided. */
17
+ export interface ChartAxisScaleOptions {
18
+ /**
19
+ * Roughly how many ticks to aim for; the real count lands near it.
20
+ * @default 5
21
+ */
22
+ count?: number;
23
+ /**
24
+ * Whether to widen the domain outward to whole steps, so the axis ends on a
25
+ * labelled tick. Turn it off when the domain is already exact — a share that
26
+ * must end at 100%.
27
+ * @default true
28
+ */
29
+ nice?: boolean;
30
+ }
31
+ /**
32
+ * The ticks an axis over `min`..`max` should carry.
33
+ *
34
+ * The step follows the standard 1/2/5 progression. Below one, the algorithm
35
+ * divides by an integer rather than multiplying by a power of ten, which is
36
+ * what makes a tenth come out as exactly `0.1` instead of
37
+ * `0.30000000000000004` three ticks later. A domain far from unity has a
38
+ * common power of ten lifted into {@link ChartAxisScale.exponent} so the
39
+ * labels stay two or three characters wide and the axis title carries the
40
+ * factor; it is lifted only where that actually shortens them, so a million
41
+ * and a hundredth keeps its digits rather than trading them for longer ones.
42
+ * @param min - One end of the data range, in either order.
43
+ * @param max - The other end.
44
+ * @param options - See {@link ChartAxisScaleOptions}.
45
+ * @returns The niced axis. A range holding a value that is not finite falls
46
+ * back to 0..1, and a zero-width one is opened by 5% either side so that a
47
+ * constant column still draws an axis.
48
+ */
49
+ export declare function chartAxisScale(min: number, max: number, options?: ChartAxisScaleOptions): ChartAxisScale;
50
+ /**
51
+ * The domain rounded outward until both ends land on a whole tick step.
52
+ *
53
+ * It iterates, because widening changes the span, which can change the step,
54
+ * which can widen it again; it settles in one or two passes.
55
+ * @param min - One end, in either order.
56
+ * @param max - The other end.
57
+ * @param count - Roughly how many ticks the domain will carry. Defaults to `5`.
58
+ * @returns The widened domain, ascending.
59
+ */
60
+ export declare function chartNiceDomain(min: number, max: number, count?: number): [number, number];
61
+ /**
62
+ * How many decimals a label needs so that every tick on one axis is written
63
+ * the same width.
64
+ *
65
+ * A step is always 1, 2 or 5 times a power of ten, so the answer is the step's
66
+ * decimal exponent and nothing more.
67
+ * @param step - The tick spacing.
68
+ * @returns The decimals; `0` for a step of one or more.
69
+ */
70
+ export declare function chartTickDecimals(step: number): number;
71
+ /**
72
+ * One tick written out, through `formatDecimal` so an axis reads like the rest
73
+ * of the family's numbers.
74
+ * @param value - The tick value.
75
+ * @param decimals - Decimals to keep, from {@link chartTickDecimals}.
76
+ * @param exponent - A power of ten already lifted into the axis title. Defaults to `0`.
77
+ * @returns The label. A negative zero is written as zero, which is what a
78
+ * reader expects to find at an origin.
79
+ */
80
+ export declare function chartTickLabel(value: number, decimals: number, exponent?: number): string;
81
+ /**
82
+ * The factor an axis title carries when its labels were divided down, written
83
+ * as ` (×10⁻⁹)` with real superscript digits.
84
+ * @param exponent - The power of ten lifted out; `0` for none.
85
+ * @returns The suffix, or an empty string when there is nothing to say.
86
+ */
87
+ export declare function chartExponentSuffix(exponent: number): string;
88
+ //# sourceMappingURL=chartAxisScale.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chartAxisScale.d.ts","sourceRoot":"","sources":["../../../src/chart/core/chartAxisScale.ts"],"names":[],"mappings":"AAcA,iFAAiF;AACjF,MAAM,WAAW,cAAc;IAC7B,4EAA4E;IAC5E,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,kCAAkC;IAClC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,0DAA0D;IAC1D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,sEAAsE;IACtE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,gDAAgD;IAChD,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAED,8BAA8B;AAC9B,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,qBAA0B,GAClC,cAAc,CAgBhB;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,KAAK,SAAgB,GACpB,CAAC,MAAM,EAAE,MAAM,CAAC,CAelB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,QAAQ,SAAI,GACX,MAAM,CAIR;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAS5D"}
@@ -0,0 +1,205 @@
1
+ import { formatDecimal } from "../../format/core/numbers.js";
2
+ const DEFAULT_COUNT = 5;
3
+ const MAXIMUM_COUNT = 100;
4
+ const MAXIMUM_TICKS = 1000;
5
+ const NICE_PASSES = 8;
6
+ const ZERO_WIDTH_SHARE = 0.05;
7
+ const ZERO_WIDTH_FALLBACK = 1;
8
+ const COMFORTABLE_LABEL = 6;
9
+ const SUPERSCRIPT_DIGITS = '⁰¹²³⁴⁵⁶⁷⁸⁹';
10
+ const STEP_10 = Math.sqrt(50);
11
+ const STEP_5 = Math.sqrt(10);
12
+ const STEP_2 = Math.SQRT2;
13
+ /**
14
+ * The ticks an axis over `min`..`max` should carry.
15
+ *
16
+ * The step follows the standard 1/2/5 progression. Below one, the algorithm
17
+ * divides by an integer rather than multiplying by a power of ten, which is
18
+ * what makes a tenth come out as exactly `0.1` instead of
19
+ * `0.30000000000000004` three ticks later. A domain far from unity has a
20
+ * common power of ten lifted into {@link ChartAxisScale.exponent} so the
21
+ * labels stay two or three characters wide and the axis title carries the
22
+ * factor; it is lifted only where that actually shortens them, so a million
23
+ * and a hundredth keeps its digits rather than trading them for longer ones.
24
+ * @param min - One end of the data range, in either order.
25
+ * @param max - The other end.
26
+ * @param options - See {@link ChartAxisScaleOptions}.
27
+ * @returns The niced axis. A range holding a value that is not finite falls
28
+ * back to 0..1, and a zero-width one is opened by 5% either side so that a
29
+ * constant column still draws an axis.
30
+ */
31
+ export function chartAxisScale(min, max, options = {}) {
32
+ const { count = DEFAULT_COUNT, nice = true } = options;
33
+ const wanted = tickCount(count);
34
+ const opened = openDomain(min, max);
35
+ const domain = nice ? chartNiceDomain(opened[0], opened[1], wanted) : opened;
36
+ const [first, last, increment] = tickSpec(domain[0], domain[1], wanted);
37
+ const spacing = increment < 0 ? -1 / increment : increment;
38
+ const step = Number.isFinite(spacing) && spacing > 0 ? spacing : 0;
39
+ const values = step === 0 ? [] : tickValues(first, last, increment);
40
+ const exponent = liftedExponent(values, step);
41
+ const decimals = Math.max(0, exponent - decimalExponent(step));
42
+ const labels = [];
43
+ for (const value of values) {
44
+ labels.push(chartTickLabel(value, decimals, exponent));
45
+ }
46
+ return { domain, values, step, decimals, exponent, labels };
47
+ }
48
+ /**
49
+ * The domain rounded outward until both ends land on a whole tick step.
50
+ *
51
+ * It iterates, because widening changes the span, which can change the step,
52
+ * which can widen it again; it settles in one or two passes.
53
+ * @param min - One end, in either order.
54
+ * @param max - The other end.
55
+ * @param count - Roughly how many ticks the domain will carry. Defaults to `5`.
56
+ * @returns The widened domain, ascending.
57
+ */
58
+ export function chartNiceDomain(min, max, count = DEFAULT_COUNT) {
59
+ const wanted = tickCount(count);
60
+ let [start, stop] = openDomain(min, max);
61
+ let previous = 0;
62
+ for (let pass = 0; pass < NICE_PASSES; pass++) {
63
+ const [, , increment] = tickSpec(start, stop, wanted);
64
+ if (increment === previous || !Number.isFinite(increment))
65
+ break;
66
+ const low = wholeStep(start, increment, true);
67
+ const high = wholeStep(stop, increment, false);
68
+ if (!Number.isFinite(low) || !Number.isFinite(high))
69
+ break;
70
+ start = low;
71
+ stop = high;
72
+ previous = increment;
73
+ }
74
+ return [start, stop];
75
+ }
76
+ /**
77
+ * How many decimals a label needs so that every tick on one axis is written
78
+ * the same width.
79
+ *
80
+ * A step is always 1, 2 or 5 times a power of ten, so the answer is the step's
81
+ * decimal exponent and nothing more.
82
+ * @param step - The tick spacing.
83
+ * @returns The decimals; `0` for a step of one or more.
84
+ */
85
+ export function chartTickDecimals(step) {
86
+ return Math.max(0, -decimalExponent(step));
87
+ }
88
+ /**
89
+ * One tick written out, through `formatDecimal` so an axis reads like the rest
90
+ * of the family's numbers.
91
+ * @param value - The tick value.
92
+ * @param decimals - Decimals to keep, from {@link chartTickDecimals}.
93
+ * @param exponent - A power of ten already lifted into the axis title. Defaults to `0`.
94
+ * @returns The label. A negative zero is written as zero, which is what a
95
+ * reader expects to find at an origin.
96
+ */
97
+ export function chartTickLabel(value, decimals, exponent = 0) {
98
+ const lift = Number.isFinite(exponent) ? Math.trunc(exponent) : 0;
99
+ const scaled = lift === 0 ? value : value / 10 ** lift;
100
+ return formatDecimal(scaled === 0 ? 0 : scaled, decimals);
101
+ }
102
+ /**
103
+ * The factor an axis title carries when its labels were divided down, written
104
+ * as ` (×10⁻⁹)` with real superscript digits.
105
+ * @param exponent - The power of ten lifted out; `0` for none.
106
+ * @returns The suffix, or an empty string when there is nothing to say.
107
+ */
108
+ export function chartExponentSuffix(exponent) {
109
+ if (!Number.isFinite(exponent))
110
+ return '';
111
+ const whole = Math.trunc(exponent);
112
+ if (whole === 0)
113
+ return '';
114
+ const sign = whole < 0 ? '⁻' : '';
115
+ const digits = Math.abs(whole)
116
+ .toString()
117
+ .replaceAll(/\d/gu, (digit) => SUPERSCRIPT_DIGITS.charAt(Number(digit)));
118
+ return ` (×10${sign}${digits})`;
119
+ }
120
+ function tickSpec(start, stop, count) {
121
+ const rawStep = (stop - start) / count;
122
+ const power = Math.floor(Math.log10(rawStep));
123
+ const error = rawStep / 10 ** power;
124
+ let factor = 1;
125
+ if (error >= STEP_2)
126
+ factor = 2;
127
+ if (error >= STEP_5)
128
+ factor = 5;
129
+ if (error >= STEP_10)
130
+ factor = 10;
131
+ if (power < 0) {
132
+ const divisor = 10 ** -power / factor;
133
+ let first = Math.round(start * divisor);
134
+ let last = Math.round(stop * divisor);
135
+ if (first / divisor < start)
136
+ first += 1;
137
+ if (last / divisor > stop)
138
+ last -= 1;
139
+ return [first, last, -divisor];
140
+ }
141
+ const increment = 10 ** power * factor;
142
+ let first = Math.round(start / increment);
143
+ let last = Math.round(stop / increment);
144
+ if (first * increment < start)
145
+ first += 1;
146
+ if (last * increment > stop)
147
+ last -= 1;
148
+ return [first, last, increment];
149
+ }
150
+ function tickValues(first, last, increment) {
151
+ const total = last - first + 1;
152
+ if (!(total > 0) || total > MAXIMUM_TICKS)
153
+ return [];
154
+ const divisor = increment < 0 ? -increment : 0;
155
+ const values = [];
156
+ for (let index = 0; index < total; index++) {
157
+ const tick = first + index;
158
+ values.push(divisor > 0 ? tick / divisor : tick * increment);
159
+ }
160
+ return values;
161
+ }
162
+ function wholeStep(value, increment, down) {
163
+ // A negative increment is a divisor; dividing turns the rounding round.
164
+ const flips = increment < 0;
165
+ const scaled = flips ? value * increment : value / increment;
166
+ const whole = down === flips ? Math.ceil(scaled) : Math.floor(scaled);
167
+ return flips ? whole / increment : whole * increment;
168
+ }
169
+ function liftedExponent(values, step) {
170
+ const low = Math.abs(values[0] ?? 0);
171
+ const largest = Math.max(low, Math.abs(values.at(-1) ?? 0));
172
+ if (largest === 0 || !Number.isFinite(largest) || step <= 0)
173
+ return 0;
174
+ const top = decimalExponent(largest);
175
+ const fine = decimalExponent(step);
176
+ const plain = labelWidth(Math.max(1, top + 1), -fine);
177
+ if (plain <= COMFORTABLE_LABEL)
178
+ return 0;
179
+ return labelWidth(1, top - fine) < plain ? top : 0;
180
+ }
181
+ function labelWidth(digits, decimals) {
182
+ return decimals > 0 ? digits + decimals + 1 : digits;
183
+ }
184
+ function decimalExponent(value) {
185
+ const exponent = Number(Math.abs(value).toExponential().split('e', 2)[1]);
186
+ return Number.isFinite(exponent) ? exponent : 0;
187
+ }
188
+ function tickCount(count) {
189
+ if (!Number.isFinite(count))
190
+ return DEFAULT_COUNT;
191
+ return Math.min(MAXIMUM_COUNT, Math.max(1, Math.floor(count)));
192
+ }
193
+ function openDomain(min, max) {
194
+ const usable = Number.isFinite(min) && Number.isFinite(max);
195
+ let low = usable ? Math.min(min, max) : 0;
196
+ let high = usable ? Math.max(min, max) : 1;
197
+ if (low === high) {
198
+ const share = Math.abs(low) * ZERO_WIDTH_SHARE;
199
+ const padding = share > 0 ? share : ZERO_WIDTH_FALLBACK;
200
+ low -= padding;
201
+ high += padding;
202
+ }
203
+ return [low, high];
204
+ }
205
+ //# sourceMappingURL=chartAxisScale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chartAxisScale.js","sourceRoot":"","sources":["../../../src/chart/core/chartAxisScale.ts"],"names":[],"mappings":"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"}