react-cheminfo 0.8.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 (1397) hide show
  1. package/README.md +309 -20
  2. package/bin/check-tokens.mjs +105 -0
  3. package/lib/about/core/about.d.ts +95 -0
  4. package/lib/about/core/about.d.ts.map +1 -0
  5. package/lib/about/core/about.js +78 -0
  6. package/lib/about/core/about.js.map +1 -0
  7. package/lib/about/core/index.d.ts +3 -0
  8. package/lib/about/core/index.d.ts.map +1 -0
  9. package/lib/about/core/index.js +2 -0
  10. package/lib/about/core/index.js.map +1 -0
  11. package/lib/about/ui/AboutCitations.d.ts +14 -0
  12. package/lib/about/ui/AboutCitations.d.ts.map +1 -0
  13. package/lib/about/ui/AboutCitations.js +40 -0
  14. package/lib/about/ui/AboutCitations.js.map +1 -0
  15. package/lib/about/ui/AboutPage.d.ts +32 -0
  16. package/lib/about/ui/AboutPage.d.ts.map +1 -0
  17. package/lib/about/ui/AboutPage.js +70 -0
  18. package/lib/about/ui/AboutPage.js.map +1 -0
  19. package/lib/about/ui/AboutSection.d.ts +23 -0
  20. package/lib/about/ui/AboutSection.d.ts.map +1 -0
  21. package/lib/about/ui/AboutSection.js +28 -0
  22. package/lib/about/ui/AboutSection.js.map +1 -0
  23. package/lib/about/ui/index.d.ts +7 -0
  24. package/lib/about/ui/index.d.ts.map +1 -0
  25. package/lib/about/ui/index.js +4 -0
  26. package/lib/about/ui/index.js.map +1 -0
  27. package/lib/chart/core/chartAxisScale.d.ts +88 -0
  28. package/lib/chart/core/chartAxisScale.d.ts.map +1 -0
  29. package/lib/chart/core/chartAxisScale.js +205 -0
  30. package/lib/chart/core/chartAxisScale.js.map +1 -0
  31. package/lib/chart/core/chartBand.d.ts +47 -0
  32. package/lib/chart/core/chartBand.d.ts.map +1 -0
  33. package/lib/chart/core/chartBand.js +55 -0
  34. package/lib/chart/core/chartBand.js.map +1 -0
  35. package/lib/chart/core/chartBins.d.ts +32 -0
  36. package/lib/chart/core/chartBins.d.ts.map +1 -0
  37. package/lib/chart/core/chartBins.js +64 -0
  38. package/lib/chart/core/chartBins.js.map +1 -0
  39. package/lib/chart/core/chartExtent.d.ts +105 -0
  40. package/lib/chart/core/chartExtent.d.ts.map +1 -0
  41. package/lib/chart/core/chartExtent.js +134 -0
  42. package/lib/chart/core/chartExtent.js.map +1 -0
  43. package/lib/chart/core/chartLabels.d.ts +49 -0
  44. package/lib/chart/core/chartLabels.d.ts.map +1 -0
  45. package/lib/chart/core/chartLabels.js +44 -0
  46. package/lib/chart/core/chartLabels.js.map +1 -0
  47. package/lib/chart/core/chartPalette.d.ts +33 -0
  48. package/lib/chart/core/chartPalette.d.ts.map +1 -0
  49. package/lib/chart/core/chartPalette.js +51 -0
  50. package/lib/chart/core/chartPalette.js.map +1 -0
  51. package/lib/chart/core/chartScale.d.ts +49 -0
  52. package/lib/chart/core/chartScale.d.ts.map +1 -0
  53. package/lib/chart/core/chartScale.js +53 -0
  54. package/lib/chart/core/chartScale.js.map +1 -0
  55. package/lib/chart/core/chartViewport.d.ts +88 -0
  56. package/lib/chart/core/chartViewport.d.ts.map +1 -0
  57. package/lib/chart/core/chartViewport.js +164 -0
  58. package/lib/chart/core/chartViewport.js.map +1 -0
  59. package/lib/chart/core/index.d.ts +29 -0
  60. package/lib/chart/core/index.d.ts.map +1 -0
  61. package/lib/chart/core/index.js +20 -0
  62. package/lib/chart/core/index.js.map +1 -0
  63. package/lib/chart/core/matrix.d.ts +56 -0
  64. package/lib/chart/core/matrix.d.ts.map +1 -0
  65. package/lib/chart/core/matrix.js +75 -0
  66. package/lib/chart/core/matrix.js.map +1 -0
  67. package/lib/chart/ui/ChartAxis.d.ts +50 -0
  68. package/lib/chart/ui/ChartAxis.d.ts.map +1 -0
  69. package/lib/chart/ui/ChartAxis.js +89 -0
  70. package/lib/chart/ui/ChartAxis.js.map +1 -0
  71. package/lib/chart/ui/ChartFrame.d.ts +136 -0
  72. package/lib/chart/ui/ChartFrame.d.ts.map +1 -0
  73. package/lib/chart/ui/ChartFrame.js +61 -0
  74. package/lib/chart/ui/ChartFrame.js.map +1 -0
  75. package/lib/chart/ui/ChartSeriesMarks.d.ts +44 -0
  76. package/lib/chart/ui/ChartSeriesMarks.d.ts.map +1 -0
  77. package/lib/chart/ui/ChartSeriesMarks.js +48 -0
  78. package/lib/chart/ui/ChartSeriesMarks.js.map +1 -0
  79. package/lib/chart/ui/ChartTrackingLayer.d.ts +54 -0
  80. package/lib/chart/ui/ChartTrackingLayer.d.ts.map +1 -0
  81. package/lib/chart/ui/ChartTrackingLayer.js +98 -0
  82. package/lib/chart/ui/ChartTrackingLayer.js.map +1 -0
  83. package/lib/chart/ui/TrackedLineChart.d.ts +136 -0
  84. package/lib/chart/ui/TrackedLineChart.d.ts.map +1 -0
  85. package/lib/chart/ui/TrackedLineChart.js +90 -0
  86. package/lib/chart/ui/TrackedLineChart.js.map +1 -0
  87. package/lib/chart/ui/TrackedStickChart.d.ts +88 -0
  88. package/lib/chart/ui/TrackedStickChart.d.ts.map +1 -0
  89. package/lib/chart/ui/TrackedStickChart.js +58 -0
  90. package/lib/chart/ui/TrackedStickChart.js.map +1 -0
  91. package/lib/chart/ui/chartStyles.d.ts +141 -0
  92. package/lib/chart/ui/chartStyles.d.ts.map +1 -0
  93. package/lib/chart/ui/chartStyles.js +154 -0
  94. package/lib/chart/ui/chartStyles.js.map +1 -0
  95. package/lib/chart/ui/index.d.ts +20 -0
  96. package/lib/chart/ui/index.d.ts.map +1 -0
  97. package/lib/chart/ui/index.js +13 -0
  98. package/lib/chart/ui/index.js.map +1 -0
  99. package/lib/chart/ui/stickChartModel.d.ts +99 -0
  100. package/lib/chart/ui/stickChartModel.d.ts.map +1 -0
  101. package/lib/chart/ui/stickChartModel.js +140 -0
  102. package/lib/chart/ui/stickChartModel.js.map +1 -0
  103. package/lib/chart/ui/useWheelZoom.d.ts +69 -0
  104. package/lib/chart/ui/useWheelZoom.d.ts.map +1 -0
  105. package/lib/chart/ui/useWheelZoom.js +122 -0
  106. package/lib/chart/ui/useWheelZoom.js.map +1 -0
  107. package/lib/chrome/ui/index.d.ts +1 -0
  108. package/lib/chrome/ui/index.d.ts.map +1 -1
  109. package/lib/chrome/ui/index.js +3 -0
  110. package/lib/chrome/ui/index.js.map +1 -1
  111. package/lib/clipboard/ui/CodeBlock.d.ts.map +1 -1
  112. package/lib/clipboard/ui/CodeBlock.js +4 -1
  113. package/lib/clipboard/ui/CodeBlock.js.map +1 -1
  114. package/lib/color/core/gradient.d.ts +15 -0
  115. package/lib/color/core/gradient.d.ts.map +1 -0
  116. package/lib/color/core/gradient.js +28 -0
  117. package/lib/color/core/gradient.js.map +1 -0
  118. package/lib/color/core/hsv.d.ts +38 -0
  119. package/lib/color/core/hsv.d.ts.map +1 -0
  120. package/lib/color/core/hsv.js +92 -0
  121. package/lib/color/core/hsv.js.map +1 -0
  122. package/lib/color/core/index.d.ts +12 -1
  123. package/lib/color/core/index.d.ts.map +1 -1
  124. package/lib/color/core/index.js +6 -0
  125. package/lib/color/core/index.js.map +1 -1
  126. package/lib/color/core/interpolate.d.ts +67 -0
  127. package/lib/color/core/interpolate.d.ts.map +1 -0
  128. package/lib/color/core/interpolate.js +121 -0
  129. package/lib/color/core/interpolate.js.map +1 -0
  130. package/lib/color/core/scale.d.ts +11 -15
  131. package/lib/color/core/scale.d.ts.map +1 -1
  132. package/lib/color/core/scale.js +14 -41
  133. package/lib/color/core/scale.js.map +1 -1
  134. package/lib/color/core/scaleData.d.ts +19 -0
  135. package/lib/color/core/scaleData.d.ts.map +1 -0
  136. package/lib/color/core/scaleData.js +120 -0
  137. package/lib/color/core/scaleData.js.map +1 -0
  138. package/lib/color/core/scaleText.d.ts +43 -0
  139. package/lib/color/core/scaleText.d.ts.map +1 -0
  140. package/lib/color/core/scaleText.js +109 -0
  141. package/lib/color/core/scaleText.js.map +1 -0
  142. package/lib/color/core/scales.d.ts +42 -0
  143. package/lib/color/core/scales.d.ts.map +1 -0
  144. package/lib/color/core/scales.js +110 -0
  145. package/lib/color/core/scales.js.map +1 -0
  146. package/lib/color/ui/ColorScaleBar.d.ts +39 -0
  147. package/lib/color/ui/ColorScaleBar.d.ts.map +1 -0
  148. package/lib/color/ui/ColorScaleBar.js +27 -0
  149. package/lib/color/ui/ColorScaleBar.js.map +1 -0
  150. package/lib/color/ui/ColorScaleEditor.d.ts +21 -0
  151. package/lib/color/ui/ColorScaleEditor.d.ts.map +1 -0
  152. package/lib/color/ui/ColorScaleEditor.js +141 -0
  153. package/lib/color/ui/ColorScaleEditor.js.map +1 -0
  154. package/lib/color/ui/ColorScaleLegend.js +1 -1
  155. package/lib/color/ui/ColorScaleLegend.js.map +1 -1
  156. package/lib/color/ui/ColorScaleSelect.d.ts +38 -0
  157. package/lib/color/ui/ColorScaleSelect.d.ts.map +1 -0
  158. package/lib/color/ui/ColorScaleSelect.js +109 -0
  159. package/lib/color/ui/ColorScaleSelect.js.map +1 -0
  160. package/lib/color/ui/index.d.ts +6 -0
  161. package/lib/color/ui/index.d.ts.map +1 -1
  162. package/lib/color/ui/index.js +3 -0
  163. package/lib/color/ui/index.js.map +1 -1
  164. package/lib/core.d.ts +8 -0
  165. package/lib/core.d.ts.map +1 -1
  166. package/lib/core.js +10 -0
  167. package/lib/core.js.map +1 -1
  168. package/lib/credits/core/credits.d.ts +53 -0
  169. package/lib/credits/core/credits.d.ts.map +1 -1
  170. package/lib/credits/core/credits.js +62 -0
  171. package/lib/credits/core/credits.js.map +1 -1
  172. package/lib/credits/ui/CreditsList.js +1 -1
  173. package/lib/credits/ui/CreditsList.js.map +1 -1
  174. package/lib/delimited/ui/DelimitedTextPanel.js +1 -1
  175. package/lib/delimited/ui/DelimitedTextPanel.js.map +1 -1
  176. package/lib/download/core/cssTokens.d.ts +33 -0
  177. package/lib/download/core/cssTokens.d.ts.map +1 -0
  178. package/lib/download/core/cssTokens.js +82 -0
  179. package/lib/download/core/cssTokens.js.map +1 -0
  180. package/lib/download/core/downloadFigure.d.ts +39 -0
  181. package/lib/download/core/downloadFigure.d.ts.map +1 -0
  182. package/lib/download/core/downloadFigure.js +35 -0
  183. package/lib/download/core/downloadFigure.js.map +1 -0
  184. package/lib/download/core/figurePng.d.ts +21 -0
  185. package/lib/download/core/figurePng.d.ts.map +1 -0
  186. package/lib/download/core/figurePng.js +76 -0
  187. package/lib/download/core/figurePng.js.map +1 -0
  188. package/lib/download/core/figureScale.d.ts +61 -0
  189. package/lib/download/core/figureScale.d.ts.map +1 -0
  190. package/lib/download/core/figureScale.js +67 -0
  191. package/lib/download/core/figureScale.js.map +1 -0
  192. package/lib/download/core/figureSvg.d.ts +37 -0
  193. package/lib/download/core/figureSvg.d.ts.map +1 -0
  194. package/lib/download/core/figureSvg.js +94 -0
  195. package/lib/download/core/figureSvg.js.map +1 -0
  196. package/lib/download/core/figureSvgDocument.d.ts +55 -0
  197. package/lib/download/core/figureSvgDocument.d.ts.map +1 -0
  198. package/lib/download/core/figureSvgDocument.js +79 -0
  199. package/lib/download/core/figureSvgDocument.js.map +1 -0
  200. package/lib/download/core/figureTarget.d.ts +56 -0
  201. package/lib/download/core/figureTarget.d.ts.map +1 -0
  202. package/lib/download/core/figureTarget.js +119 -0
  203. package/lib/download/core/figureTarget.js.map +1 -0
  204. package/lib/download/core/index.d.ts +12 -0
  205. package/lib/download/core/index.d.ts.map +1 -1
  206. package/lib/download/core/index.js +7 -0
  207. package/lib/download/core/index.js.map +1 -1
  208. package/lib/download/ui/FigureDownload.d.ts +81 -0
  209. package/lib/download/ui/FigureDownload.d.ts.map +1 -0
  210. package/lib/download/ui/FigureDownload.js +65 -0
  211. package/lib/download/ui/FigureDownload.js.map +1 -0
  212. package/lib/download/ui/FigureDownloadPanel.d.ts +45 -0
  213. package/lib/download/ui/FigureDownloadPanel.d.ts.map +1 -0
  214. package/lib/download/ui/FigureDownloadPanel.js +86 -0
  215. package/lib/download/ui/FigureDownloadPanel.js.map +1 -0
  216. package/lib/download/ui/index.d.ts +13 -0
  217. package/lib/download/ui/index.d.ts.map +1 -0
  218. package/lib/download/ui/index.js +11 -0
  219. package/lib/download/ui/index.js.map +1 -0
  220. package/lib/ecosystem/core/sites.d.ts +1 -1
  221. package/lib/ecosystem/core/sites.d.ts.map +1 -1
  222. package/lib/ecosystem/core/sites.js +20 -0
  223. package/lib/ecosystem/core/sites.js.map +1 -1
  224. package/lib/ecosystem/core/tokens.d.ts.map +1 -1
  225. package/lib/ecosystem/core/tokens.js +1 -0
  226. package/lib/ecosystem/core/tokens.js.map +1 -1
  227. package/lib/ecosystem/ui/EcosystemLinks.js +2 -2
  228. package/lib/ecosystem/ui/EcosystemLinks.js.map +1 -1
  229. package/lib/ecosystem/ui/EcosystemMenu.js +1 -1
  230. package/lib/ecosystem/ui/EcosystemMenu.js.map +1 -1
  231. package/lib/ecosystem/ui/SiteTile.d.ts.map +1 -1
  232. package/lib/ecosystem/ui/SiteTile.js +5 -5
  233. package/lib/ecosystem/ui/SiteTile.js.map +1 -1
  234. package/lib/ecosystem/ui/glyphs.d.ts.map +1 -1
  235. package/lib/ecosystem/ui/glyphs.js +7 -0
  236. package/lib/ecosystem/ui/glyphs.js.map +1 -1
  237. package/lib/orbital/core/index.d.ts +1 -1
  238. package/lib/orbital/core/index.d.ts.map +1 -1
  239. package/lib/orbital/core/index.js +1 -1
  240. package/lib/orbital/core/index.js.map +1 -1
  241. package/lib/orbital/core/realHarmonics.d.ts +5 -2
  242. package/lib/orbital/core/realHarmonics.d.ts.map +1 -1
  243. package/lib/orbital/core/realHarmonics.js.map +1 -1
  244. package/lib/orbital/ui/AtomicOrbitalCanvas.d.ts +18 -0
  245. package/lib/orbital/ui/AtomicOrbitalCanvas.d.ts.map +1 -1
  246. package/lib/orbital/ui/AtomicOrbitalCanvas.js +84 -7
  247. package/lib/orbital/ui/AtomicOrbitalCanvas.js.map +1 -1
  248. package/lib/orbital/ui/AtomicOrbitalViewer.d.ts +13 -0
  249. package/lib/orbital/ui/AtomicOrbitalViewer.d.ts.map +1 -1
  250. package/lib/orbital/ui/AtomicOrbitalViewer.js +1 -1
  251. package/lib/orbital/ui/AtomicOrbitalViewer.js.map +1 -1
  252. package/lib/orbital/ui/camera.d.ts +15 -0
  253. package/lib/orbital/ui/camera.d.ts.map +1 -1
  254. package/lib/orbital/ui/camera.js +68 -0
  255. package/lib/orbital/ui/camera.js.map +1 -1
  256. package/lib/orbital/ui/renderVolume.d.ts.map +1 -1
  257. package/lib/orbital/ui/renderVolume.js +8 -1
  258. package/lib/orbital/ui/renderVolume.js.map +1 -1
  259. package/lib/orbital/ui/serial.d.ts +25 -0
  260. package/lib/orbital/ui/serial.d.ts.map +1 -0
  261. package/lib/orbital/ui/serial.js +25 -0
  262. package/lib/orbital/ui/serial.js.map +1 -0
  263. package/lib/orbital/ui/viewer.d.ts +23 -0
  264. package/lib/orbital/ui/viewer.d.ts.map +1 -1
  265. package/lib/orbital/ui/viewer.js +70 -17
  266. package/lib/orbital/ui/viewer.js.map +1 -1
  267. package/lib/overlay/core/emptiestCorner.d.ts +47 -0
  268. package/lib/overlay/core/emptiestCorner.d.ts.map +1 -0
  269. package/lib/overlay/core/emptiestCorner.js +84 -0
  270. package/lib/overlay/core/emptiestCorner.js.map +1 -0
  271. package/lib/overlay/core/index.d.ts +23 -0
  272. package/lib/overlay/core/index.d.ts.map +1 -0
  273. package/lib/overlay/core/index.js +16 -0
  274. package/lib/overlay/core/index.js.map +1 -0
  275. package/lib/overlay/core/overlayCollapse.d.ts +14 -0
  276. package/lib/overlay/core/overlayCollapse.d.ts.map +1 -0
  277. package/lib/overlay/core/overlayCollapse.js +20 -0
  278. package/lib/overlay/core/overlayCollapse.js.map +1 -0
  279. package/lib/overlay/core/overlayMarks.d.ts +31 -0
  280. package/lib/overlay/core/overlayMarks.d.ts.map +1 -0
  281. package/lib/overlay/core/overlayMarks.js +38 -0
  282. package/lib/overlay/core/overlayMarks.js.map +1 -0
  283. package/lib/overlay/core/overlayMetrics.d.ts +41 -0
  284. package/lib/overlay/core/overlayMetrics.d.ts.map +1 -0
  285. package/lib/overlay/core/overlayMetrics.js +73 -0
  286. package/lib/overlay/core/overlayMetrics.js.map +1 -0
  287. package/lib/overlay/core/overlayPlacement.d.ts +60 -0
  288. package/lib/overlay/core/overlayPlacement.d.ts.map +1 -0
  289. package/lib/overlay/core/overlayPlacement.js +24 -0
  290. package/lib/overlay/core/overlayPlacement.js.map +1 -0
  291. package/lib/overlay/core/overlayTierRoom.d.ts +89 -0
  292. package/lib/overlay/core/overlayTierRoom.d.ts.map +1 -0
  293. package/lib/overlay/core/overlayTierRoom.js +135 -0
  294. package/lib/overlay/core/overlayTierRoom.js.map +1 -0
  295. package/lib/overlay/core/overlayTiers.d.ts +71 -0
  296. package/lib/overlay/core/overlayTiers.d.ts.map +1 -0
  297. package/lib/overlay/core/overlayTiers.js +89 -0
  298. package/lib/overlay/core/overlayTiers.js.map +1 -0
  299. package/lib/overlay/core/placeOverlayCard.d.ts +47 -0
  300. package/lib/overlay/core/placeOverlayCard.d.ts.map +1 -0
  301. package/lib/overlay/core/placeOverlayCard.js +42 -0
  302. package/lib/overlay/core/placeOverlayCard.js.map +1 -0
  303. package/lib/overlay/ui/OverlayAction.d.ts +32 -0
  304. package/lib/overlay/ui/OverlayAction.d.ts.map +1 -0
  305. package/lib/overlay/ui/OverlayAction.js +19 -0
  306. package/lib/overlay/ui/OverlayAction.js.map +1 -0
  307. package/lib/overlay/ui/OverlayBar.d.ts +122 -0
  308. package/lib/overlay/ui/OverlayBar.d.ts.map +1 -0
  309. package/lib/overlay/ui/OverlayBar.js +42 -0
  310. package/lib/overlay/ui/OverlayBar.js.map +1 -0
  311. package/lib/overlay/ui/OverlayBarButton.d.ts +38 -0
  312. package/lib/overlay/ui/OverlayBarButton.d.ts.map +1 -0
  313. package/lib/overlay/ui/OverlayBarButton.js +40 -0
  314. package/lib/overlay/ui/OverlayBarButton.js.map +1 -0
  315. package/lib/overlay/ui/OverlayBarCard.d.ts +25 -0
  316. package/lib/overlay/ui/OverlayBarCard.d.ts.map +1 -0
  317. package/lib/overlay/ui/OverlayBarCard.js +28 -0
  318. package/lib/overlay/ui/OverlayBarCard.js.map +1 -0
  319. package/lib/overlay/ui/OverlayBarStrip.d.ts +18 -0
  320. package/lib/overlay/ui/OverlayBarStrip.d.ts.map +1 -0
  321. package/lib/overlay/ui/OverlayBarStrip.js +26 -0
  322. package/lib/overlay/ui/OverlayBarStrip.js.map +1 -0
  323. package/lib/overlay/ui/OverlayCaption.d.ts +52 -0
  324. package/lib/overlay/ui/OverlayCaption.d.ts.map +1 -0
  325. package/lib/overlay/ui/OverlayCaption.js +62 -0
  326. package/lib/overlay/ui/OverlayCaption.js.map +1 -0
  327. package/lib/overlay/ui/OverlayChip.d.ts +60 -0
  328. package/lib/overlay/ui/OverlayChip.d.ts.map +1 -0
  329. package/lib/overlay/ui/OverlayChip.js +73 -0
  330. package/lib/overlay/ui/OverlayChip.js.map +1 -0
  331. package/lib/overlay/ui/OverlayDivider.d.ts +11 -0
  332. package/lib/overlay/ui/OverlayDivider.d.ts.map +1 -0
  333. package/lib/overlay/ui/OverlayDivider.js +16 -0
  334. package/lib/overlay/ui/OverlayDivider.js.map +1 -0
  335. package/lib/overlay/ui/OverlayGroup.d.ts +53 -0
  336. package/lib/overlay/ui/OverlayGroup.d.ts.map +1 -0
  337. package/lib/overlay/ui/OverlayGroup.js +63 -0
  338. package/lib/overlay/ui/OverlayGroup.js.map +1 -0
  339. package/lib/overlay/ui/OverlayIconButton.d.ts +75 -0
  340. package/lib/overlay/ui/OverlayIconButton.d.ts.map +1 -0
  341. package/lib/overlay/ui/OverlayIconButton.js +43 -0
  342. package/lib/overlay/ui/OverlayIconButton.js.map +1 -0
  343. package/lib/overlay/ui/OverlayInfo.d.ts +43 -0
  344. package/lib/overlay/ui/OverlayInfo.d.ts.map +1 -0
  345. package/lib/overlay/ui/OverlayInfo.js +47 -0
  346. package/lib/overlay/ui/OverlayInfo.js.map +1 -0
  347. package/lib/overlay/ui/OverlayLayer.d.ts +54 -0
  348. package/lib/overlay/ui/OverlayLayer.d.ts.map +1 -0
  349. package/lib/overlay/ui/OverlayLayer.js +50 -0
  350. package/lib/overlay/ui/OverlayLayer.js.map +1 -0
  351. package/lib/overlay/ui/OverlayLegend.d.ts +75 -0
  352. package/lib/overlay/ui/OverlayLegend.d.ts.map +1 -0
  353. package/lib/overlay/ui/OverlayLegend.js +81 -0
  354. package/lib/overlay/ui/OverlayLegend.js.map +1 -0
  355. package/lib/overlay/ui/OverlayLegendMark.d.ts +36 -0
  356. package/lib/overlay/ui/OverlayLegendMark.d.ts.map +1 -0
  357. package/lib/overlay/ui/OverlayLegendMark.js +43 -0
  358. package/lib/overlay/ui/OverlayLegendMark.js.map +1 -0
  359. package/lib/overlay/ui/OverlayNumber.d.ts +43 -0
  360. package/lib/overlay/ui/OverlayNumber.d.ts.map +1 -0
  361. package/lib/overlay/ui/OverlayNumber.js +74 -0
  362. package/lib/overlay/ui/OverlayNumber.js.map +1 -0
  363. package/lib/overlay/ui/OverlayPanel.d.ts +81 -0
  364. package/lib/overlay/ui/OverlayPanel.d.ts.map +1 -0
  365. package/lib/overlay/ui/OverlayPanel.js +42 -0
  366. package/lib/overlay/ui/OverlayPanel.js.map +1 -0
  367. package/lib/overlay/ui/OverlayPills.d.ts +73 -0
  368. package/lib/overlay/ui/OverlayPills.d.ts.map +1 -0
  369. package/lib/overlay/ui/OverlayPills.js +55 -0
  370. package/lib/overlay/ui/OverlayPills.js.map +1 -0
  371. package/lib/overlay/ui/OverlayReadout.d.ts +63 -0
  372. package/lib/overlay/ui/OverlayReadout.d.ts.map +1 -0
  373. package/lib/overlay/ui/OverlayReadout.js +129 -0
  374. package/lib/overlay/ui/OverlayReadout.js.map +1 -0
  375. package/lib/overlay/ui/OverlayRow.d.ts +111 -0
  376. package/lib/overlay/ui/OverlayRow.d.ts.map +1 -0
  377. package/lib/overlay/ui/OverlayRow.js +50 -0
  378. package/lib/overlay/ui/OverlayRow.js.map +1 -0
  379. package/lib/overlay/ui/OverlaySegmented.d.ts +28 -0
  380. package/lib/overlay/ui/OverlaySegmented.d.ts.map +1 -0
  381. package/lib/overlay/ui/OverlaySegmented.js +23 -0
  382. package/lib/overlay/ui/OverlaySegmented.js.map +1 -0
  383. package/lib/overlay/ui/OverlaySelect.d.ts +35 -0
  384. package/lib/overlay/ui/OverlaySelect.d.ts.map +1 -0
  385. package/lib/overlay/ui/OverlaySelect.js +30 -0
  386. package/lib/overlay/ui/OverlaySelect.js.map +1 -0
  387. package/lib/overlay/ui/OverlaySwatchIcon.d.ts +26 -0
  388. package/lib/overlay/ui/OverlaySwatchIcon.d.ts.map +1 -0
  389. package/lib/overlay/ui/OverlaySwatchIcon.js +94 -0
  390. package/lib/overlay/ui/OverlaySwatchIcon.js.map +1 -0
  391. package/lib/overlay/ui/OverlayToggle.d.ts +56 -0
  392. package/lib/overlay/ui/OverlayToggle.d.ts.map +1 -0
  393. package/lib/overlay/ui/OverlayToggle.js +42 -0
  394. package/lib/overlay/ui/OverlayToggle.js.map +1 -0
  395. package/lib/overlay/ui/OverlayValueButton.d.ts +80 -0
  396. package/lib/overlay/ui/OverlayValueButton.d.ts.map +1 -0
  397. package/lib/overlay/ui/OverlayValueButton.js +46 -0
  398. package/lib/overlay/ui/OverlayValueButton.js.map +1 -0
  399. package/lib/overlay/ui/OverlayValueMenu.d.ts +68 -0
  400. package/lib/overlay/ui/OverlayValueMenu.d.ts.map +1 -0
  401. package/lib/overlay/ui/OverlayValueMenu.js +40 -0
  402. package/lib/overlay/ui/OverlayValueMenu.js.map +1 -0
  403. package/lib/overlay/ui/index.d.ts +55 -0
  404. package/lib/overlay/ui/index.d.ts.map +1 -0
  405. package/lib/overlay/ui/index.js +33 -0
  406. package/lib/overlay/ui/index.js.map +1 -0
  407. package/lib/overlay/ui/overlayBarShape.d.ts +85 -0
  408. package/lib/overlay/ui/overlayBarShape.d.ts.map +1 -0
  409. package/lib/overlay/ui/overlayBarShape.js +48 -0
  410. package/lib/overlay/ui/overlayBarShape.js.map +1 -0
  411. package/lib/overlay/ui/overlayControlStyles.d.ts +82 -0
  412. package/lib/overlay/ui/overlayControlStyles.d.ts.map +1 -0
  413. package/lib/overlay/ui/overlayControlStyles.js +142 -0
  414. package/lib/overlay/ui/overlayControlStyles.js.map +1 -0
  415. package/lib/overlay/ui/overlayFigureStyles.d.ts +52 -0
  416. package/lib/overlay/ui/overlayFigureStyles.d.ts.map +1 -0
  417. package/lib/overlay/ui/overlayFigureStyles.js +98 -0
  418. package/lib/overlay/ui/overlayFigureStyles.js.map +1 -0
  419. package/lib/overlay/ui/overlayPanelContext.d.ts +34 -0
  420. package/lib/overlay/ui/overlayPanelContext.d.ts.map +1 -0
  421. package/lib/overlay/ui/overlayPanelContext.js +29 -0
  422. package/lib/overlay/ui/overlayPanelContext.js.map +1 -0
  423. package/lib/overlay/ui/overlayPanelStyles.d.ts +112 -0
  424. package/lib/overlay/ui/overlayPanelStyles.d.ts.map +1 -0
  425. package/lib/overlay/ui/overlayPanelStyles.js +193 -0
  426. package/lib/overlay/ui/overlayPanelStyles.js.map +1 -0
  427. package/lib/overlay/ui/overlayPillKeys.d.ts +19 -0
  428. package/lib/overlay/ui/overlayPillKeys.d.ts.map +1 -0
  429. package/lib/overlay/ui/overlayPillKeys.js +33 -0
  430. package/lib/overlay/ui/overlayPillKeys.js.map +1 -0
  431. package/lib/overlay/ui/overlayPillStyles.d.ts +78 -0
  432. package/lib/overlay/ui/overlayPillStyles.d.ts.map +1 -0
  433. package/lib/overlay/ui/overlayPillStyles.js +140 -0
  434. package/lib/overlay/ui/overlayPillStyles.js.map +1 -0
  435. package/lib/overlay/ui/overlayRowStyles.d.ts +113 -0
  436. package/lib/overlay/ui/overlayRowStyles.d.ts.map +1 -0
  437. package/lib/overlay/ui/overlayRowStyles.js +135 -0
  438. package/lib/overlay/ui/overlayRowStyles.js.map +1 -0
  439. package/lib/overlay/ui/overlayStepperStyles.d.ts +51 -0
  440. package/lib/overlay/ui/overlayStepperStyles.d.ts.map +1 -0
  441. package/lib/overlay/ui/overlayStepperStyles.js +96 -0
  442. package/lib/overlay/ui/overlayStepperStyles.js.map +1 -0
  443. package/lib/overlay/ui/overlayStyles.d.ts +123 -0
  444. package/lib/overlay/ui/overlayStyles.d.ts.map +1 -0
  445. package/lib/overlay/ui/overlayStyles.js +203 -0
  446. package/lib/overlay/ui/overlayStyles.js.map +1 -0
  447. package/lib/overlay/ui/overlaySurface.d.ts +54 -0
  448. package/lib/overlay/ui/overlaySurface.d.ts.map +1 -0
  449. package/lib/overlay/ui/overlaySurface.js +85 -0
  450. package/lib/overlay/ui/overlaySurface.js.map +1 -0
  451. package/lib/overlay/ui/overlaySwitchStyles.d.ts +70 -0
  452. package/lib/overlay/ui/overlaySwitchStyles.d.ts.map +1 -0
  453. package/lib/overlay/ui/overlaySwitchStyles.js +102 -0
  454. package/lib/overlay/ui/overlaySwitchStyles.js.map +1 -0
  455. package/lib/overlay/ui/overlayValueStyles.d.ts +101 -0
  456. package/lib/overlay/ui/overlayValueStyles.d.ts.map +1 -0
  457. package/lib/overlay/ui/overlayValueStyles.js +166 -0
  458. package/lib/overlay/ui/overlayValueStyles.js.map +1 -0
  459. package/lib/pedagogy/ui/ExerciseProgressHeader.js +1 -1
  460. package/lib/pedagogy/ui/ExerciseProgressHeader.js.map +1 -1
  461. package/lib/pedagogy/ui/GlossaryText.js +2 -2
  462. package/lib/pedagogy/ui/GlossaryText.js.map +1 -1
  463. package/lib/pedagogy/ui/ReferenceSectionBlock.js +5 -2
  464. package/lib/pedagogy/ui/ReferenceSectionBlock.js.map +1 -1
  465. package/lib/pedagogy/ui/SyntaxTooltip.js +2 -2
  466. package/lib/pedagogy/ui/SyntaxTooltip.js.map +1 -1
  467. package/lib/pedagogy/ui/TutorialStepStrip.js +4 -1
  468. package/lib/pedagogy/ui/TutorialStepStrip.js.map +1 -1
  469. package/lib/periodic/ui/CategoryLegend.js +1 -1
  470. package/lib/periodic/ui/CategoryLegend.js.map +1 -1
  471. package/lib/periodic/ui/PeriodicTableChrome.js +2 -2
  472. package/lib/periodic/ui/PeriodicTableChrome.js.map +1 -1
  473. package/lib/projection/core/embeddingResult.d.ts +60 -0
  474. package/lib/projection/core/embeddingResult.d.ts.map +1 -0
  475. package/lib/projection/core/embeddingResult.js +52 -0
  476. package/lib/projection/core/embeddingResult.js.map +1 -0
  477. package/lib/projection/core/explainedShares.d.ts +51 -0
  478. package/lib/projection/core/explainedShares.d.ts.map +1 -0
  479. package/lib/projection/core/explainedShares.js +55 -0
  480. package/lib/projection/core/explainedShares.js.map +1 -0
  481. package/lib/projection/core/index.d.ts +38 -0
  482. package/lib/projection/core/index.d.ts.map +1 -0
  483. package/lib/projection/core/index.js +25 -0
  484. package/lib/projection/core/index.js.map +1 -0
  485. package/lib/projection/core/loadingProfiles.d.ts +87 -0
  486. package/lib/projection/core/loadingProfiles.d.ts.map +1 -0
  487. package/lib/projection/core/loadingProfiles.js +125 -0
  488. package/lib/projection/core/loadingProfiles.js.map +1 -0
  489. package/lib/projection/core/pcaLike.d.ts +32 -0
  490. package/lib/projection/core/pcaLike.d.ts.map +1 -0
  491. package/lib/projection/core/pcaLike.js +2 -0
  492. package/lib/projection/core/pcaLike.js.map +1 -0
  493. package/lib/projection/core/pcaResult.d.ts +86 -0
  494. package/lib/projection/core/pcaResult.d.ts.map +1 -0
  495. package/lib/projection/core/pcaResult.js +122 -0
  496. package/lib/projection/core/pcaResult.js.map +1 -0
  497. package/lib/projection/core/projectionCopy.d.ts +130 -0
  498. package/lib/projection/core/projectionCopy.d.ts.map +1 -0
  499. package/lib/projection/core/projectionCopy.js +111 -0
  500. package/lib/projection/core/projectionCopy.js.map +1 -0
  501. package/lib/projection/core/projectionCopyPatch.d.ts +13 -0
  502. package/lib/projection/core/projectionCopyPatch.d.ts.map +1 -0
  503. package/lib/projection/core/projectionCopyPatch.js +2 -0
  504. package/lib/projection/core/projectionCopyPatch.js.map +1 -0
  505. package/lib/projection/core/projectionOptions.d.ts +131 -0
  506. package/lib/projection/core/projectionOptions.d.ts.map +1 -0
  507. package/lib/projection/core/projectionOptions.js +85 -0
  508. package/lib/projection/core/projectionOptions.js.map +1 -0
  509. package/lib/projection/core/projectionResult.d.ts +119 -0
  510. package/lib/projection/core/projectionResult.d.ts.map +1 -0
  511. package/lib/projection/core/projectionResult.js +2 -0
  512. package/lib/projection/core/projectionResult.js.map +1 -0
  513. package/lib/projection/core/projectionSamples.d.ts +77 -0
  514. package/lib/projection/core/projectionSamples.d.ts.map +1 -0
  515. package/lib/projection/core/projectionSamples.js +81 -0
  516. package/lib/projection/core/projectionSamples.js.map +1 -0
  517. package/lib/projection/core/projectionStrings.d.ts +134 -0
  518. package/lib/projection/core/projectionStrings.d.ts.map +1 -0
  519. package/lib/projection/core/projectionStrings.js +168 -0
  520. package/lib/projection/core/projectionStrings.js.map +1 -0
  521. package/lib/projection/core/projectionTabDefaults.d.ts +18 -0
  522. package/lib/projection/core/projectionTabDefaults.d.ts.map +1 -0
  523. package/lib/projection/core/projectionTabDefaults.js +46 -0
  524. package/lib/projection/core/projectionTabDefaults.js.map +1 -0
  525. package/lib/projection/core/projectionTabs.d.ts +25 -0
  526. package/lib/projection/core/projectionTabs.d.ts.map +1 -0
  527. package/lib/projection/core/projectionTabs.js +51 -0
  528. package/lib/projection/core/projectionTabs.js.map +1 -0
  529. package/lib/projection/core/variableAxis.d.ts +106 -0
  530. package/lib/projection/core/variableAxis.d.ts.map +1 -0
  531. package/lib/projection/core/variableAxis.js +84 -0
  532. package/lib/projection/core/variableAxis.js.map +1 -0
  533. package/lib/projection/core/variablesView.d.ts +33 -0
  534. package/lib/projection/core/variablesView.d.ts.map +1 -0
  535. package/lib/projection/core/variablesView.js +49 -0
  536. package/lib/projection/core/variablesView.js.map +1 -0
  537. package/lib/projection/ui/PcaViewer.d.ts +31 -0
  538. package/lib/projection/ui/PcaViewer.d.ts.map +1 -0
  539. package/lib/projection/ui/PcaViewer.js +46 -0
  540. package/lib/projection/ui/PcaViewer.js.map +1 -0
  541. package/lib/projection/ui/ProjectionBar.d.ts +55 -0
  542. package/lib/projection/ui/ProjectionBar.d.ts.map +1 -0
  543. package/lib/projection/ui/ProjectionBar.js +112 -0
  544. package/lib/projection/ui/ProjectionBar.js.map +1 -0
  545. package/lib/projection/ui/ProjectionMapCaption.d.ts +46 -0
  546. package/lib/projection/ui/ProjectionMapCaption.d.ts.map +1 -0
  547. package/lib/projection/ui/ProjectionMapCaption.js +54 -0
  548. package/lib/projection/ui/ProjectionMapCaption.js.map +1 -0
  549. package/lib/projection/ui/ProjectionMapControls.d.ts +67 -0
  550. package/lib/projection/ui/ProjectionMapControls.d.ts.map +1 -0
  551. package/lib/projection/ui/ProjectionMapControls.js +108 -0
  552. package/lib/projection/ui/ProjectionMapControls.js.map +1 -0
  553. package/lib/projection/ui/ProjectionMapLegend.d.ts +39 -0
  554. package/lib/projection/ui/ProjectionMapLegend.d.ts.map +1 -0
  555. package/lib/projection/ui/ProjectionMapLegend.js +29 -0
  556. package/lib/projection/ui/ProjectionMapLegend.js.map +1 -0
  557. package/lib/projection/ui/ProjectionMapMore.d.ts +42 -0
  558. package/lib/projection/ui/ProjectionMapMore.d.ts.map +1 -0
  559. package/lib/projection/ui/ProjectionMapMore.js +74 -0
  560. package/lib/projection/ui/ProjectionMapMore.js.map +1 -0
  561. package/lib/projection/ui/ProjectionMapTab.d.ts +101 -0
  562. package/lib/projection/ui/ProjectionMapTab.d.ts.map +1 -0
  563. package/lib/projection/ui/ProjectionMapTab.js +42 -0
  564. package/lib/projection/ui/ProjectionMapTab.js.map +1 -0
  565. package/lib/projection/ui/ProjectionPairsControls.d.ts +37 -0
  566. package/lib/projection/ui/ProjectionPairsControls.d.ts.map +1 -0
  567. package/lib/projection/ui/ProjectionPairsControls.js +20 -0
  568. package/lib/projection/ui/ProjectionPairsControls.js.map +1 -0
  569. package/lib/projection/ui/ProjectionPairsMore.d.ts +40 -0
  570. package/lib/projection/ui/ProjectionPairsMore.d.ts.map +1 -0
  571. package/lib/projection/ui/ProjectionPairsMore.js +31 -0
  572. package/lib/projection/ui/ProjectionPairsMore.js.map +1 -0
  573. package/lib/projection/ui/ProjectionPairsTab.d.ts +66 -0
  574. package/lib/projection/ui/ProjectionPairsTab.d.ts.map +1 -0
  575. package/lib/projection/ui/ProjectionPairsTab.js +64 -0
  576. package/lib/projection/ui/ProjectionPairsTab.js.map +1 -0
  577. package/lib/projection/ui/ProjectionPanel.d.ts +73 -0
  578. package/lib/projection/ui/ProjectionPanel.d.ts.map +1 -0
  579. package/lib/projection/ui/ProjectionPanel.js +58 -0
  580. package/lib/projection/ui/ProjectionPanel.js.map +1 -0
  581. package/lib/projection/ui/ProjectionReadout.d.ts +65 -0
  582. package/lib/projection/ui/ProjectionReadout.d.ts.map +1 -0
  583. package/lib/projection/ui/ProjectionReadout.js +46 -0
  584. package/lib/projection/ui/ProjectionReadout.js.map +1 -0
  585. package/lib/projection/ui/ProjectionSharesControls.d.ts +34 -0
  586. package/lib/projection/ui/ProjectionSharesControls.d.ts.map +1 -0
  587. package/lib/projection/ui/ProjectionSharesControls.js +20 -0
  588. package/lib/projection/ui/ProjectionSharesControls.js.map +1 -0
  589. package/lib/projection/ui/ProjectionSharesMarks.d.ts +49 -0
  590. package/lib/projection/ui/ProjectionSharesMarks.d.ts.map +1 -0
  591. package/lib/projection/ui/ProjectionSharesMarks.js +110 -0
  592. package/lib/projection/ui/ProjectionSharesMarks.js.map +1 -0
  593. package/lib/projection/ui/ProjectionSharesMore.d.ts +19 -0
  594. package/lib/projection/ui/ProjectionSharesMore.d.ts.map +1 -0
  595. package/lib/projection/ui/ProjectionSharesMore.js +25 -0
  596. package/lib/projection/ui/ProjectionSharesMore.js.map +1 -0
  597. package/lib/projection/ui/ProjectionSharesTab.d.ts +50 -0
  598. package/lib/projection/ui/ProjectionSharesTab.d.ts.map +1 -0
  599. package/lib/projection/ui/ProjectionSharesTab.js +48 -0
  600. package/lib/projection/ui/ProjectionSharesTab.js.map +1 -0
  601. package/lib/projection/ui/ProjectionSurface.d.ts +33 -0
  602. package/lib/projection/ui/ProjectionSurface.d.ts.map +1 -0
  603. package/lib/projection/ui/ProjectionSurface.js +35 -0
  604. package/lib/projection/ui/ProjectionSurface.js.map +1 -0
  605. package/lib/projection/ui/ProjectionTabStrip.d.ts +74 -0
  606. package/lib/projection/ui/ProjectionTabStrip.d.ts.map +1 -0
  607. package/lib/projection/ui/ProjectionTabStrip.js +64 -0
  608. package/lib/projection/ui/ProjectionTabStrip.js.map +1 -0
  609. package/lib/projection/ui/ProjectionVariablesControls.d.ts +33 -0
  610. package/lib/projection/ui/ProjectionVariablesControls.d.ts.map +1 -0
  611. package/lib/projection/ui/ProjectionVariablesControls.js +26 -0
  612. package/lib/projection/ui/ProjectionVariablesControls.js.map +1 -0
  613. package/lib/projection/ui/ProjectionVariablesMore.d.ts +33 -0
  614. package/lib/projection/ui/ProjectionVariablesMore.d.ts.map +1 -0
  615. package/lib/projection/ui/ProjectionVariablesMore.js +55 -0
  616. package/lib/projection/ui/ProjectionVariablesMore.js.map +1 -0
  617. package/lib/projection/ui/ProjectionVariablesTab.d.ts +78 -0
  618. package/lib/projection/ui/ProjectionVariablesTab.d.ts.map +1 -0
  619. package/lib/projection/ui/ProjectionVariablesTab.js +93 -0
  620. package/lib/projection/ui/ProjectionVariablesTab.js.map +1 -0
  621. package/lib/projection/ui/ProjectionViewer.d.ts +32 -0
  622. package/lib/projection/ui/ProjectionViewer.d.ts.map +1 -0
  623. package/lib/projection/ui/ProjectionViewer.js +90 -0
  624. package/lib/projection/ui/ProjectionViewer.js.map +1 -0
  625. package/lib/projection/ui/index.d.ts +19 -0
  626. package/lib/projection/ui/index.d.ts.map +1 -0
  627. package/lib/projection/ui/index.js +15 -0
  628. package/lib/projection/ui/index.js.map +1 -0
  629. package/lib/projection/ui/projectionBarModel.d.ts +92 -0
  630. package/lib/projection/ui/projectionBarModel.d.ts.map +1 -0
  631. package/lib/projection/ui/projectionBarModel.js +140 -0
  632. package/lib/projection/ui/projectionBarModel.js.map +1 -0
  633. package/lib/projection/ui/projectionBarReadings.d.ts +65 -0
  634. package/lib/projection/ui/projectionBarReadings.d.ts.map +1 -0
  635. package/lib/projection/ui/projectionBarReadings.js +121 -0
  636. package/lib/projection/ui/projectionBarReadings.js.map +1 -0
  637. package/lib/projection/ui/projectionBarSlots.d.ts +59 -0
  638. package/lib/projection/ui/projectionBarSlots.d.ts.map +1 -0
  639. package/lib/projection/ui/projectionBarSlots.js +81 -0
  640. package/lib/projection/ui/projectionBarSlots.js.map +1 -0
  641. package/lib/projection/ui/projectionBarStyles.d.ts +102 -0
  642. package/lib/projection/ui/projectionBarStyles.d.ts.map +1 -0
  643. package/lib/projection/ui/projectionBarStyles.js +154 -0
  644. package/lib/projection/ui/projectionBarStyles.js.map +1 -0
  645. package/lib/projection/ui/projectionEllipse.d.ts +50 -0
  646. package/lib/projection/ui/projectionEllipse.d.ts.map +1 -0
  647. package/lib/projection/ui/projectionEllipse.js +101 -0
  648. package/lib/projection/ui/projectionEllipse.js.map +1 -0
  649. package/lib/projection/ui/projectionFormat.d.ts +13 -0
  650. package/lib/projection/ui/projectionFormat.d.ts.map +1 -0
  651. package/lib/projection/ui/projectionFormat.js +19 -0
  652. package/lib/projection/ui/projectionFormat.js.map +1 -0
  653. package/lib/projection/ui/projectionMapChoices.d.ts +31 -0
  654. package/lib/projection/ui/projectionMapChoices.d.ts.map +1 -0
  655. package/lib/projection/ui/projectionMapChoices.js +46 -0
  656. package/lib/projection/ui/projectionMapChoices.js.map +1 -0
  657. package/lib/projection/ui/projectionMapChrome.d.ts +73 -0
  658. package/lib/projection/ui/projectionMapChrome.d.ts.map +1 -0
  659. package/lib/projection/ui/projectionMapChrome.js +135 -0
  660. package/lib/projection/ui/projectionMapChrome.js.map +1 -0
  661. package/lib/projection/ui/projectionMapModel.d.ts +114 -0
  662. package/lib/projection/ui/projectionMapModel.d.ts.map +1 -0
  663. package/lib/projection/ui/projectionMapModel.js +177 -0
  664. package/lib/projection/ui/projectionMapModel.js.map +1 -0
  665. package/lib/projection/ui/projectionMapView.d.ts +59 -0
  666. package/lib/projection/ui/projectionMapView.d.ts.map +1 -0
  667. package/lib/projection/ui/projectionMapView.js +90 -0
  668. package/lib/projection/ui/projectionMapView.js.map +1 -0
  669. package/lib/projection/ui/projectionPairsCeiling.d.ts +29 -0
  670. package/lib/projection/ui/projectionPairsCeiling.d.ts.map +1 -0
  671. package/lib/projection/ui/projectionPairsCeiling.js +29 -0
  672. package/lib/projection/ui/projectionPairsCeiling.js.map +1 -0
  673. package/lib/projection/ui/projectionSelection.d.ts +51 -0
  674. package/lib/projection/ui/projectionSelection.d.ts.map +1 -0
  675. package/lib/projection/ui/projectionSelection.js +66 -0
  676. package/lib/projection/ui/projectionSelection.js.map +1 -0
  677. package/lib/projection/ui/projectionTabInfo.d.ts +59 -0
  678. package/lib/projection/ui/projectionTabInfo.d.ts.map +1 -0
  679. package/lib/projection/ui/projectionTabInfo.js +108 -0
  680. package/lib/projection/ui/projectionTabInfo.js.map +1 -0
  681. package/lib/projection/ui/projectionTabModels.d.ts +49 -0
  682. package/lib/projection/ui/projectionTabModels.d.ts.map +1 -0
  683. package/lib/projection/ui/projectionTabModels.js +59 -0
  684. package/lib/projection/ui/projectionTabModels.js.map +1 -0
  685. package/lib/projection/ui/projectionTabStyles.d.ts +131 -0
  686. package/lib/projection/ui/projectionTabStyles.d.ts.map +1 -0
  687. package/lib/projection/ui/projectionTabStyles.js +134 -0
  688. package/lib/projection/ui/projectionTabStyles.js.map +1 -0
  689. package/lib/projection/ui/projectionVariablesModel.d.ts +104 -0
  690. package/lib/projection/ui/projectionVariablesModel.d.ts.map +1 -0
  691. package/lib/projection/ui/projectionVariablesModel.js +165 -0
  692. package/lib/projection/ui/projectionVariablesModel.js.map +1 -0
  693. package/lib/projection/ui/projectionVariablesWords.d.ts +50 -0
  694. package/lib/projection/ui/projectionVariablesWords.d.ts.map +1 -0
  695. package/lib/projection/ui/projectionVariablesWords.js +91 -0
  696. package/lib/projection/ui/projectionVariablesWords.js.map +1 -0
  697. package/lib/projection/ui/projectionViewChoices.d.ts +31 -0
  698. package/lib/projection/ui/projectionViewChoices.d.ts.map +1 -0
  699. package/lib/projection/ui/projectionViewChoices.js +53 -0
  700. package/lib/projection/ui/projectionViewChoices.js.map +1 -0
  701. package/lib/projection/ui/projectionViewerProps.d.ts +153 -0
  702. package/lib/projection/ui/projectionViewerProps.d.ts.map +1 -0
  703. package/lib/projection/ui/projectionViewerProps.js +9 -0
  704. package/lib/projection/ui/projectionViewerProps.js.map +1 -0
  705. package/lib/projection/ui/useProjectionState.d.ts +63 -0
  706. package/lib/projection/ui/useProjectionState.d.ts.map +1 -0
  707. package/lib/projection/ui/useProjectionState.js +107 -0
  708. package/lib/projection/ui/useProjectionState.js.map +1 -0
  709. package/lib/scatter/core/confidenceEllipse.d.ts +117 -0
  710. package/lib/scatter/core/confidenceEllipse.d.ts.map +1 -0
  711. package/lib/scatter/core/confidenceEllipse.js +132 -0
  712. package/lib/scatter/core/confidenceEllipse.js.map +1 -0
  713. package/lib/scatter/core/ellipseCoverage.d.ts +33 -0
  714. package/lib/scatter/core/ellipseCoverage.d.ts.map +1 -0
  715. package/lib/scatter/core/ellipseCoverage.js +46 -0
  716. package/lib/scatter/core/ellipseCoverage.js.map +1 -0
  717. package/lib/scatter/core/ellipseProjection.d.ts +53 -0
  718. package/lib/scatter/core/ellipseProjection.d.ts.map +1 -0
  719. package/lib/scatter/core/ellipseProjection.js +94 -0
  720. package/lib/scatter/core/ellipseProjection.js.map +1 -0
  721. package/lib/scatter/core/index.d.ts +24 -0
  722. package/lib/scatter/core/index.d.ts.map +1 -0
  723. package/lib/scatter/core/index.js +19 -0
  724. package/lib/scatter/core/index.js.map +1 -0
  725. package/lib/scatter/core/lassoPath.d.ts +60 -0
  726. package/lib/scatter/core/lassoPath.d.ts.map +1 -0
  727. package/lib/scatter/core/lassoPath.js +101 -0
  728. package/lib/scatter/core/lassoPath.js.map +1 -0
  729. package/lib/scatter/core/polygon.d.ts +58 -0
  730. package/lib/scatter/core/polygon.d.ts.map +1 -0
  731. package/lib/scatter/core/polygon.js +140 -0
  732. package/lib/scatter/core/polygon.js.map +1 -0
  733. package/lib/scatter/core/scatterSelection.d.ts +44 -0
  734. package/lib/scatter/core/scatterSelection.d.ts.map +1 -0
  735. package/lib/scatter/core/scatterSelection.js +81 -0
  736. package/lib/scatter/core/scatterSelection.js.map +1 -0
  737. package/lib/scatter/core/screenPoints.d.ts +58 -0
  738. package/lib/scatter/core/screenPoints.d.ts.map +1 -0
  739. package/lib/scatter/core/screenPoints.js +78 -0
  740. package/lib/scatter/core/screenPoints.js.map +1 -0
  741. package/lib/scatter/ui/ScatterEllipseLayer.d.ts +69 -0
  742. package/lib/scatter/ui/ScatterEllipseLayer.d.ts.map +1 -0
  743. package/lib/scatter/ui/ScatterEllipseLayer.js +77 -0
  744. package/lib/scatter/ui/ScatterEllipseLayer.js.map +1 -0
  745. package/lib/scatter/ui/ScatterLabelLayer.d.ts +40 -0
  746. package/lib/scatter/ui/ScatterLabelLayer.d.ts.map +1 -0
  747. package/lib/scatter/ui/ScatterLabelLayer.js +77 -0
  748. package/lib/scatter/ui/ScatterLabelLayer.js.map +1 -0
  749. package/lib/scatter/ui/ScatterMarkLayer.d.ts +68 -0
  750. package/lib/scatter/ui/ScatterMarkLayer.d.ts.map +1 -0
  751. package/lib/scatter/ui/ScatterMarkLayer.js +134 -0
  752. package/lib/scatter/ui/ScatterMarkLayer.js.map +1 -0
  753. package/lib/scatter/ui/ScatterMatrix.d.ts +19 -0
  754. package/lib/scatter/ui/ScatterMatrix.d.ts.map +1 -0
  755. package/lib/scatter/ui/ScatterMatrix.js +125 -0
  756. package/lib/scatter/ui/ScatterMatrix.js.map +1 -0
  757. package/lib/scatter/ui/ScatterMatrixCell.d.ts +24 -0
  758. package/lib/scatter/ui/ScatterMatrixCell.d.ts.map +1 -0
  759. package/lib/scatter/ui/ScatterMatrixCell.js +90 -0
  760. package/lib/scatter/ui/ScatterMatrixCell.js.map +1 -0
  761. package/lib/scatter/ui/ScatterMatrixDiagonal.d.ts +78 -0
  762. package/lib/scatter/ui/ScatterMatrixDiagonal.d.ts.map +1 -0
  763. package/lib/scatter/ui/ScatterMatrixDiagonal.js +83 -0
  764. package/lib/scatter/ui/ScatterMatrixDiagonal.js.map +1 -0
  765. package/lib/scatter/ui/ScatterPlot.d.ts +17 -0
  766. package/lib/scatter/ui/ScatterPlot.d.ts.map +1 -0
  767. package/lib/scatter/ui/ScatterPlot.js +91 -0
  768. package/lib/scatter/ui/ScatterPlot.js.map +1 -0
  769. package/lib/scatter/ui/ScatterPointLayer.d.ts +67 -0
  770. package/lib/scatter/ui/ScatterPointLayer.d.ts.map +1 -0
  771. package/lib/scatter/ui/ScatterPointLayer.js +87 -0
  772. package/lib/scatter/ui/ScatterPointLayer.js.map +1 -0
  773. package/lib/scatter/ui/index.d.ts +53 -0
  774. package/lib/scatter/ui/index.d.ts.map +1 -0
  775. package/lib/scatter/ui/index.js +34 -0
  776. package/lib/scatter/ui/index.js.map +1 -0
  777. package/lib/scatter/ui/lassoGesture.d.ts +185 -0
  778. package/lib/scatter/ui/lassoGesture.d.ts.map +1 -0
  779. package/lib/scatter/ui/lassoGesture.js +100 -0
  780. package/lib/scatter/ui/lassoGesture.js.map +1 -0
  781. package/lib/scatter/ui/scatterGroupSpread.d.ts +81 -0
  782. package/lib/scatter/ui/scatterGroupSpread.d.ts.map +1 -0
  783. package/lib/scatter/ui/scatterGroupSpread.js +147 -0
  784. package/lib/scatter/ui/scatterGroupSpread.js.map +1 -0
  785. package/lib/scatter/ui/scatterLabelBoxes.d.ts +94 -0
  786. package/lib/scatter/ui/scatterLabelBoxes.d.ts.map +1 -0
  787. package/lib/scatter/ui/scatterLabelBoxes.js +140 -0
  788. package/lib/scatter/ui/scatterLabelBoxes.js.map +1 -0
  789. package/lib/scatter/ui/scatterLabelPlacement.d.ts +96 -0
  790. package/lib/scatter/ui/scatterLabelPlacement.d.ts.map +1 -0
  791. package/lib/scatter/ui/scatterLabelPlacement.js +210 -0
  792. package/lib/scatter/ui/scatterLabelPlacement.js.map +1 -0
  793. package/lib/scatter/ui/scatterLabels.d.ts +81 -0
  794. package/lib/scatter/ui/scatterLabels.d.ts.map +1 -0
  795. package/lib/scatter/ui/scatterLabels.js +101 -0
  796. package/lib/scatter/ui/scatterLabels.js.map +1 -0
  797. package/lib/scatter/ui/scatterMarkGlyph.d.ts +37 -0
  798. package/lib/scatter/ui/scatterMarkGlyph.d.ts.map +1 -0
  799. package/lib/scatter/ui/scatterMarkGlyph.js +33 -0
  800. package/lib/scatter/ui/scatterMarkGlyph.js.map +1 -0
  801. package/lib/scatter/ui/scatterMatrixDots.d.ts +24 -0
  802. package/lib/scatter/ui/scatterMatrixDots.d.ts.map +1 -0
  803. package/lib/scatter/ui/scatterMatrixDots.js +84 -0
  804. package/lib/scatter/ui/scatterMatrixDots.js.map +1 -0
  805. package/lib/scatter/ui/scatterMatrixLayout.d.ts +93 -0
  806. package/lib/scatter/ui/scatterMatrixLayout.d.ts.map +1 -0
  807. package/lib/scatter/ui/scatterMatrixLayout.js +117 -0
  808. package/lib/scatter/ui/scatterMatrixLayout.js.map +1 -0
  809. package/lib/scatter/ui/scatterMatrixOutlines.d.ts +27 -0
  810. package/lib/scatter/ui/scatterMatrixOutlines.d.ts.map +1 -0
  811. package/lib/scatter/ui/scatterMatrixOutlines.js +34 -0
  812. package/lib/scatter/ui/scatterMatrixOutlines.js.map +1 -0
  813. package/lib/scatter/ui/scatterMatrixProps.d.ts +99 -0
  814. package/lib/scatter/ui/scatterMatrixProps.d.ts.map +1 -0
  815. package/lib/scatter/ui/scatterMatrixProps.js +10 -0
  816. package/lib/scatter/ui/scatterMatrixProps.js.map +1 -0
  817. package/lib/scatter/ui/scatterOutlineShape.d.ts +63 -0
  818. package/lib/scatter/ui/scatterOutlineShape.d.ts.map +1 -0
  819. package/lib/scatter/ui/scatterOutlineShape.js +82 -0
  820. package/lib/scatter/ui/scatterOutlineShape.js.map +1 -0
  821. package/lib/scatter/ui/scatterPlotModel.d.ts +107 -0
  822. package/lib/scatter/ui/scatterPlotModel.d.ts.map +1 -0
  823. package/lib/scatter/ui/scatterPlotModel.js +139 -0
  824. package/lib/scatter/ui/scatterPlotModel.js.map +1 -0
  825. package/lib/scatter/ui/scatterPlotProps.d.ts +235 -0
  826. package/lib/scatter/ui/scatterPlotProps.d.ts.map +1 -0
  827. package/lib/scatter/ui/scatterPlotProps.js +10 -0
  828. package/lib/scatter/ui/scatterPlotProps.js.map +1 -0
  829. package/lib/scatter/ui/useLassoGesture.d.ts +18 -0
  830. package/lib/scatter/ui/useLassoGesture.d.ts.map +1 -0
  831. package/lib/scatter/ui/useLassoGesture.js +140 -0
  832. package/lib/scatter/ui/useLassoGesture.js.map +1 -0
  833. package/lib/scatter/ui/usePointHover.d.ts +88 -0
  834. package/lib/scatter/ui/usePointHover.d.ts.map +1 -0
  835. package/lib/scatter/ui/usePointHover.js +88 -0
  836. package/lib/scatter/ui/usePointHover.js.map +1 -0
  837. package/lib/scatter/ui/useScatterFrame.d.ts +80 -0
  838. package/lib/scatter/ui/useScatterFrame.d.ts.map +1 -0
  839. package/lib/scatter/ui/useScatterFrame.js +101 -0
  840. package/lib/scatter/ui/useScatterFrame.js.map +1 -0
  841. package/lib/scatter/ui/useScatterInteraction.d.ts +103 -0
  842. package/lib/scatter/ui/useScatterInteraction.d.ts.map +1 -0
  843. package/lib/scatter/ui/useScatterInteraction.js +93 -0
  844. package/lib/scatter/ui/useScatterInteraction.js.map +1 -0
  845. package/lib/scatter/ui/useScatterKeyboard.d.ts +60 -0
  846. package/lib/scatter/ui/useScatterKeyboard.d.ts.map +1 -0
  847. package/lib/scatter/ui/useScatterKeyboard.js +56 -0
  848. package/lib/scatter/ui/useScatterKeyboard.js.map +1 -0
  849. package/lib/scatter/ui/useScatterSelection.d.ts +78 -0
  850. package/lib/scatter/ui/useScatterSelection.d.ts.map +1 -0
  851. package/lib/scatter/ui/useScatterSelection.js +72 -0
  852. package/lib/scatter/ui/useScatterSelection.js.map +1 -0
  853. package/lib/seo/vite/ogCard.d.ts.map +1 -1
  854. package/lib/seo/vite/ogCard.js +1 -0
  855. package/lib/seo/vite/ogCard.js.map +1 -1
  856. package/lib/share/core/query.d.ts +10 -4
  857. package/lib/share/core/query.d.ts.map +1 -1
  858. package/lib/share/core/query.js +11 -7
  859. package/lib/share/core/query.js.map +1 -1
  860. package/lib/share/ui/ShareDialogContent.d.ts.map +1 -1
  861. package/lib/share/ui/ShareDialogContent.js +5 -2
  862. package/lib/share/ui/ShareDialogContent.js.map +1 -1
  863. package/lib/share/ui/SharePartOptions.js +1 -1
  864. package/lib/share/ui/SharePartOptions.js.map +1 -1
  865. package/lib/slides/core/demoLinks.d.ts +43 -0
  866. package/lib/slides/core/demoLinks.d.ts.map +1 -0
  867. package/lib/slides/core/demoLinks.js +104 -0
  868. package/lib/slides/core/demoLinks.js.map +1 -0
  869. package/lib/slides/core/index.d.ts +13 -0
  870. package/lib/slides/core/index.d.ts.map +1 -0
  871. package/lib/slides/core/index.js +7 -0
  872. package/lib/slides/core/index.js.map +1 -0
  873. package/lib/slides/core/sectionHeading.d.ts +19 -0
  874. package/lib/slides/core/sectionHeading.d.ts.map +1 -0
  875. package/lib/slides/core/sectionHeading.js +19 -0
  876. package/lib/slides/core/sectionHeading.js.map +1 -0
  877. package/lib/slides/core/slideNavigation.d.ts +38 -0
  878. package/lib/slides/core/slideNavigation.d.ts.map +1 -0
  879. package/lib/slides/core/slideNavigation.js +65 -0
  880. package/lib/slides/core/slideNavigation.js.map +1 -0
  881. package/lib/slides/core/talk.d.ts +82 -0
  882. package/lib/slides/core/talk.d.ts.map +1 -0
  883. package/lib/slides/core/talk.js +134 -0
  884. package/lib/slides/core/talk.js.map +1 -0
  885. package/lib/slides/core/talkManifest.d.ts +90 -0
  886. package/lib/slides/core/talkManifest.d.ts.map +1 -0
  887. package/lib/slides/core/talkManifest.js +109 -0
  888. package/lib/slides/core/talkManifest.js.map +1 -0
  889. package/lib/slides/core/talkOrigin.d.ts +50 -0
  890. package/lib/slides/core/talkOrigin.d.ts.map +1 -0
  891. package/lib/slides/core/talkOrigin.js +62 -0
  892. package/lib/slides/core/talkOrigin.js.map +1 -0
  893. package/lib/slides/ui/BackToSlides.d.ts +26 -0
  894. package/lib/slides/ui/BackToSlides.d.ts.map +1 -0
  895. package/lib/slides/ui/BackToSlides.js +24 -0
  896. package/lib/slides/ui/BackToSlides.js.map +1 -0
  897. package/lib/slides/ui/DemoLink.d.ts +42 -0
  898. package/lib/slides/ui/DemoLink.d.ts.map +1 -0
  899. package/lib/slides/ui/DemoLink.js +17 -0
  900. package/lib/slides/ui/DemoLink.js.map +1 -0
  901. package/lib/slides/ui/EmbedSlide.d.ts +19 -0
  902. package/lib/slides/ui/EmbedSlide.d.ts.map +1 -0
  903. package/lib/slides/ui/EmbedSlide.js +56 -0
  904. package/lib/slides/ui/EmbedSlide.js.map +1 -0
  905. package/lib/slides/ui/SectionSlide.d.ts +18 -0
  906. package/lib/slides/ui/SectionSlide.d.ts.map +1 -0
  907. package/lib/slides/ui/SectionSlide.js +18 -0
  908. package/lib/slides/ui/SectionSlide.js.map +1 -0
  909. package/lib/slides/ui/Slide.d.ts +52 -0
  910. package/lib/slides/ui/Slide.d.ts.map +1 -0
  911. package/lib/slides/ui/Slide.js +58 -0
  912. package/lib/slides/ui/Slide.js.map +1 -0
  913. package/lib/slides/ui/SlideBody.d.ts +32 -0
  914. package/lib/slides/ui/SlideBody.d.ts.map +1 -0
  915. package/lib/slides/ui/SlideBody.js +27 -0
  916. package/lib/slides/ui/SlideBody.js.map +1 -0
  917. package/lib/slides/ui/Slideshow.d.ts +93 -0
  918. package/lib/slides/ui/Slideshow.d.ts.map +1 -0
  919. package/lib/slides/ui/Slideshow.js +122 -0
  920. package/lib/slides/ui/Slideshow.js.map +1 -0
  921. package/lib/slides/ui/SlideshowBar.d.ts +33 -0
  922. package/lib/slides/ui/SlideshowBar.d.ts.map +1 -0
  923. package/lib/slides/ui/SlideshowBar.js +20 -0
  924. package/lib/slides/ui/SlideshowBar.js.map +1 -0
  925. package/lib/slides/ui/TalkList.d.ts +37 -0
  926. package/lib/slides/ui/TalkList.d.ts.map +1 -0
  927. package/lib/slides/ui/TalkList.js +68 -0
  928. package/lib/slides/ui/TalkList.js.map +1 -0
  929. package/lib/slides/ui/index.d.ts +19 -0
  930. package/lib/slides/ui/index.d.ts.map +1 -0
  931. package/lib/slides/ui/index.js +10 -0
  932. package/lib/slides/ui/index.js.map +1 -0
  933. package/lib/slides/vite/index.d.ts +3 -0
  934. package/lib/slides/vite/index.d.ts.map +1 -0
  935. package/lib/slides/vite/index.js +2 -0
  936. package/lib/slides/vite/index.js.map +1 -0
  937. package/lib/slides/vite/talks.d.ts +50 -0
  938. package/lib/slides/vite/talks.d.ts.map +1 -0
  939. package/lib/slides/vite/talks.js +87 -0
  940. package/lib/slides/vite/talks.js.map +1 -0
  941. package/lib/slides.d.ts +3 -0
  942. package/lib/slides.d.ts.map +1 -0
  943. package/lib/slides.js +3 -0
  944. package/lib/slides.js.map +1 -0
  945. package/lib/spectra/core/axisEntries.d.ts +50 -0
  946. package/lib/spectra/core/axisEntries.d.ts.map +1 -0
  947. package/lib/spectra/core/axisEntries.js +78 -0
  948. package/lib/spectra/core/axisEntries.js.map +1 -0
  949. package/lib/spectra/core/chainProblems.d.ts +14 -0
  950. package/lib/spectra/core/chainProblems.d.ts.map +1 -0
  951. package/lib/spectra/core/chainProblems.js +100 -0
  952. package/lib/spectra/core/chainProblems.js.map +1 -0
  953. package/lib/spectra/core/filterCatalog.d.ts +57 -0
  954. package/lib/spectra/core/filterCatalog.d.ts.map +1 -0
  955. package/lib/spectra/core/filterCatalog.js +81 -0
  956. package/lib/spectra/core/filterCatalog.js.map +1 -0
  957. package/lib/spectra/core/filterChain.d.ts +69 -0
  958. package/lib/spectra/core/filterChain.d.ts.map +1 -0
  959. package/lib/spectra/core/filterChain.js +163 -0
  960. package/lib/spectra/core/filterChain.js.map +1 -0
  961. package/lib/spectra/core/filterEntries.d.ts +136 -0
  962. package/lib/spectra/core/filterEntries.d.ts.map +1 -0
  963. package/lib/spectra/core/filterEntries.js +139 -0
  964. package/lib/spectra/core/filterEntries.js.map +1 -0
  965. package/lib/spectra/core/filterFields.d.ts +94 -0
  966. package/lib/spectra/core/filterFields.d.ts.map +1 -0
  967. package/lib/spectra/core/filterFields.js +82 -0
  968. package/lib/spectra/core/filterFields.js.map +1 -0
  969. package/lib/spectra/core/index.d.ts +14 -0
  970. package/lib/spectra/core/index.d.ts.map +1 -0
  971. package/lib/spectra/core/index.js +9 -0
  972. package/lib/spectra/core/index.js.map +1 -0
  973. package/lib/spectra/core/principalComponents.d.ts +70 -0
  974. package/lib/spectra/core/principalComponents.d.ts.map +1 -0
  975. package/lib/spectra/core/principalComponents.js +90 -0
  976. package/lib/spectra/core/principalComponents.js.map +1 -0
  977. package/lib/spectra/core/problems.d.ts +57 -0
  978. package/lib/spectra/core/problems.d.ts.map +1 -0
  979. package/lib/spectra/core/problems.js +121 -0
  980. package/lib/spectra/core/problems.js.map +1 -0
  981. package/lib/spectra/core/settings.d.ts +67 -0
  982. package/lib/spectra/core/settings.d.ts.map +1 -0
  983. package/lib/spectra/core/settings.js +35 -0
  984. package/lib/spectra/core/settings.js.map +1 -0
  985. package/lib/spectra/core/settingsProblems.d.ts +18 -0
  986. package/lib/spectra/core/settingsProblems.d.ts.map +1 -0
  987. package/lib/spectra/core/settingsProblems.js +148 -0
  988. package/lib/spectra/core/settingsProblems.js.map +1 -0
  989. package/lib/spectra/core/stepProblems.d.ts +13 -0
  990. package/lib/spectra/core/stepProblems.d.ts.map +1 -0
  991. package/lib/spectra/core/stepProblems.js +133 -0
  992. package/lib/spectra/core/stepProblems.js.map +1 -0
  993. package/lib/spectra/ui/CalculationRows.d.ts +21 -0
  994. package/lib/spectra/ui/CalculationRows.d.ts.map +1 -0
  995. package/lib/spectra/ui/CalculationRows.js +77 -0
  996. package/lib/spectra/ui/CalculationRows.js.map +1 -0
  997. package/lib/spectra/ui/FilterChainEditor.d.ts +34 -0
  998. package/lib/spectra/ui/FilterChainEditor.d.ts.map +1 -0
  999. package/lib/spectra/ui/FilterChainEditor.js +111 -0
  1000. package/lib/spectra/ui/FilterChainEditor.js.map +1 -0
  1001. package/lib/spectra/ui/FilterChoiceControl.d.ts +23 -0
  1002. package/lib/spectra/ui/FilterChoiceControl.d.ts.map +1 -0
  1003. package/lib/spectra/ui/FilterChoiceControl.js +65 -0
  1004. package/lib/spectra/ui/FilterChoiceControl.js.map +1 -0
  1005. package/lib/spectra/ui/FilterFieldControl.d.ts +25 -0
  1006. package/lib/spectra/ui/FilterFieldControl.d.ts.map +1 -0
  1007. package/lib/spectra/ui/FilterFieldControl.js +68 -0
  1008. package/lib/spectra/ui/FilterFieldControl.js.map +1 -0
  1009. package/lib/spectra/ui/FilterRow.d.ts +33 -0
  1010. package/lib/spectra/ui/FilterRow.d.ts.map +1 -0
  1011. package/lib/spectra/ui/FilterRow.js +76 -0
  1012. package/lib/spectra/ui/FilterRow.js.map +1 -0
  1013. package/lib/spectra/ui/MatrixFilterRows.d.ts +22 -0
  1014. package/lib/spectra/ui/MatrixFilterRows.d.ts.map +1 -0
  1015. package/lib/spectra/ui/MatrixFilterRows.js +92 -0
  1016. package/lib/spectra/ui/MatrixFilterRows.js.map +1 -0
  1017. package/lib/spectra/ui/NormalizationEditor.d.ts +24 -0
  1018. package/lib/spectra/ui/NormalizationEditor.d.ts.map +1 -0
  1019. package/lib/spectra/ui/NormalizationEditor.js +108 -0
  1020. package/lib/spectra/ui/NormalizationEditor.js.map +1 -0
  1021. package/lib/spectra/ui/NumberField.d.ts +41 -0
  1022. package/lib/spectra/ui/NumberField.d.ts.map +1 -0
  1023. package/lib/spectra/ui/NumberField.js +81 -0
  1024. package/lib/spectra/ui/NumberField.js.map +1 -0
  1025. package/lib/spectra/ui/PostProcessingEditor.d.ts +29 -0
  1026. package/lib/spectra/ui/PostProcessingEditor.d.ts.map +1 -0
  1027. package/lib/spectra/ui/PostProcessingEditor.js +53 -0
  1028. package/lib/spectra/ui/PostProcessingEditor.js.map +1 -0
  1029. package/lib/spectra/ui/PrincipalComponentSelect.d.ts +40 -0
  1030. package/lib/spectra/ui/PrincipalComponentSelect.d.ts.map +1 -0
  1031. package/lib/spectra/ui/PrincipalComponentSelect.js +97 -0
  1032. package/lib/spectra/ui/PrincipalComponentSelect.js.map +1 -0
  1033. package/lib/spectra/ui/ProblemList.d.ts +24 -0
  1034. package/lib/spectra/ui/ProblemList.d.ts.map +1 -0
  1035. package/lib/spectra/ui/ProblemList.js +40 -0
  1036. package/lib/spectra/ui/ProblemList.js.map +1 -0
  1037. package/lib/spectra/ui/RangeRows.d.ts +23 -0
  1038. package/lib/spectra/ui/RangeRows.d.ts.map +1 -0
  1039. package/lib/spectra/ui/RangeRows.js +76 -0
  1040. package/lib/spectra/ui/RangeRows.js.map +1 -0
  1041. package/lib/spectra/ui/ScaleFields.d.ts +28 -0
  1042. package/lib/spectra/ui/ScaleFields.d.ts.map +1 -0
  1043. package/lib/spectra/ui/ScaleFields.js +67 -0
  1044. package/lib/spectra/ui/ScaleFields.js.map +1 -0
  1045. package/lib/spectra/ui/SettingsPart.d.ts +25 -0
  1046. package/lib/spectra/ui/SettingsPart.d.ts.map +1 -0
  1047. package/lib/spectra/ui/SettingsPart.js +35 -0
  1048. package/lib/spectra/ui/SettingsPart.js.map +1 -0
  1049. package/lib/spectra/ui/SpectraSettingsEditor.d.ts +62 -0
  1050. package/lib/spectra/ui/SpectraSettingsEditor.d.ts.map +1 -0
  1051. package/lib/spectra/ui/SpectraSettingsEditor.js +39 -0
  1052. package/lib/spectra/ui/SpectraSettingsEditor.js.map +1 -0
  1053. package/lib/spectra/ui/SpectrumSelection.d.ts +30 -0
  1054. package/lib/spectra/ui/SpectrumSelection.d.ts.map +1 -0
  1055. package/lib/spectra/ui/SpectrumSelection.js +116 -0
  1056. package/lib/spectra/ui/SpectrumSelection.js.map +1 -0
  1057. package/lib/spectra/ui/ZoneRows.d.ts +41 -0
  1058. package/lib/spectra/ui/ZoneRows.d.ts.map +1 -0
  1059. package/lib/spectra/ui/ZoneRows.js +70 -0
  1060. package/lib/spectra/ui/ZoneRows.js.map +1 -0
  1061. package/lib/spectra/ui/index.d.ts +7 -0
  1062. package/lib/spectra/ui/index.d.ts.map +1 -0
  1063. package/lib/spectra/ui/index.js +4 -0
  1064. package/lib/spectra/ui/index.js.map +1 -0
  1065. package/lib/spectra/ui/matrixSteps.d.ts +61 -0
  1066. package/lib/spectra/ui/matrixSteps.d.ts.map +1 -0
  1067. package/lib/spectra/ui/matrixSteps.js +92 -0
  1068. package/lib/spectra/ui/matrixSteps.js.map +1 -0
  1069. package/lib/spectra/ui/problemsAbout.d.ts +14 -0
  1070. package/lib/spectra/ui/problemsAbout.d.ts.map +1 -0
  1071. package/lib/spectra/ui/problemsAbout.js +15 -0
  1072. package/lib/spectra/ui/problemsAbout.js.map +1 -0
  1073. package/lib/spectra/ui/rowKeys.d.ts +27 -0
  1074. package/lib/spectra/ui/rowKeys.d.ts.map +1 -0
  1075. package/lib/spectra/ui/rowKeys.js +45 -0
  1076. package/lib/spectra/ui/rowKeys.js.map +1 -0
  1077. package/lib/spectra/ui/scaleOptions.d.ts +50 -0
  1078. package/lib/spectra/ui/scaleOptions.d.ts.map +1 -0
  1079. package/lib/spectra/ui/scaleOptions.js +103 -0
  1080. package/lib/spectra/ui/scaleOptions.js.map +1 -0
  1081. package/lib/structure/ui/StructureEditor.js +2 -2
  1082. package/lib/structure/ui/StructureEditor.js.map +1 -1
  1083. package/lib/structure/ui/StructurePlaceholder.js +1 -1
  1084. package/lib/structure/ui/StructurePlaceholder.js.map +1 -1
  1085. package/lib/tokens/core/checkTokens.d.ts +51 -0
  1086. package/lib/tokens/core/checkTokens.d.ts.map +1 -0
  1087. package/lib/tokens/core/checkTokens.js +188 -0
  1088. package/lib/tokens/core/checkTokens.js.map +1 -0
  1089. package/lib/tokens/core/colors.d.ts +42 -0
  1090. package/lib/tokens/core/colors.d.ts.map +1 -0
  1091. package/lib/tokens/core/colors.js +119 -0
  1092. package/lib/tokens/core/colors.js.map +1 -0
  1093. package/lib/tokens/core/index.d.ts +3 -0
  1094. package/lib/tokens/core/index.d.ts.map +1 -0
  1095. package/lib/tokens/core/index.js +2 -0
  1096. package/lib/tokens/core/index.js.map +1 -0
  1097. package/lib/tokens/core/rules.d.ts +23 -0
  1098. package/lib/tokens/core/rules.d.ts.map +1 -0
  1099. package/lib/tokens/core/rules.js +90 -0
  1100. package/lib/tokens/core/rules.js.map +1 -0
  1101. package/lib/ui.d.ts +7 -0
  1102. package/lib/ui.d.ts.map +1 -1
  1103. package/lib/ui.js +7 -0
  1104. package/lib/ui.js.map +1 -1
  1105. package/lib/vite.d.ts +1 -0
  1106. package/lib/vite.d.ts.map +1 -1
  1107. package/lib/vite.js +1 -0
  1108. package/lib/vite.js.map +1 -1
  1109. package/package.json +27 -3
  1110. package/src/about/core/about.ts +176 -0
  1111. package/src/about/core/index.ts +2 -0
  1112. package/src/about/ui/AboutCitations.tsx +79 -0
  1113. package/src/about/ui/AboutPage.tsx +177 -0
  1114. package/src/about/ui/AboutSection.tsx +56 -0
  1115. package/src/about/ui/index.ts +6 -0
  1116. package/src/chart/core/chartAxisScale.ts +249 -0
  1117. package/src/chart/core/chartBand.ts +82 -0
  1118. package/src/chart/core/chartBins.ts +96 -0
  1119. package/src/chart/core/chartExtent.ts +203 -0
  1120. package/src/chart/core/chartLabels.ts +68 -0
  1121. package/src/chart/core/chartPalette.ts +71 -0
  1122. package/src/chart/core/chartScale.ts +72 -0
  1123. package/src/chart/core/chartViewport.ts +211 -0
  1124. package/src/chart/core/index.ts +58 -0
  1125. package/src/chart/core/matrix.ts +100 -0
  1126. package/src/chart/ui/ChartAxis.tsx +232 -0
  1127. package/src/chart/ui/ChartFrame.tsx +246 -0
  1128. package/src/chart/ui/ChartSeriesMarks.tsx +98 -0
  1129. package/src/chart/ui/ChartTrackingLayer.tsx +192 -0
  1130. package/src/chart/ui/TrackedLineChart.tsx +267 -0
  1131. package/src/chart/ui/TrackedStickChart.tsx +197 -0
  1132. package/src/chart/ui/chartStyles.ts +194 -0
  1133. package/src/chart/ui/index.ts +34 -0
  1134. package/src/chart/ui/stickChartModel.ts +201 -0
  1135. package/src/chart/ui/useWheelZoom.ts +177 -0
  1136. package/src/chrome/ui/index.ts +3 -0
  1137. package/src/clipboard/ui/CodeBlock.tsx +4 -1
  1138. package/src/color/core/gradient.ts +29 -0
  1139. package/src/color/core/hsv.ts +112 -0
  1140. package/src/color/core/index.ts +27 -1
  1141. package/src/color/core/interpolate.ts +179 -0
  1142. package/src/color/core/scale.ts +17 -49
  1143. package/src/color/core/scaleData.ts +128 -0
  1144. package/src/color/core/scaleText.ts +134 -0
  1145. package/src/color/core/scales.ts +148 -0
  1146. package/src/color/ui/ColorScaleBar.tsx +73 -0
  1147. package/src/color/ui/ColorScaleEditor.tsx +243 -0
  1148. package/src/color/ui/ColorScaleLegend.tsx +1 -1
  1149. package/src/color/ui/ColorScaleSelect.tsx +252 -0
  1150. package/src/color/ui/index.ts +6 -0
  1151. package/src/core.ts +10 -0
  1152. package/src/credits/core/credits.ts +62 -0
  1153. package/src/credits/ui/CreditsList.tsx +1 -1
  1154. package/src/delimited/ui/DelimitedTextPanel.tsx +1 -1
  1155. package/src/download/core/cssTokens.ts +90 -0
  1156. package/src/download/core/downloadFigure.ts +66 -0
  1157. package/src/download/core/figurePng.ts +87 -0
  1158. package/src/download/core/figureScale.ts +83 -0
  1159. package/src/download/core/figureSvg.ts +130 -0
  1160. package/src/download/core/figureSvgDocument.ts +129 -0
  1161. package/src/download/core/figureTarget.ts +130 -0
  1162. package/src/download/core/index.ts +28 -0
  1163. package/src/download/ui/FigureDownload.tsx +158 -0
  1164. package/src/download/ui/FigureDownloadPanel.tsx +165 -0
  1165. package/src/download/ui/index.ts +13 -0
  1166. package/src/ecosystem/core/sites.ts +24 -1
  1167. package/src/ecosystem/core/tokens.ts +1 -0
  1168. package/src/ecosystem/ui/EcosystemLinks.tsx +2 -2
  1169. package/src/ecosystem/ui/EcosystemMenu.tsx +1 -1
  1170. package/src/ecosystem/ui/SiteTile.tsx +7 -5
  1171. package/src/ecosystem/ui/glyphs.tsx +56 -0
  1172. package/src/orbital/core/index.ts +4 -1
  1173. package/src/orbital/core/realHarmonics.ts +5 -2
  1174. package/src/orbital/ui/AtomicOrbitalCanvas.tsx +126 -4
  1175. package/src/orbital/ui/AtomicOrbitalViewer.tsx +14 -1
  1176. package/src/orbital/ui/camera.ts +81 -0
  1177. package/src/orbital/ui/renderVolume.ts +8 -1
  1178. package/src/orbital/ui/serial.ts +35 -0
  1179. package/src/orbital/ui/viewer.ts +72 -13
  1180. package/src/overlay/core/emptiestCorner.ts +122 -0
  1181. package/src/overlay/core/index.ts +34 -0
  1182. package/src/overlay/core/overlayCollapse.ts +20 -0
  1183. package/src/overlay/core/overlayMarks.ts +43 -0
  1184. package/src/overlay/core/overlayMetrics.ts +112 -0
  1185. package/src/overlay/core/overlayPlacement.ts +80 -0
  1186. package/src/overlay/core/overlayTierRoom.ts +199 -0
  1187. package/src/overlay/core/overlayTiers.ts +130 -0
  1188. package/src/overlay/core/placeOverlayCard.ts +93 -0
  1189. package/src/overlay/ui/OverlayAction.tsx +66 -0
  1190. package/src/overlay/ui/OverlayBar.tsx +188 -0
  1191. package/src/overlay/ui/OverlayBarButton.tsx +83 -0
  1192. package/src/overlay/ui/OverlayBarCard.tsx +78 -0
  1193. package/src/overlay/ui/OverlayBarStrip.tsx +62 -0
  1194. package/src/overlay/ui/OverlayCaption.tsx +124 -0
  1195. package/src/overlay/ui/OverlayChip.tsx +181 -0
  1196. package/src/overlay/ui/OverlayDivider.tsx +24 -0
  1197. package/src/overlay/ui/OverlayGroup.tsx +157 -0
  1198. package/src/overlay/ui/OverlayIconButton.tsx +131 -0
  1199. package/src/overlay/ui/OverlayInfo.tsx +92 -0
  1200. package/src/overlay/ui/OverlayLayer.tsx +118 -0
  1201. package/src/overlay/ui/OverlayLegend.tsx +222 -0
  1202. package/src/overlay/ui/OverlayLegendMark.tsx +95 -0
  1203. package/src/overlay/ui/OverlayNumber.tsx +160 -0
  1204. package/src/overlay/ui/OverlayPanel.tsx +162 -0
  1205. package/src/overlay/ui/OverlayPills.tsx +157 -0
  1206. package/src/overlay/ui/OverlayReadout.tsx +247 -0
  1207. package/src/overlay/ui/OverlayRow.tsx +200 -0
  1208. package/src/overlay/ui/OverlaySegmented.tsx +67 -0
  1209. package/src/overlay/ui/OverlaySelect.tsx +114 -0
  1210. package/src/overlay/ui/OverlaySwatchIcon.tsx +126 -0
  1211. package/src/overlay/ui/OverlayToggle.tsx +136 -0
  1212. package/src/overlay/ui/OverlayValueButton.tsx +149 -0
  1213. package/src/overlay/ui/OverlayValueMenu.tsx +141 -0
  1214. package/src/overlay/ui/index.ts +72 -0
  1215. package/src/overlay/ui/overlayBarShape.ts +113 -0
  1216. package/src/overlay/ui/overlayControlStyles.ts +176 -0
  1217. package/src/overlay/ui/overlayFigureStyles.ts +111 -0
  1218. package/src/overlay/ui/overlayPanelContext.ts +42 -0
  1219. package/src/overlay/ui/overlayPanelStyles.ts +235 -0
  1220. package/src/overlay/ui/overlayPillKeys.ts +45 -0
  1221. package/src/overlay/ui/overlayPillStyles.ts +190 -0
  1222. package/src/overlay/ui/overlayRowStyles.ts +166 -0
  1223. package/src/overlay/ui/overlayStepperStyles.ts +112 -0
  1224. package/src/overlay/ui/overlayStyles.ts +222 -0
  1225. package/src/overlay/ui/overlaySurface.ts +120 -0
  1226. package/src/overlay/ui/overlaySwitchStyles.ts +136 -0
  1227. package/src/overlay/ui/overlayValueStyles.ts +210 -0
  1228. package/src/pedagogy/ui/ExerciseProgressHeader.tsx +1 -1
  1229. package/src/pedagogy/ui/GlossaryText.tsx +2 -2
  1230. package/src/pedagogy/ui/ReferenceSectionBlock.tsx +5 -2
  1231. package/src/pedagogy/ui/SyntaxTooltip.tsx +2 -2
  1232. package/src/pedagogy/ui/TutorialStepStrip.tsx +4 -1
  1233. package/src/periodic/ui/CategoryLegend.tsx +1 -1
  1234. package/src/periodic/ui/PeriodicTableChrome.tsx +2 -2
  1235. package/src/projection/core/embeddingResult.ts +119 -0
  1236. package/src/projection/core/explainedShares.ts +105 -0
  1237. package/src/projection/core/index.ts +81 -0
  1238. package/src/projection/core/loadingProfiles.ts +226 -0
  1239. package/src/projection/core/pcaLike.ts +33 -0
  1240. package/src/projection/core/pcaResult.ts +238 -0
  1241. package/src/projection/core/projectionCopy.ts +252 -0
  1242. package/src/projection/core/projectionCopyPatch.ts +12 -0
  1243. package/src/projection/core/projectionOptions.ts +238 -0
  1244. package/src/projection/core/projectionResult.ts +123 -0
  1245. package/src/projection/core/projectionSamples.ts +170 -0
  1246. package/src/projection/core/projectionStrings.ts +265 -0
  1247. package/src/projection/core/projectionTabDefaults.ts +51 -0
  1248. package/src/projection/core/projectionTabs.ts +56 -0
  1249. package/src/projection/core/variableAxis.ts +161 -0
  1250. package/src/projection/core/variablesView.ts +53 -0
  1251. package/src/projection/ui/PcaViewer.tsx +80 -0
  1252. package/src/projection/ui/ProjectionBar.tsx +222 -0
  1253. package/src/projection/ui/ProjectionMapCaption.tsx +96 -0
  1254. package/src/projection/ui/ProjectionMapControls.tsx +271 -0
  1255. package/src/projection/ui/ProjectionMapLegend.tsx +70 -0
  1256. package/src/projection/ui/ProjectionMapMore.tsx +178 -0
  1257. package/src/projection/ui/ProjectionMapTab.tsx +205 -0
  1258. package/src/projection/ui/ProjectionPairsControls.tsx +58 -0
  1259. package/src/projection/ui/ProjectionPairsMore.tsx +95 -0
  1260. package/src/projection/ui/ProjectionPairsTab.tsx +159 -0
  1261. package/src/projection/ui/ProjectionPanel.tsx +199 -0
  1262. package/src/projection/ui/ProjectionReadout.tsx +149 -0
  1263. package/src/projection/ui/ProjectionSharesControls.tsx +56 -0
  1264. package/src/projection/ui/ProjectionSharesMarks.tsx +241 -0
  1265. package/src/projection/ui/ProjectionSharesMore.tsx +53 -0
  1266. package/src/projection/ui/ProjectionSharesTab.tsx +118 -0
  1267. package/src/projection/ui/ProjectionSurface.tsx +63 -0
  1268. package/src/projection/ui/ProjectionTabStrip.tsx +144 -0
  1269. package/src/projection/ui/ProjectionVariablesControls.tsx +62 -0
  1270. package/src/projection/ui/ProjectionVariablesMore.tsx +144 -0
  1271. package/src/projection/ui/ProjectionVariablesTab.tsx +216 -0
  1272. package/src/projection/ui/ProjectionViewer.tsx +143 -0
  1273. package/src/projection/ui/index.ts +19 -0
  1274. package/src/projection/ui/projectionBarModel.ts +193 -0
  1275. package/src/projection/ui/projectionBarReadings.ts +177 -0
  1276. package/src/projection/ui/projectionBarSlots.tsx +139 -0
  1277. package/src/projection/ui/projectionBarStyles.ts +174 -0
  1278. package/src/projection/ui/projectionEllipse.ts +104 -0
  1279. package/src/projection/ui/projectionFormat.ts +18 -0
  1280. package/src/projection/ui/projectionMapChoices.ts +64 -0
  1281. package/src/projection/ui/projectionMapChrome.ts +207 -0
  1282. package/src/projection/ui/projectionMapModel.ts +253 -0
  1283. package/src/projection/ui/projectionMapView.ts +188 -0
  1284. package/src/projection/ui/projectionPairsCeiling.ts +45 -0
  1285. package/src/projection/ui/projectionSelection.ts +87 -0
  1286. package/src/projection/ui/projectionTabInfo.ts +126 -0
  1287. package/src/projection/ui/projectionTabModels.ts +106 -0
  1288. package/src/projection/ui/projectionTabStyles.ts +161 -0
  1289. package/src/projection/ui/projectionVariablesModel.ts +231 -0
  1290. package/src/projection/ui/projectionVariablesWords.ts +105 -0
  1291. package/src/projection/ui/projectionViewChoices.ts +77 -0
  1292. package/src/projection/ui/projectionViewerProps.ts +155 -0
  1293. package/src/projection/ui/useProjectionState.ts +224 -0
  1294. package/src/scatter/core/confidenceEllipse.ts +230 -0
  1295. package/src/scatter/core/ellipseCoverage.ts +46 -0
  1296. package/src/scatter/core/ellipseProjection.ts +126 -0
  1297. package/src/scatter/core/index.ts +48 -0
  1298. package/src/scatter/core/lassoPath.ts +127 -0
  1299. package/src/scatter/core/polygon.ts +155 -0
  1300. package/src/scatter/core/scatterSelection.ts +88 -0
  1301. package/src/scatter/core/screenPoints.ts +110 -0
  1302. package/src/scatter/ui/ScatterEllipseLayer.tsx +153 -0
  1303. package/src/scatter/ui/ScatterLabelLayer.tsx +135 -0
  1304. package/src/scatter/ui/ScatterMarkLayer.tsx +245 -0
  1305. package/src/scatter/ui/ScatterMatrix.tsx +177 -0
  1306. package/src/scatter/ui/ScatterMatrixCell.tsx +140 -0
  1307. package/src/scatter/ui/ScatterMatrixDiagonal.tsx +182 -0
  1308. package/src/scatter/ui/ScatterPlot.tsx +234 -0
  1309. package/src/scatter/ui/ScatterPointLayer.tsx +168 -0
  1310. package/src/scatter/ui/index.ts +123 -0
  1311. package/src/scatter/ui/lassoGesture.ts +237 -0
  1312. package/src/scatter/ui/scatterGroupSpread.ts +206 -0
  1313. package/src/scatter/ui/scatterLabelBoxes.ts +177 -0
  1314. package/src/scatter/ui/scatterLabelPlacement.ts +325 -0
  1315. package/src/scatter/ui/scatterLabels.ts +147 -0
  1316. package/src/scatter/ui/scatterMarkGlyph.tsx +94 -0
  1317. package/src/scatter/ui/scatterMatrixDots.tsx +134 -0
  1318. package/src/scatter/ui/scatterMatrixLayout.ts +133 -0
  1319. package/src/scatter/ui/scatterMatrixOutlines.tsx +53 -0
  1320. package/src/scatter/ui/scatterMatrixProps.ts +103 -0
  1321. package/src/scatter/ui/scatterOutlineShape.tsx +169 -0
  1322. package/src/scatter/ui/scatterPlotModel.ts +200 -0
  1323. package/src/scatter/ui/scatterPlotProps.ts +240 -0
  1324. package/src/scatter/ui/useLassoGesture.ts +214 -0
  1325. package/src/scatter/ui/usePointHover.ts +187 -0
  1326. package/src/scatter/ui/useScatterFrame.ts +191 -0
  1327. package/src/scatter/ui/useScatterInteraction.ts +237 -0
  1328. package/src/scatter/ui/useScatterKeyboard.ts +120 -0
  1329. package/src/scatter/ui/useScatterSelection.ts +189 -0
  1330. package/src/seo/vite/ogCard.ts +1 -0
  1331. package/src/share/core/query.ts +11 -7
  1332. package/src/share/ui/ShareDialogContent.tsx +5 -2
  1333. package/src/share/ui/SharePartOptions.tsx +1 -1
  1334. package/src/slides/core/demoLinks.ts +113 -0
  1335. package/src/slides/core/index.ts +22 -0
  1336. package/src/slides/core/sectionHeading.ts +29 -0
  1337. package/src/slides/core/slideNavigation.ts +77 -0
  1338. package/src/slides/core/talk.ts +203 -0
  1339. package/src/slides/core/talkManifest.ts +158 -0
  1340. package/src/slides/core/talkOrigin.ts +83 -0
  1341. package/src/slides/ui/BackToSlides.tsx +49 -0
  1342. package/src/slides/ui/DemoLink.tsx +67 -0
  1343. package/src/slides/ui/EmbedSlide.tsx +85 -0
  1344. package/src/slides/ui/SectionSlide.tsx +44 -0
  1345. package/src/slides/ui/Slide.tsx +143 -0
  1346. package/src/slides/ui/SlideBody.tsx +64 -0
  1347. package/src/slides/ui/Slideshow.tsx +282 -0
  1348. package/src/slides/ui/SlideshowBar.tsx +83 -0
  1349. package/src/slides/ui/TalkList.tsx +146 -0
  1350. package/src/slides/ui/index.ts +18 -0
  1351. package/src/slides/vite/index.ts +2 -0
  1352. package/src/slides/vite/talks.ts +126 -0
  1353. package/src/slides.ts +2 -0
  1354. package/src/spectra/core/axisEntries.ts +107 -0
  1355. package/src/spectra/core/chainProblems.ts +165 -0
  1356. package/src/spectra/core/filterCatalog.ts +100 -0
  1357. package/src/spectra/core/filterChain.ts +194 -0
  1358. package/src/spectra/core/filterEntries.ts +214 -0
  1359. package/src/spectra/core/filterFields.ts +159 -0
  1360. package/src/spectra/core/index.ts +67 -0
  1361. package/src/spectra/core/principalComponents.ts +130 -0
  1362. package/src/spectra/core/problems.ts +143 -0
  1363. package/src/spectra/core/settings.ts +119 -0
  1364. package/src/spectra/core/settingsProblems.ts +222 -0
  1365. package/src/spectra/core/stepProblems.ts +228 -0
  1366. package/src/spectra/ui/CalculationRows.tsx +161 -0
  1367. package/src/spectra/ui/FilterChainEditor.tsx +199 -0
  1368. package/src/spectra/ui/FilterChoiceControl.tsx +153 -0
  1369. package/src/spectra/ui/FilterFieldControl.tsx +105 -0
  1370. package/src/spectra/ui/FilterRow.tsx +190 -0
  1371. package/src/spectra/ui/MatrixFilterRows.tsx +184 -0
  1372. package/src/spectra/ui/NormalizationEditor.tsx +235 -0
  1373. package/src/spectra/ui/NumberField.tsx +126 -0
  1374. package/src/spectra/ui/PostProcessingEditor.tsx +136 -0
  1375. package/src/spectra/ui/PrincipalComponentSelect.tsx +245 -0
  1376. package/src/spectra/ui/ProblemList.tsx +77 -0
  1377. package/src/spectra/ui/RangeRows.tsx +175 -0
  1378. package/src/spectra/ui/ScaleFields.tsx +183 -0
  1379. package/src/spectra/ui/SettingsPart.tsx +60 -0
  1380. package/src/spectra/ui/SpectraSettingsEditor.tsx +143 -0
  1381. package/src/spectra/ui/SpectrumSelection.tsx +193 -0
  1382. package/src/spectra/ui/ZoneRows.tsx +159 -0
  1383. package/src/spectra/ui/index.ts +9 -0
  1384. package/src/spectra/ui/matrixSteps.ts +128 -0
  1385. package/src/spectra/ui/problemsAbout.ts +21 -0
  1386. package/src/spectra/ui/rowKeys.ts +47 -0
  1387. package/src/spectra/ui/scaleOptions.ts +116 -0
  1388. package/src/structure/ui/StructureEditor.tsx +2 -2
  1389. package/src/structure/ui/StructurePlaceholder.tsx +1 -1
  1390. package/src/tokens/core/checkTokens.ts +242 -0
  1391. package/src/tokens/core/colors.ts +122 -0
  1392. package/src/tokens/core/index.ts +6 -0
  1393. package/src/tokens/core/rules.ts +103 -0
  1394. package/src/ui.ts +7 -0
  1395. package/src/vite.ts +1 -0
  1396. package/styles/chrome.css +1 -0
  1397. package/styles/slides.css +667 -0
