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
@@ -0,0 +1,185 @@
1
+ /**
2
+ * What a lasso is asked for, what it hands back, and the arithmetic behind the
3
+ * rectangle it is drawn on.
4
+ *
5
+ * Kept out of the hook the way `listNavigation` is kept out of its own: where
6
+ * the pointer is, which modifier wins and how a frame is booked are questions
7
+ * with one answer each, and none of them needs React to be read or checked.
8
+ */
9
+ import type { CSSProperties, PointerEvent as ReactPointerEvent } from 'react';
10
+ import type { LassoPath } from '../core/lassoPath.ts';
11
+ import type { ScatterSelectionMode } from '../core/scatterSelection.ts';
12
+ /**
13
+ * What the transparent rectangle laid over a plot has to carry.
14
+ *
15
+ * One rectangle takes every gesture, rather than each dot carrying handlers of
16
+ * its own: two thousand `<circle>` elements with six listeners each is two
17
+ * thousand times the work on mount, and a hit test against a coordinate array
18
+ * is cheaper than one against the DOM. Spread the whole object, and give the
19
+ * rectangle a fill — a rectangle with none is never hit.
20
+ */
21
+ export interface ScatterSurfaceProps {
22
+ /** Starts the drag and claims the pointer for the rest of it. */
23
+ onPointerDown: (event: ReactPointerEvent<Element>) => void;
24
+ /** Follows the pointer, at most once a frame. */
25
+ onPointerMove: (event: ReactPointerEvent<Element>) => void;
26
+ /** Ends the drag and commits what was drawn. */
27
+ onPointerUp: (event: ReactPointerEvent<Element>) => void;
28
+ /** Abandons the drag when the browser takes the pointer away. */
29
+ onPointerCancel: (event: ReactPointerEvent<Element>) => void;
30
+ /** Abandons it when the capture is lost for any other reason. */
31
+ onLostPointerCapture: (event: ReactPointerEvent<Element>) => void;
32
+ /** Tells a hover card the pointer has left, when no drag is running. */
33
+ onPointerLeave: (event: ReactPointerEvent<Element>) => void;
34
+ /** Keeps a finger from scrolling the page, and names the pointer. */
35
+ style: CSSProperties;
36
+ }
37
+ /** What `useLassoGesture` needs. */
38
+ export interface LassoGestureOptions {
39
+ /**
40
+ * Whether a drag draws an outline. The pointer is still followed when it is
41
+ * off, so a plot with no lasso still has a hover card.
42
+ * @default true
43
+ */
44
+ enabled?: boolean;
45
+ /**
46
+ * Whether a finger draws rather than scrolling the page. Off, because a
47
+ * figure that traps the page scroll on a phone is the worse fault.
48
+ * @default false
49
+ */
50
+ touch?: boolean;
51
+ /**
52
+ * How far the pointer moves before a vertex is kept, in pixels.
53
+ * @default 3
54
+ */
55
+ minDistance?: number;
56
+ /**
57
+ * Where the rectangle's left edge sits in the space the points were measured
58
+ * in — the plot's `left`, since a plot is inset by its axes.
59
+ * @default 0
60
+ */
61
+ originX?: number;
62
+ /**
63
+ * Where its top edge sits, the plot's `top`.
64
+ * @default 0
65
+ */
66
+ originY?: number;
67
+ /**
68
+ * What a drag with no modifier held does to the selection.
69
+ * @default 'replace'
70
+ */
71
+ mode?: ScatterSelectionMode;
72
+ /**
73
+ * Called on every frame the outline grew, and once with `null` when the drag
74
+ * ends — so whatever was drawn from the growing path is cleared by the same
75
+ * hand that set it.
76
+ * @default undefined
77
+ */
78
+ onDraw?: (path: LassoPath | null, mode: ScatterSelectionMode) => void;
79
+ /**
80
+ * Called when a ring was released. The path is reused by the next drag, so
81
+ * read it before returning.
82
+ * @default undefined
83
+ */
84
+ onComplete?: (path: LassoPath, mode: ScatterSelectionMode) => void;
85
+ /**
86
+ * Called instead when the pointer went up having drawn nothing worth
87
+ * closing — a click, which a scatter reads as picking one point.
88
+ * @default undefined
89
+ */
90
+ onClick?: (x: number, y: number, mode: ScatterSelectionMode) => void;
91
+ /**
92
+ * Called with every position the rectangle saw, coalesced to one a frame,
93
+ * and whether a drag was running. A hover test belongs here, where it pays
94
+ * the throttle the outline is already paying.
95
+ * @default undefined
96
+ */
97
+ onMove?: (x: number, y: number, drawing: boolean) => void;
98
+ /**
99
+ * Called when the pointer leaves with no drag running.
100
+ * @default undefined
101
+ */
102
+ onLeave?: () => void;
103
+ }
104
+ /** A lasso being drawn, or waiting to be. */
105
+ export interface LassoGesture {
106
+ /** Spread onto the rectangle laid over the plot. */
107
+ surface: ScatterSurfaceProps;
108
+ /** Whether a drag is under way. */
109
+ drawing: boolean;
110
+ /** The outline so far as an SVG `d`, left open; `''` between drags. */
111
+ pathData: string;
112
+ /**
113
+ * What releasing now would do to the selection. It is reported while the
114
+ * drag runs, so a caption can say `Adding to the selection` from the moment
115
+ * Shift goes down rather than after the fact.
116
+ */
117
+ mode: ScatterSelectionMode;
118
+ /** Abandon the drag from outside — what Escape is wired to. */
119
+ cancel: () => void;
120
+ }
121
+ /** The modifier keys the hand making a gesture is holding. */
122
+ export interface GestureModifiers {
123
+ /** Whether Alt is down, which always removes. */
124
+ altKey: boolean;
125
+ /** Whether Shift is down, which always adds. */
126
+ shiftKey: boolean;
127
+ }
128
+ /** Where a booked animation frame is remembered between calls. */
129
+ export interface FrameSlot {
130
+ /** The frame's handle, or `null` when none is booked. */
131
+ current: number | null;
132
+ }
133
+ /** How far the pointer travels before a vertex is worth keeping, in pixels. */
134
+ export declare const DEFAULT_LASSO_MIN_DISTANCE = 3;
135
+ /** Vertices a stroke needs before it is a ring rather than a click. */
136
+ export declare const MINIMUM_RING_VERTICES = 3;
137
+ /**
138
+ * The mode a drag is running in, from the keys the hand is holding.
139
+ *
140
+ * Alt removes and Shift adds whatever the plot's resting mode is, so both
141
+ * gestures mean the same thing on every figure. Alt wins a hand holding both,
142
+ * because taking points out is the more deliberate of the two asks.
143
+ * @param event - The pointer event, for its modifier keys.
144
+ * @param resting - What a drag with neither key held does.
145
+ * @returns The mode a release would use.
146
+ */
147
+ export declare function modifierMode(event: GestureModifiers, resting: ScatterSelectionMode): ScatterSelectionMode;
148
+ /**
149
+ * Where the pointer is, in the space the points were measured in.
150
+ *
151
+ * Measured from the rectangle rather than from the page and then shifted by
152
+ * the plot's own corner, so the answer can be compared with a point coordinate
153
+ * without the caller mapping anything. An element that cannot be measured —
154
+ * a server render — reports the corner itself rather than throwing.
155
+ * @param event - The pointer event.
156
+ * @param originX - The rectangle's left edge in the points' space.
157
+ * @param originY - Its top edge.
158
+ * @returns The position, in pixels.
159
+ */
160
+ export declare function surfacePosition(event: ReactPointerEvent<Element>, originX: number, originY: number): {
161
+ x: number;
162
+ y: number;
163
+ };
164
+ /**
165
+ * Claim the pointer, so a drag that wanders off the figure keeps drawing.
166
+ * @param event - The pointer event that started the drag.
167
+ */
168
+ export declare function capturePointer(event: ReactPointerEvent<Element>): void;
169
+ /**
170
+ * Book a frame to do the work on, unless one is already booked.
171
+ *
172
+ * Where there is no `requestAnimationFrame` — a server render, a test — the
173
+ * work is done at once. Coalescing is a saving, never a requirement, and a
174
+ * gesture that only worked in a browser with a frame clock would be untestable
175
+ * as well as fragile.
176
+ * @param frameRef - Where the booking is held.
177
+ * @param run - What the frame should do.
178
+ */
179
+ export declare function scheduleFrame(frameRef: FrameSlot, run: () => void): void;
180
+ /**
181
+ * Drop a frame that was booked and is no longer wanted.
182
+ * @param frameRef - Where the booking is held; emptied either way.
183
+ */
184
+ export declare function dropFrame(frameRef: FrameSlot): void;
185
+ //# sourceMappingURL=lassoGesture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lassoGesture.d.ts","sourceRoot":"","sources":["../../../src/scatter/ui/lassoGesture.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ /**
2
+ * What a lasso is asked for, what it hands back, and the arithmetic behind the
3
+ * rectangle it is drawn on.
4
+ *
5
+ * Kept out of the hook the way `listNavigation` is kept out of its own: where
6
+ * the pointer is, which modifier wins and how a frame is booked are questions
7
+ * with one answer each, and none of them needs React to be read or checked.
8
+ */
9
+ /** How far the pointer travels before a vertex is worth keeping, in pixels. */
10
+ export const DEFAULT_LASSO_MIN_DISTANCE = 3;
11
+ /** Vertices a stroke needs before it is a ring rather than a click. */
12
+ export const MINIMUM_RING_VERTICES = 3;
13
+ /**
14
+ * The mode a drag is running in, from the keys the hand is holding.
15
+ *
16
+ * Alt removes and Shift adds whatever the plot's resting mode is, so both
17
+ * gestures mean the same thing on every figure. Alt wins a hand holding both,
18
+ * because taking points out is the more deliberate of the two asks.
19
+ * @param event - The pointer event, for its modifier keys.
20
+ * @param resting - What a drag with neither key held does.
21
+ * @returns The mode a release would use.
22
+ */
23
+ export function modifierMode(event, resting) {
24
+ if (event.altKey)
25
+ return 'remove';
26
+ if (event.shiftKey)
27
+ return 'add';
28
+ return resting;
29
+ }
30
+ /**
31
+ * Where the pointer is, in the space the points were measured in.
32
+ *
33
+ * Measured from the rectangle rather than from the page and then shifted by
34
+ * the plot's own corner, so the answer can be compared with a point coordinate
35
+ * without the caller mapping anything. An element that cannot be measured —
36
+ * a server render — reports the corner itself rather than throwing.
37
+ * @param event - The pointer event.
38
+ * @param originX - The rectangle's left edge in the points' space.
39
+ * @param originY - Its top edge.
40
+ * @returns The position, in pixels.
41
+ */
42
+ export function surfacePosition(event, originX, originY) {
43
+ const target = event.currentTarget;
44
+ if (typeof target?.getBoundingClientRect !== 'function') {
45
+ return { x: originX, y: originY };
46
+ }
47
+ const box = target.getBoundingClientRect();
48
+ return {
49
+ x: event.clientX - box.left + originX,
50
+ y: event.clientY - box.top + originY,
51
+ };
52
+ }
53
+ /**
54
+ * Claim the pointer, so a drag that wanders off the figure keeps drawing.
55
+ * @param event - The pointer event that started the drag.
56
+ */
57
+ export function capturePointer(event) {
58
+ const target = event.currentTarget;
59
+ if (typeof target?.setPointerCapture !== 'function')
60
+ return;
61
+ try {
62
+ target.setPointerCapture(event.pointerId);
63
+ }
64
+ catch {
65
+ // The pointer was already gone; the drag ends through the same one path.
66
+ }
67
+ }
68
+ /**
69
+ * Book a frame to do the work on, unless one is already booked.
70
+ *
71
+ * Where there is no `requestAnimationFrame` — a server render, a test — the
72
+ * work is done at once. Coalescing is a saving, never a requirement, and a
73
+ * gesture that only worked in a browser with a frame clock would be untestable
74
+ * as well as fragile.
75
+ * @param frameRef - Where the booking is held.
76
+ * @param run - What the frame should do.
77
+ */
78
+ export function scheduleFrame(frameRef, run) {
79
+ if (frameRef.current !== null)
80
+ return;
81
+ if (typeof requestAnimationFrame === 'function') {
82
+ frameRef.current = requestAnimationFrame(run);
83
+ }
84
+ else {
85
+ run();
86
+ }
87
+ }
88
+ /**
89
+ * Drop a frame that was booked and is no longer wanted.
90
+ * @param frameRef - Where the booking is held; emptied either way.
91
+ */
92
+ export function dropFrame(frameRef) {
93
+ if (frameRef.current === null)
94
+ return;
95
+ if (typeof cancelAnimationFrame === 'function') {
96
+ cancelAnimationFrame(frameRef.current);
97
+ }
98
+ frameRef.current = null;
99
+ }
100
+ //# sourceMappingURL=lassoGesture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lassoGesture.js","sourceRoot":"","sources":["../../../src/scatter/ui/lassoGesture.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAqIH,+EAA+E;AAC/E,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC;AAE5C,uEAAuE;AACvE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEvC;;;;;;;;;GASG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAuB,EACvB,OAA6B;IAE7B,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAClC,IAAI,KAAK,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IACjC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAC7B,KAAiC,EACjC,OAAe,EACf,OAAe;IAEf,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC;IACnC,IAAI,OAAO,MAAM,EAAE,qBAAqB,KAAK,UAAU,EAAE,CAAC;QACxD,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC;IACpC,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,EAAE,CAAC;IAC3C,OAAO;QACL,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,GAAG,OAAO;QACrC,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,GAAG,OAAO;KACrC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,KAAiC;IAC9D,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC;IACnC,IAAI,OAAO,MAAM,EAAE,iBAAiB,KAAK,UAAU;QAAE,OAAO;IAC5D,IAAI,CAAC;QACH,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,yEAAyE;IAC3E,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,QAAmB,EAAE,GAAe;IAChE,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI;QAAE,OAAO;IACtC,IAAI,OAAO,qBAAqB,KAAK,UAAU,EAAE,CAAC;QAChD,QAAQ,CAAC,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QACN,GAAG,EAAE,CAAC;IACR,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAC,QAAmB;IAC3C,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI;QAAE,OAAO;IACtC,IAAI,OAAO,oBAAoB,KAAK,UAAU,EAAE,CAAC;QAC/C,oBAAoB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IACD,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Every group's outline over every pair of axes, measured once.
3
+ *
4
+ * A pair grid asks the same question of a group thirty-six times, and calling
5
+ * `confidenceEllipse` per cell would gather that group's points into a fresh
6
+ * array of objects each time — n² allocations to draw n axes, over the same
7
+ * samples. The averages and the pairwise covariances say everything an outline
8
+ * needs, they come out of two passes over the scores read where they stand,
9
+ * and a cell then reads four numbers out of the block.
10
+ */
11
+ import type { MatrixLike } from '../../chart/core/matrix.ts';
12
+ import type { ConfidenceEllipse, EllipseSize } from '../core/confidenceEllipse.ts';
13
+ /** How every group is spread over the axes a grid lays out. */
14
+ export interface ScatterGroupSpread {
15
+ /** How many leading axes each block covers. */
16
+ axes: number;
17
+ /** How many groups it holds. */
18
+ groups: number;
19
+ /** How many rows went into each group, in group order. */
20
+ counts: Int32Array;
21
+ /** Each group's average along each axis, at `group * axes + axis`. */
22
+ means: Float64Array;
23
+ /**
24
+ * How each group varies between two axes, at `(group * axes + a) * axes + b`
25
+ * and again at the transposed position, so a cell reads either way round.
26
+ */
27
+ covariances: Float64Array;
28
+ /** How far out an outline is drawn, in standard deviations. */
29
+ standardDeviations: number;
30
+ /** How many rows a group needs before it is outlined at all. */
31
+ minimumPoints: number;
32
+ }
33
+ /** How {@link scatterGroupSpread} measures the groups. */
34
+ export interface ScatterGroupSpreadOptions {
35
+ /** The coordinates: one row per sample, one column per axis, read in place. */
36
+ scores: MatrixLike;
37
+ /** Which group each row belongs to; a row outside the range is left out. */
38
+ groupOf: ArrayLike<number>;
39
+ /** How many groups there are. */
40
+ groups: number;
41
+ /** How many leading axes to measure over. */
42
+ axes: number;
43
+ /**
44
+ * How large the outlines are drawn.
45
+ * @default { kind: 'coverage', probability: 0.95 }
46
+ */
47
+ size?: EllipseSize;
48
+ /**
49
+ * How many rows a group needs before it is outlined at all.
50
+ * @default 3
51
+ */
52
+ minimumPoints?: number;
53
+ }
54
+ /**
55
+ * Measure every group over every laid-out axis, in two passes.
56
+ *
57
+ * A row missing a value in any one of the axes is left out of the group
58
+ * altogether rather than only out of the cells that use that axis: an outline
59
+ * that quietly covered a different set of samples in each cell would make the
60
+ * grid disagree with itself, and a reader comparing two cells has no way to
61
+ * see it. The spread uses the `n - 1` divisor, as `confidenceEllipse` does, so
62
+ * a group outlined here and the same group outlined on the map come out the
63
+ * same size.
64
+ * @param options - See {@link ScatterGroupSpreadOptions}.
65
+ * @returns The block, whose `counts` are what a caller reports as too small to outline.
66
+ */
67
+ export declare function scatterGroupSpread(options: ScatterGroupSpreadOptions): ScatterGroupSpread;
68
+ /**
69
+ * One group's outline for one pair of axes, in data units.
70
+ *
71
+ * The two-by-two block cut out of the covariances is a covariance in its own
72
+ * right — that is what makes the grid affordable — so it decomposes into
73
+ * radii and a tilt exactly as a pair measured on its own would.
74
+ * @param spread - The block, from {@link scatterGroupSpread}.
75
+ * @param group - Which group.
76
+ * @param xAxis - The axis along the foot of the cell.
77
+ * @param yAxis - The axis up its side.
78
+ * @returns The outline, or `null` when the group is too small to have a shape, when either axis is outside the block, or when the requested size is unbounded.
79
+ */
80
+ export declare function scatterPairEllipse(spread: ScatterGroupSpread, group: number, xAxis: number, yAxis: number): ConfidenceEllipse | null;
81
+ //# sourceMappingURL=scatterGroupSpread.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scatterGroupSpread.d.ts","sourceRoot":"","sources":["../../../src/scatter/ui/scatterGroupSpread.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EACV,iBAAiB,EAEjB,WAAW,EACZ,MAAM,8BAA8B,CAAC;AAMtC,+DAA+D;AAC/D,MAAM,WAAW,kBAAkB;IACjC,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,gCAAgC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,MAAM,EAAE,UAAU,CAAC;IACnB,sEAAsE;IACtE,KAAK,EAAE,YAAY,CAAC;IACpB;;;OAGG;IACH,WAAW,EAAE,YAAY,CAAC;IAC1B,+DAA+D;IAC/D,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gEAAgE;IAChE,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,0DAA0D;AAC1D,MAAM,WAAW,yBAAyB;IACxC,+EAA+E;IAC/E,MAAM,EAAE,UAAU,CAAC;IACnB,4EAA4E;IAC5E,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC3B,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,yBAAyB,GACjC,kBAAkB,CAgEpB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,kBAAkB,EAC1B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,GACZ,iBAAiB,GAAG,IAAI,CAqB1B"}
@@ -0,0 +1,147 @@
1
+ /**
2
+ * Every group's outline over every pair of axes, measured once.
3
+ *
4
+ * A pair grid asks the same question of a group thirty-six times, and calling
5
+ * `confidenceEllipse` per cell would gather that group's points into a fresh
6
+ * array of objects each time — n² allocations to draw n axes, over the same
7
+ * samples. The averages and the pairwise covariances say everything an outline
8
+ * needs, they come out of two passes over the scores read where they stand,
9
+ * and a cell then reads four numbers out of the block.
10
+ */
11
+ import { ellipseAxes, ellipseStandardDeviations, } from "../core/confidenceEllipse.js";
12
+ /**
13
+ * Measure every group over every laid-out axis, in two passes.
14
+ *
15
+ * A row missing a value in any one of the axes is left out of the group
16
+ * altogether rather than only out of the cells that use that axis: an outline
17
+ * that quietly covered a different set of samples in each cell would make the
18
+ * grid disagree with itself, and a reader comparing two cells has no way to
19
+ * see it. The spread uses the `n - 1` divisor, as `confidenceEllipse` does, so
20
+ * a group outlined here and the same group outlined on the map come out the
21
+ * same size.
22
+ * @param options - See {@link ScatterGroupSpreadOptions}.
23
+ * @returns The block, whose `counts` are what a caller reports as too small to outline.
24
+ */
25
+ export function scatterGroupSpread(options) {
26
+ const { scores, groupOf, size = DEFAULT_SIZE, minimumPoints = 3 } = options;
27
+ const groups = Math.max(0, Math.trunc(options.groups));
28
+ const axes = Math.max(0, Math.min(Math.trunc(options.axes), scores.columns));
29
+ const counts = new Int32Array(groups);
30
+ const means = new Float64Array(groups * axes);
31
+ const covariances = new Float64Array(groups * axes * axes);
32
+ const spread = {
33
+ axes,
34
+ groups,
35
+ counts,
36
+ means,
37
+ covariances,
38
+ standardDeviations: ellipseStandardDeviations(size),
39
+ minimumPoints,
40
+ };
41
+ if (groups === 0 || axes === 0)
42
+ return spread;
43
+ for (let row = 0; row < scores.rows; row++) {
44
+ const group = groupAt(groupOf, row, groups);
45
+ if (group < 0 || !finiteRow(scores, row, axes))
46
+ continue;
47
+ counts[group] = (counts[group] ?? 0) + 1;
48
+ const base = group * axes;
49
+ for (let axis = 0; axis < axes; axis++) {
50
+ means[base + axis] = (means[base + axis] ?? 0) + scores.get(row, axis);
51
+ }
52
+ }
53
+ for (let group = 0; group < groups; group++) {
54
+ const count = counts[group] ?? 0;
55
+ if (count === 0)
56
+ continue;
57
+ const base = group * axes;
58
+ for (let axis = 0; axis < axes; axis++) {
59
+ means[base + axis] = (means[base + axis] ?? 0) / count;
60
+ }
61
+ }
62
+ // One scratch row of deviations, reused for every sample: the alternative is
63
+ // reading each value twice per pair, which is axes² reads instead of axes.
64
+ const away = new Float64Array(axes);
65
+ for (let row = 0; row < scores.rows; row++) {
66
+ const group = groupAt(groupOf, row, groups);
67
+ if (group < 0 || !finiteRow(scores, row, axes))
68
+ continue;
69
+ const base = group * axes;
70
+ for (let axis = 0; axis < axes; axis++) {
71
+ away[axis] = scores.get(row, axis) - (means[base + axis] ?? 0);
72
+ }
73
+ const block = group * axes * axes;
74
+ for (let a = 0; a < axes; a++) {
75
+ const first = away[a] ?? 0;
76
+ for (let b = 0; b < axes; b++) {
77
+ const cell = block + a * axes + b;
78
+ covariances[cell] = (covariances[cell] ?? 0) + first * (away[b] ?? 0);
79
+ }
80
+ }
81
+ }
82
+ for (let group = 0; group < groups; group++) {
83
+ const divisor = (counts[group] ?? 0) - 1;
84
+ if (divisor < 1)
85
+ continue;
86
+ const block = group * axes * axes;
87
+ for (let cell = 0; cell < axes * axes; cell++) {
88
+ covariances[block + cell] = (covariances[block + cell] ?? 0) / divisor;
89
+ }
90
+ }
91
+ return spread;
92
+ }
93
+ /**
94
+ * One group's outline for one pair of axes, in data units.
95
+ *
96
+ * The two-by-two block cut out of the covariances is a covariance in its own
97
+ * right — that is what makes the grid affordable — so it decomposes into
98
+ * radii and a tilt exactly as a pair measured on its own would.
99
+ * @param spread - The block, from {@link scatterGroupSpread}.
100
+ * @param group - Which group.
101
+ * @param xAxis - The axis along the foot of the cell.
102
+ * @param yAxis - The axis up its side.
103
+ * @returns The outline, or `null` when the group is too small to have a shape, when either axis is outside the block, or when the requested size is unbounded.
104
+ */
105
+ export function scatterPairEllipse(spread, group, xAxis, yAxis) {
106
+ const { axes, groups, counts, means, covariances } = spread;
107
+ const { minimumPoints, standardDeviations } = spread;
108
+ if (group < 0 || group >= groups)
109
+ return null;
110
+ if (xAxis < 0 || yAxis < 0 || xAxis >= axes || yAxis >= axes)
111
+ return null;
112
+ const count = counts[group] ?? 0;
113
+ if (count < Math.max(2, minimumPoints))
114
+ return null;
115
+ const base = group * axes;
116
+ const block = group * axes * axes;
117
+ const covariance = {
118
+ xx: covariances[block + xAxis * axes + xAxis] ?? 0,
119
+ xy: covariances[block + xAxis * axes + yAxis] ?? 0,
120
+ yy: covariances[block + yAxis * axes + yAxis] ?? 0,
121
+ };
122
+ const { rx, ry, angle } = ellipseAxes(covariance, standardDeviations);
123
+ const cx = means[base + xAxis] ?? 0;
124
+ const cy = means[base + yAxis] ?? 0;
125
+ if (!Number.isFinite(rx) || !Number.isFinite(ry))
126
+ return null;
127
+ if (!Number.isFinite(cx) || !Number.isFinite(cy))
128
+ return null;
129
+ return { cx, cy, rx, ry, angle, count, covariance };
130
+ }
131
+ /** What a group is outlined at when the caller says nothing. */
132
+ const DEFAULT_SIZE = { kind: 'coverage', probability: 0.95 };
133
+ function groupAt(groupOf, row, groups) {
134
+ const raw = groupOf[row];
135
+ if (raw === undefined || !Number.isFinite(raw))
136
+ return -1;
137
+ const group = Math.trunc(raw);
138
+ return group < 0 || group >= groups ? -1 : group;
139
+ }
140
+ function finiteRow(scores, row, axes) {
141
+ for (let axis = 0; axis < axes; axis++) {
142
+ if (!Number.isFinite(scores.get(row, axis)))
143
+ return false;
144
+ }
145
+ return true;
146
+ }
147
+ //# sourceMappingURL=scatterGroupSpread.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scatterGroupSpread.js","sourceRoot":"","sources":["../../../src/scatter/ui/scatterGroupSpread.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAQH,OAAO,EACL,WAAW,EACX,yBAAyB,GAC1B,MAAM,8BAA8B,CAAC;AA6CtC;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAkC;IAElC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,GAAG,YAAY,EAAE,aAAa,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC;IAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7E,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,IAAI,YAAY,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAuB;QACjC,IAAI;QACJ,MAAM;QACN,MAAM;QACN,KAAK;QACL,WAAW;QACX,kBAAkB,EAAE,yBAAyB,CAAC,IAAI,CAAC;QACnD,aAAa;KACd,CAAC;IACF,IAAI,MAAM,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC;IAE9C,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAC5C,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC;YAAE,SAAS;QACzD,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC;QAC1B,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;YACvC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IACD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,KAAK,KAAK,CAAC;YAAE,SAAS;QAC1B,MAAM,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC;QAC1B,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;YACvC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC;QACzD,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,2EAA2E;IAC3E,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAC5C,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC;YAAE,SAAS;QACzD,MAAM,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC;QAC1B,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC;QAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9B,MAAM,IAAI,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;gBAClC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;IACH,CAAC;IACD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,OAAO,GAAG,CAAC;YAAE,SAAS;QAC1B,MAAM,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC;QAClC,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;YAC9C,WAAW,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC;QACzE,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAChC,MAA0B,EAC1B,KAAa,EACb,KAAa,EACb,KAAa;IAEb,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IAC5D,MAAM,EAAE,aAAa,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAC;IACrD,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,MAAM;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC1E,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpD,MAAM,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC;IAC1B,MAAM,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC;IAClC,MAAM,UAAU,GAAsB;QACpC,EAAE,EAAE,WAAW,CAAC,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QAClD,EAAE,EAAE,WAAW,CAAC,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QAClD,EAAE,EAAE,WAAW,CAAC,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;KACnD,CAAC;IACF,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;IACtE,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9D,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AACtD,CAAC;AAED,gEAAgE;AAChE,MAAM,YAAY,GAAgB,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;AAE1E,SAAS,OAAO,CACd,OAA0B,EAC1B,GAAW,EACX,MAAc;IAEd,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACzB,IAAI,GAAG,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,CAAC,CAAC,CAAC;IAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,OAAO,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACnD,CAAC;AAED,SAAS,SAAS,CAAC,MAAkB,EAAE,GAAW,EAAE,IAAY;IAC9D,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;IAC5D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,94 @@
1
+ /**
2
+ * How much room a word takes on the plot, and what is already written near a
3
+ * place a word is about to go.
4
+ *
5
+ * A label has no size until a browser has laid it out, and the placing has to
6
+ * happen before anything is drawn — so the width is estimated from the string
7
+ * rather than measured. The estimate is deliberately generous: two words that
8
+ * are believed wider than they are stay further apart than they had to, which
9
+ * a reader never notices, while two believed narrower overlap, which is the
10
+ * whole fault being fixed here.
11
+ *
12
+ * The field is a uniform grid rather than a list because a map may carry two
13
+ * thousand names: testing each candidate against every word already placed is
14
+ * the one part of the placing that grows with the square of the cloud, and a
15
+ * grid turns it back into a handful of comparisons.
16
+ */
17
+ /** A rectangle in the frame's pixels. */
18
+ export interface LabelBox {
19
+ /** Left edge. */
20
+ left: number;
21
+ /** Top edge. */
22
+ top: number;
23
+ /** Right edge. */
24
+ right: number;
25
+ /** Bottom edge. */
26
+ bottom: number;
27
+ }
28
+ /**
29
+ * How wide a word will be drawn, in pixels, without laying it out.
30
+ *
31
+ * The average glyph of the interface's sans is around 0.55 em and its bold
32
+ * around 0.6, but a name is not average text: `XTC0240` is all caps and
33
+ * digits, which are the widest glyphs in the font. The figures below are those
34
+ * upper widths rather than the average, so the answer errs long for a name and
35
+ * only slightly long for a sentence.
36
+ * @param text - What the label says.
37
+ * @param fontSize - What it is set in, in pixels.
38
+ * @param bold - Whether it is the heavier weight, which is wider.
39
+ * @returns The width, in pixels.
40
+ */
41
+ export declare function labelBoxWidth(text: string, fontSize: number, bold?: boolean): number;
42
+ /**
43
+ * How tall a line of text is, in pixels — the size it is set in plus the space
44
+ * a reader needs between one word and the next to read them as two words.
45
+ * @param fontSize - What the label is set in, in pixels.
46
+ * @returns The height, in pixels.
47
+ */
48
+ export declare function labelBoxHeight(fontSize: number): number;
49
+ /**
50
+ * Whether two rectangles share any pixel at all.
51
+ * @param one - One rectangle.
52
+ * @param other - The other.
53
+ * @returns Whether they touch.
54
+ */
55
+ export declare function labelBoxesOverlap(one: LabelBox, other: LabelBox): boolean;
56
+ /**
57
+ * The words already written, and whether there is room for one more.
58
+ *
59
+ * Each rectangle is filed under every cell of a coarse grid it touches, so
60
+ * asking about a candidate only compares it with the words that could
61
+ * possibly be in its way. The grid is built and thrown away inside one
62
+ * placing pass; nothing outside this file holds onto it.
63
+ */
64
+ export declare class LabelBoxField {
65
+ #private;
66
+ /**
67
+ * Nothing has been written yet.
68
+ * @param cell - Side of one grid square, in pixels. It wants to be a few
69
+ * label-widths across: too small and a wide name is filed under a dozen
70
+ * cells, too large and every comparison comes back.
71
+ * @default 96
72
+ */
73
+ constructor(cell?: number);
74
+ /**
75
+ * Whether a rectangle can be written without touching one already there.
76
+ * @param box - Where the word would go.
77
+ * @returns Whether the place is free.
78
+ */
79
+ fits(box: LabelBox): boolean;
80
+ /**
81
+ * Keep a rectangle, so nothing placed afterwards lands on it.
82
+ * @param box - Where the word went.
83
+ */
84
+ add(box: LabelBox): void;
85
+ }
86
+ /**
87
+ * What a sample's name is set in, in pixels, and what a group's is. The layer
88
+ * draws at these sizes and the placing keeps room at them: two numbers that
89
+ * drift apart are two words that overlap.
90
+ */
91
+ export declare const SCATTER_LABEL_SIZE = 10;
92
+ /** What a group's name is set in — see {@link SCATTER_LABEL_SIZE}. */
93
+ export declare const SCATTER_GROUP_LABEL_SIZE = 12;
94
+ //# sourceMappingURL=scatterLabelBoxes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scatterLabelBoxes.d.ts","sourceRoot":"","sources":["../../../src/scatter/ui/scatterLabelBoxes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,yCAAyC;AACzC,MAAM,WAAW,QAAQ;IACvB,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,IAAI,UAAQ,GACX,MAAM,CAER;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,GAAG,OAAO,CAOzE;AAED;;;;;;;GAOG;AACH,qBAAa,aAAa;;IAIxB;;;;;;OAMG;gBACS,IAAI,SAAe;IAI/B;;;;OAIG;IACH,IAAI,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO;IAmB5B;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI;CAgBzB;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,KAAK,CAAC;AAErC,sEAAsE;AACtE,eAAO,MAAM,wBAAwB,KAAK,CAAC"}