package/README.md CHANGED
@@ -37,7 +37,9 @@ only when it drags a heavy dependency behind it.
37
37
  | `react-cheminfo/vite` | the prerender plugin and the OG card | nothing; React on the card |
38
38
  | `react-cheminfo/orbital` | the 3D atomic-orbital viewer | React, molstar |
39
39
  | `react-cheminfo/structure` | the structure editor and renderer | React, react-ocl, OCL |
40
+ | `react-cheminfo/slides` | the deck format and the slideshow player | React, react-markdown |
40
41
  | `react-cheminfo/styles/chrome.css` | the shared tokens and site-header stylesheet | nothing |
42
+ | `react-cheminfo/styles/slides.css` | the deck stylesheet, themed on the site's colours | nothing |
41
43
 
42
44
  A backend serving an RIS endpoint, a prerender script writing a sitemap, and
43
45
  every unit test of that logic therefore load no React at all — and a worker
@@ -55,24 +57,30 @@ through a wildcard subpath exactly as `react-science` serves its own.
55
57
 
56
58
  ## What is in it
57
59
 
58
- | Area | `…/core` | `…/ui` |
59
- | ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
60
- | **Site identity** | `siteById`, `findSiteByHost`, `siteTokensCss`, `siteThemeColor`, `renderEcosystemLinksHtml` | `SiteMark`, `Wordmark`, `SiteTheme`, `SiteTile`, `EcosystemButton`, `EcosystemLinks` |
61
- | **Chrome** | — | `SiteHeader`, `SiteFooter`, `NavLink`, `NavMenuButton`, `MenuButton`, `useCompactHeader` |
62
- | **Citation** | `formatCitation`, `formatCitations`, `citationSegments`, `downloadCitation`, `citedReferences`, `doiUrl` | `CiteButton`, `CitationMenu`, `CitationPreview` |
63
- | **Share & embed** | `parseShareConfig`, `applyShareConfig`, `buildShareUrl`, `buildEmbedCode`, `isHidden`, the param codecs | `ShareDialog`, `ShareButton`, `HiddenPartsProvider`, `PagePart`, `useIsHidden` |
64
- | **Routing & head** | `createTabRouter`, `createPageAddresses`, `adoptLegacyHashAddress`, `writeDocumentMeta`, `canonicalLink` | — |
65
- | **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`) |
66
- | **Pedagogy** | `parseGlossaryMarkers`, `localStorageProgressStore`, `progressSummary`, `finishValidation` | `GlossaryText`, `SyntaxTooltip`, `HintLadder`, `ExerciseActions`, `ExerciseProgressHeader`, `TutorialStepStrip`, `ReferenceGrid`, `TestCaseList` |
67
- | **Clipboard & files** | `writeToClipboard`, `downloadBlob`, `downloadText`, `sanitizeFileName`, `toDelimited`, `readDelimited` | `CopyButton`, `CodeBlock`, `DelimitedTextDialog` |
68
- | **Formatting & colour** | `formatInteger`, `formatDecimal`, `formatBytes`, `pluralize`, `readableInk`, `contrastRatio` | `ColorScaleLegend` |
69
- | **Widgets** | `CREDITS`, `credits` | `ErrorBoundary`, `CollapsibleSection`, `CapsuleFilter`, `HelpTooltip`, `CreditsList` |
70
- | **Hooks & state** | `createWorkerChannel` | `persistBucket`, `useDebouncedValue`, `useContainerSize`, `useListKeyboardNavigation`, `useDisclosure` |
71
- | **Chemistry** | `atomicOrbitalsOf`, `configurationOf`, `classifyMolfile`, `readStructure` | `AtomicOrbitalViewer` (`/orbital`), `StructureEditor`, `Structure` (`/structure`) |
72
- | **Periodic table** | `PERIODIC_ELEMENTS`, `elementBySymbol`, `elementByAtomicNumber`, `cellOf`, `placedElements`, `elementByArrowKey`, `categorySwatch`, `CATEGORY_LABELS` | `PeriodicTable`, `ElementCell`, `CategoryLegend` |
73
-
74
- Everything in that table is exported from `./core`, `./ui`, `./vite` or
75
- `./structure` and nothing else is: the sub-components a component is built
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` |
81
+
82
+ Everything in that table is exported from `./core`, `./ui`, `./slides`,
83
+ `./vite` or `./structure` and nothing else is: the sub-components a component is built
76
84
  from, the parsers a helper calls and the internals of a hook stay inside the
77
85
  package, reachable only by their own path. If it is exported, it is supported.
78
86
 
@@ -82,11 +90,11 @@ second, your own code last.** The full import table and the checklist live in
82
90
 
83
91
  ## Seeing it
84
92
 
85
- 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:
86
94
 
87
95
  ```console
88
96
  npm run dev # the book on http://localhost:10815
89
- 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
90
98
  ```
91
99
 
92
100
  The **Brand** toolbar at the top retunes `--brand` / `--brand-alt`, so any story
@@ -260,6 +268,287 @@ The colours a name is set in are the site's own and are not retuned to reach the
260
268
  4.5:1 of body text: ChemCalc's teal and NMRium's orange both land just under it,
261
269
  which is why a name is set bold, where 3:1 is the threshold.
262
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
+
499
+ ## Carrying talks
500
+
501
+ A deck is one Markdown file in the repository of the site whose subject it
502
+ teaches — front matter, slides separated by a `---` line, and a
503
+ `<!-- layout: … -->` comment where the default is not what is wanted. The
504
+ format and the player are `react-cheminfo/slides`; the addresses and the
505
+ authoring rules are in `rules/slideshows.md`.
506
+
507
+ ```tsx
508
+ import { parseTalk, Slideshow } from 'react-cheminfo/slides';
509
+ import 'react-cheminfo/styles/slides.css';
510
+
511
+ const talk = parseTalk(source);
512
+
513
+ <Slideshow
514
+ talk={talk}
515
+ talkId="20260824_IMSC"
516
+ index={slide}
517
+ onIndex={(next) => navigate(`/talks/${id}?slide=${next}`)}
518
+ layouts={{ octochemdb: OctoChemDbFlow }}
519
+ />;
520
+ ```
521
+
522
+ The index is **controlled**: the site owns the address, so a link can open one
523
+ slide and a demo link can come back to it. Arrow keys, space and PageUp/Down
524
+ navigate, `Home` and `End` jump, `f` is fullscreen, `b` and `w` blank the
525
+ screen, `n` shows the speaker's notes. A layout name the player does not know
526
+ falls back to `content` rather than breaking a deck in front of a room, and a
527
+ site adds its own through `layouts`.
528
+
529
+ The `embed` layout puts a **live tool** on the slide — the last bare URL of the
530
+ body is framed — which is what our `?embed` mode exists for.
531
+
532
+ The format itself is framework-free and is also exported from
533
+ `react-cheminfo/core`, so a backend gathering the family's manifests reads them
534
+ without loading React.
535
+
536
+ A site that fullscreens its own shell — so a slide can open the live tool and
537
+ come back still presenting — passes `fullscreen={{ isFullscreen, onToggle }}`,
538
+ and the `f` key and the bar's button drive that instead of the player's own
539
+ element.
540
+
541
+ Publishing a site's decks to the family is one plugin:
542
+
543
+ ```ts
544
+ import { cheminfoTalks } from 'react-cheminfo/vite';
545
+
546
+ plugins: [cheminfoTalks({ site: 'chemcalc' })];
547
+ ```
548
+
549
+ It writes `dist/talks.json` and `dist/talks/<id>.md`, which is what
550
+ learn.cheminfo.org reads to list and play every site's talks beside its own.
551
+
263
552
  ## Prerendering a site
264
553
 
265
554
  A static site has no server to rewrite a head per request, so a crawler gets
@@ -0,0 +1,105 @@
1
+ #!/usr/bin/env node
2
+ /*
3
+ * Report every colour a site writes that belongs to the family rather than to
4
+ * the site: Blueprint's greys and blues, the family's own token values re-typed
5
+ * as literals, and a palette declared by hand instead of rendered from
6
+ * `<SiteTheme siteId>`.
7
+ *
8
+ * Wire it as an npm script:
9
+ * "check-tokens": "node node_modules/react-cheminfo/bin/check-tokens.mjs src"
10
+ *
11
+ * Usage: check-tokens.mjs [directory...] [--allow=#aabbcc,#ddeeff] [--quiet]
12
+ * directory what to walk, `src` when none is given
13
+ * --allow colours the project legitimately owns
14
+ * --quiet say nothing when the scan is clean
15
+ *
16
+ * Exits 1 when anything is reported, 2 when it was called wrongly, 0 otherwise.
17
+ */
18
+ import { readFileSync, readdirSync, statSync } from 'node:fs';
19
+ import { extname, join } from 'node:path';
20
+ import process from 'node:process';
21
+
22
+ import { findTokenViolations } from '../lib/core.js';
23
+
24
+ const EXTENSIONS = new Set(['.css', '.ts', '.tsx', '.jsx', '.js']);
25
+ const SKIPPED = new Set(['node_modules', 'dist', 'lib', 'coverage']);
26
+ const ALLOW_PREFIX = '--allow=';
27
+
28
+ const roots = [];
29
+ const allow = [];
30
+ let quiet = false;
31
+
32
+ for (const argument of process.argv.slice(2)) {
33
+ if (argument.startsWith(ALLOW_PREFIX)) {
34
+ for (const colour of argument.slice(ALLOW_PREFIX.length).split(',')) {
35
+ if (colour.trim() !== '') allow.push(colour.trim());
36
+ }
37
+ } else if (argument === '--quiet') {
38
+ quiet = true;
39
+ } else if (argument.startsWith('-')) {
40
+ fail(`unknown option: ${argument}`);
41
+ } else {
42
+ roots.push(argument);
43
+ }
44
+ }
45
+ if (roots.length === 0) roots.push('src');
46
+
47
+ const files = [];
48
+ for (const root of roots) collect(root, files);
49
+
50
+ const violations = findTokenViolations(files, { allow });
51
+ let report = '';
52
+ for (const violation of violations) {
53
+ report += `${violation.file}:${violation.line}:${violation.column} ${violation.kind} ${violation.text} -> ${violation.hint}\n`;
54
+ }
55
+
56
+ if (violations.length > 0) {
57
+ report += `${count(violations.length, 'violation')} in ${count(files.length, 'file')}\n`;
58
+ process.stdout.write(report);
59
+ process.exit(1);
60
+ }
61
+ if (!quiet) {
62
+ process.stdout.write(
63
+ `no token violation in ${count(files.length, 'file')}\n`,
64
+ );
65
+ }
66
+
67
+ /**
68
+ * Add every file worth reading under a path to the list, walking directories
69
+ * and leaving the generated ones alone.
70
+ * @param {string} path - A file or a directory.
71
+ * @param {Array<{ path: string, text: string }>} files - Collected so far.
72
+ */
73
+ function collect(path, files) {
74
+ const stats = statSync(path, { throwIfNoEntry: false });
75
+ if (stats === undefined) fail(`no such path: ${path}`);
76
+ if (stats.isDirectory()) {
77
+ for (const entry of readdirSync(path, { withFileTypes: true })) {
78
+ if (entry.name.startsWith('.') || SKIPPED.has(entry.name)) continue;
79
+ collect(join(path, entry.name), files);
80
+ }
81
+ return;
82
+ }
83
+ if (!EXTENSIONS.has(extname(path))) return;
84
+ files.push({ path, text: readFileSync(path, 'utf8') });
85
+ }
86
+
87
+ /**
88
+ * A count with its noun, so a summary line reads as a sentence.
89
+ * @param {number} total - How many.
90
+ * @param {string} noun - What of, in the singular.
91
+ * @returns {string} The two, with the plural `s` when it is needed.
92
+ */
93
+ function count(total, noun) {
94
+ return `${total} ${noun}${total === 1 ? '' : 's'}`;
95
+ }
96
+
97
+ /**
98
+ * Stop on a call the script cannot honour, which is not a clean scan.
99
+ * @param {string} message - What was wrong with it.
100
+ * @returns {never} It never comes back: the process ends here.
101
+ */
102
+ function fail(message) {
103
+ process.stderr.write(`check-tokens: ${message}\n`);
104
+ process.exit(2);
105
+ }
@@ -0,0 +1,95 @@
1
+ import type { CitedWork } from '../../citation/core/works.ts';
2
+ import type { CreditEntry, CreditId } from '../../credits/core/credits.ts';
3
+ import type { EcosystemSite, SiteId } from '../../ecosystem/core/sites.ts';
4
+ /**
5
+ * What a site says about itself: the one page a visitor opens to find out what
6
+ * the tool is, what it stands on, and who to tell when it breaks.
7
+ *
8
+ * Every field is content, never markup. A site writes this record and the page
9
+ * is drawn from it, which is what keeps fourteen About pages in one order and
10
+ * one voice — the shape they were in before was fourteen hand-written pages,
11
+ * each crediting a different half of what it runs on.
12
+ */
13
+ export interface AboutContent {
14
+ /** The site the page belongs to. */
15
+ siteId: SiteId;
16
+ /** One sentence: what this tool is. */
17
+ what: string;
18
+ /**
19
+ * At most two short paragraphs of context — what the site replaces, where
20
+ * its numbers come from, what it deliberately does not do.
21
+ * @default undefined
22
+ */
23
+ paragraphs?: readonly string[];
24
+ /** Three to six one-line entries: what a visitor can do here. */
25
+ can: readonly string[];
26
+ /** Ids into the shared credits registry, in display order. */
27
+ credits: readonly CreditId[];
28
+ /**
29
+ * Works to cite, from the citation module.
30
+ * @default undefined — the site asks for no citation of its own
31
+ */
32
+ cite?: readonly CitedWork[];
33
+ /**
34
+ * Licence the site itself is published under.
35
+ * @default 'MIT'
36
+ */
37
+ license?: string;
38
+ /**
39
+ * Where the sources live.
40
+ * @default the repository of the ECOSYSTEM_SITES record
41
+ */
42
+ repository?: string;
43
+ /**
44
+ * The running version, when the site knows it.
45
+ * @default undefined
46
+ */
47
+ version?: string;
48
+ /**
49
+ * Where a problem is reported.
50
+ * @default the repository's /issues
51
+ */
52
+ issues?: string;
53
+ }
54
+ /**
55
+ * The same record with nothing left to look up: every default filled in, and
56
+ * every credit id replaced by the entry it names.
57
+ */
58
+ export interface ResolvedAbout {
59
+ /** The site's own record, which carries its name, tagline and colours. */
60
+ site: EcosystemSite;
61
+ what: string;
62
+ /** The context paragraphs, empty when the site writes none. */
63
+ paragraphs: readonly string[];
64
+ can: readonly string[];
65
+ /** The borrowed works themselves, in the order the site names them. */
66
+ credits: CreditEntry[];
67
+ /** The works to cite, empty when the site asks for none. */
68
+ cite: readonly CitedWork[];
69
+ license: string;
70
+ repository: string;
71
+ /** The running version, or `undefined` when the site does not know it. */
72
+ version: string | undefined;
73
+ issues: string;
74
+ }
75
+ /**
76
+ * Fill in what a site left to the family, and resolve what it named.
77
+ * @param content - What the site wrote about itself.
78
+ * @returns The record the About page is drawn from.
79
+ * @throws {Error} When the site is not one of the family, or when a credit id
80
+ * is not in the registry: an About page that silently drops a borrowed work
81
+ * credits nobody.
82
+ */
83
+ export declare function resolveAbout(content: AboutContent): ResolvedAbout;
84
+ /**
85
+ * What is wrong with a record before anyone reads the page it draws.
86
+ *
87
+ * Short and efficient prose is the house style, and prose is exactly what no
88
+ * test, lint rule or type ever checks: a `what` that runs to a paragraph and a
89
+ * `can` list of a dozen lines both compile. This is where that is caught, so a
90
+ * site can assert it in its own suite rather than discover it in review.
91
+ * @param content - What the site wrote about itself.
92
+ * @returns One line per problem, in reading order; empty when there is none.
93
+ */
94
+ export declare function aboutProblems(content: AboutContent): string[];
95
+ //# sourceMappingURL=about.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"about.d.ts","sourceRoot":"","sources":["../../../src/about/core/about.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAG3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAE3E;;;;;;;;GAQG;AACH,MAAM,WAAW,YAAY;IAC3B,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,iEAAiE;IACjE,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC;IACvB,8DAA8D;IAC9D,OAAO,EAAE,SAAS,QAAQ,EAAE,CAAC;IAC7B;;;OAGG;IACH,IAAI,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;IAC5B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,0EAA0E;IAC1E,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC;IACvB,uEAAuE;IACvE,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,4DAA4D;IAC5D,IAAI,EAAE,SAAS,SAAS,EAAE,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,aAAa,CAgBjE;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,EAAE,CA8C7D"}
@@ -0,0 +1,78 @@
1
+ import { credits } from "../../credits/core/credits.js";
2
+ import { siteById } from "../../ecosystem/core/lookup.js";
3
+ /**
4
+ * Fill in what a site left to the family, and resolve what it named.
5
+ * @param content - What the site wrote about itself.
6
+ * @returns The record the About page is drawn from.
7
+ * @throws {Error} When the site is not one of the family, or when a credit id
8
+ * is not in the registry: an About page that silently drops a borrowed work
9
+ * credits nobody.
10
+ */
11
+ export function resolveAbout(content) {
12
+ const site = siteById(content.siteId);
13
+ const repository = content.repository ?? site.repository;
14
+ return {
15
+ site,
16
+ what: content.what,
17
+ paragraphs: content.paragraphs ?? [],
18
+ can: content.can,
19
+ credits: credits(content.credits),
20
+ cite: content.cite ?? [],
21
+ license: content.license ?? DEFAULT_LICENSE,
22
+ repository,
23
+ version: content.version,
24
+ issues: content.issues ?? `${withoutTrailingSlash(repository)}/issues`,
25
+ };
26
+ }
27
+ /**
28
+ * What is wrong with a record before anyone reads the page it draws.
29
+ *
30
+ * Short and efficient prose is the house style, and prose is exactly what no
31
+ * test, lint rule or type ever checks: a `what` that runs to a paragraph and a
32
+ * `can` list of a dozen lines both compile. This is where that is caught, so a
33
+ * site can assert it in its own suite rather than discover it in review.
34
+ * @param content - What the site wrote about itself.
35
+ * @returns One line per problem, in reading order; empty when there is none.
36
+ */
37
+ export function aboutProblems(content) {
38
+ const problems = [];
39
+ if (content.what.length > WHAT_LIMIT) {
40
+ problems.push(`\`what\` is ${content.what.length} characters: one sentence of at most ${WHAT_LIMIT} says what the tool is.`);
41
+ }
42
+ const can = content.can;
43
+ if (can.length < CAN_MIN || can.length > CAN_MAX) {
44
+ problems.push(`\`can\` lists ${can.length} entries: between ${CAN_MIN} and ${CAN_MAX} is what a visitor reads before deciding to stay.`);
45
+ }
46
+ for (let index = 0; index < can.length; index++) {
47
+ const line = can[index] ?? '';
48
+ if (line.length > CAN_LINE_LIMIT) {
49
+ problems.push(`\`can\` entry ${index + 1} is ${line.length} characters: one line of at most ${CAN_LINE_LIMIT}, not a sentence about it.`);
50
+ }
51
+ }
52
+ const paragraphs = content.paragraphs ?? [];
53
+ if (paragraphs.length > PARAGRAPH_MAX) {
54
+ problems.push(`\`paragraphs\` holds ${paragraphs.length}: at most ${PARAGRAPH_MAX} short paragraphs of context, and the rest belongs in the README.`);
55
+ }
56
+ for (let index = 0; index < paragraphs.length; index++) {
57
+ const paragraph = paragraphs[index] ?? '';
58
+ if (paragraph.length > PARAGRAPH_LIMIT) {
59
+ problems.push(`paragraph ${index + 1} is ${paragraph.length} characters: at most ${PARAGRAPH_LIMIT}, or it is documentation rather than context.`);
60
+ }
61
+ }
62
+ if (content.credits.length === 0) {
63
+ problems.push('`credits` is empty: every page of ours stands on borrowed work, and naming it is what the section is for.');
64
+ }
65
+ return problems;
66
+ }
67
+ /** What a site is published under unless it says otherwise. */
68
+ const DEFAULT_LICENSE = 'MIT';
69
+ const WHAT_LIMIT = 160;
70
+ const CAN_MIN = 3;
71
+ const CAN_MAX = 6;
72
+ const CAN_LINE_LIMIT = 90;
73
+ const PARAGRAPH_MAX = 2;
74
+ const PARAGRAPH_LIMIT = 400;
75
+ function withoutTrailingSlash(url) {
76
+ return url.endsWith('/') ? url.slice(0, -1) : url;
77
+ }
78
+ //# sourceMappingURL=about.js.map