react-cheminfo 0.9.0 → 0.11.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 (1285) hide show
  1. package/README.md +251 -20
  2. package/lib/chart/core/chartAxisScale.d.ts +88 -0
  3. package/lib/chart/core/chartAxisScale.d.ts.map +1 -0
  4. package/lib/chart/core/chartAxisScale.js +205 -0
  5. package/lib/chart/core/chartAxisScale.js.map +1 -0
  6. package/lib/chart/core/chartBand.d.ts +47 -0
  7. package/lib/chart/core/chartBand.d.ts.map +1 -0
  8. package/lib/chart/core/chartBand.js +55 -0
  9. package/lib/chart/core/chartBand.js.map +1 -0
  10. package/lib/chart/core/chartBins.d.ts +32 -0
  11. package/lib/chart/core/chartBins.d.ts.map +1 -0
  12. package/lib/chart/core/chartBins.js +64 -0
  13. package/lib/chart/core/chartBins.js.map +1 -0
  14. package/lib/chart/core/chartExtent.d.ts +105 -0
  15. package/lib/chart/core/chartExtent.d.ts.map +1 -0
  16. package/lib/chart/core/chartExtent.js +134 -0
  17. package/lib/chart/core/chartExtent.js.map +1 -0
  18. package/lib/chart/core/chartLabels.d.ts +49 -0
  19. package/lib/chart/core/chartLabels.d.ts.map +1 -0
  20. package/lib/chart/core/chartLabels.js +44 -0
  21. package/lib/chart/core/chartLabels.js.map +1 -0
  22. package/lib/chart/core/chartPalette.d.ts +33 -0
  23. package/lib/chart/core/chartPalette.d.ts.map +1 -0
  24. package/lib/chart/core/chartPalette.js +51 -0
  25. package/lib/chart/core/chartPalette.js.map +1 -0
  26. package/lib/chart/core/chartScale.d.ts +49 -0
  27. package/lib/chart/core/chartScale.d.ts.map +1 -0
  28. package/lib/chart/core/chartScale.js +53 -0
  29. package/lib/chart/core/chartScale.js.map +1 -0
  30. package/lib/chart/core/chartViewport.d.ts +88 -0
  31. package/lib/chart/core/chartViewport.d.ts.map +1 -0
  32. package/lib/chart/core/chartViewport.js +164 -0
  33. package/lib/chart/core/chartViewport.js.map +1 -0
  34. package/lib/chart/core/index.d.ts +29 -0
  35. package/lib/chart/core/index.d.ts.map +1 -0
  36. package/lib/chart/core/index.js +20 -0
  37. package/lib/chart/core/index.js.map +1 -0
  38. package/lib/chart/core/matrix.d.ts +56 -0
  39. package/lib/chart/core/matrix.d.ts.map +1 -0
  40. package/lib/chart/core/matrix.js +75 -0
  41. package/lib/chart/core/matrix.js.map +1 -0
  42. package/lib/chart/ui/ChartAxis.d.ts +50 -0
  43. package/lib/chart/ui/ChartAxis.d.ts.map +1 -0
  44. package/lib/chart/ui/ChartAxis.js +89 -0
  45. package/lib/chart/ui/ChartAxis.js.map +1 -0
  46. package/lib/chart/ui/ChartFrame.d.ts +136 -0
  47. package/lib/chart/ui/ChartFrame.d.ts.map +1 -0
  48. package/lib/chart/ui/ChartFrame.js +61 -0
  49. package/lib/chart/ui/ChartFrame.js.map +1 -0
  50. package/lib/chart/ui/ChartSeriesMarks.d.ts +44 -0
  51. package/lib/chart/ui/ChartSeriesMarks.d.ts.map +1 -0
  52. package/lib/chart/ui/ChartSeriesMarks.js +48 -0
  53. package/lib/chart/ui/ChartSeriesMarks.js.map +1 -0
  54. package/lib/chart/ui/ChartTrackingLayer.d.ts +54 -0
  55. package/lib/chart/ui/ChartTrackingLayer.d.ts.map +1 -0
  56. package/lib/chart/ui/ChartTrackingLayer.js +98 -0
  57. package/lib/chart/ui/ChartTrackingLayer.js.map +1 -0
  58. package/lib/chart/ui/TrackedLineChart.d.ts +136 -0
  59. package/lib/chart/ui/TrackedLineChart.d.ts.map +1 -0
  60. package/lib/chart/ui/TrackedLineChart.js +90 -0
  61. package/lib/chart/ui/TrackedLineChart.js.map +1 -0
  62. package/lib/chart/ui/TrackedStickChart.d.ts +88 -0
  63. package/lib/chart/ui/TrackedStickChart.d.ts.map +1 -0
  64. package/lib/chart/ui/TrackedStickChart.js +58 -0
  65. package/lib/chart/ui/TrackedStickChart.js.map +1 -0
  66. package/lib/chart/ui/chartStyles.d.ts +141 -0
  67. package/lib/chart/ui/chartStyles.d.ts.map +1 -0
  68. package/lib/chart/ui/chartStyles.js +154 -0
  69. package/lib/chart/ui/chartStyles.js.map +1 -0
  70. package/lib/chart/ui/index.d.ts +20 -0
  71. package/lib/chart/ui/index.d.ts.map +1 -0
  72. package/lib/chart/ui/index.js +13 -0
  73. package/lib/chart/ui/index.js.map +1 -0
  74. package/lib/chart/ui/stickChartModel.d.ts +99 -0
  75. package/lib/chart/ui/stickChartModel.d.ts.map +1 -0
  76. package/lib/chart/ui/stickChartModel.js +140 -0
  77. package/lib/chart/ui/stickChartModel.js.map +1 -0
  78. package/lib/chart/ui/useWheelZoom.d.ts +69 -0
  79. package/lib/chart/ui/useWheelZoom.d.ts.map +1 -0
  80. package/lib/chart/ui/useWheelZoom.js +122 -0
  81. package/lib/chart/ui/useWheelZoom.js.map +1 -0
  82. package/lib/chrome/ui/NavLink.d.ts.map +1 -1
  83. package/lib/chrome/ui/NavLink.js +4 -3
  84. package/lib/chrome/ui/NavLink.js.map +1 -1
  85. package/lib/chrome/ui/SiteFooter.d.ts +8 -0
  86. package/lib/chrome/ui/SiteFooter.d.ts.map +1 -1
  87. package/lib/chrome/ui/SiteFooter.js +7 -2
  88. package/lib/chrome/ui/SiteFooter.js.map +1 -1
  89. package/lib/chrome/ui/SiteHeader.d.ts +11 -0
  90. package/lib/chrome/ui/SiteHeader.d.ts.map +1 -1
  91. package/lib/chrome/ui/SiteHeader.js +7 -2
  92. package/lib/chrome/ui/SiteHeader.js.map +1 -1
  93. package/lib/chrome/ui/navItem.d.ts +12 -0
  94. package/lib/chrome/ui/navItem.d.ts.map +1 -1
  95. package/lib/chrome/ui/navItem.js.map +1 -1
  96. package/lib/color/core/gradient.d.ts +15 -0
  97. package/lib/color/core/gradient.d.ts.map +1 -0
  98. package/lib/color/core/gradient.js +28 -0
  99. package/lib/color/core/gradient.js.map +1 -0
  100. package/lib/color/core/hsv.d.ts +38 -0
  101. package/lib/color/core/hsv.d.ts.map +1 -0
  102. package/lib/color/core/hsv.js +92 -0
  103. package/lib/color/core/hsv.js.map +1 -0
  104. package/lib/color/core/index.d.ts +12 -1
  105. package/lib/color/core/index.d.ts.map +1 -1
  106. package/lib/color/core/index.js +6 -0
  107. package/lib/color/core/index.js.map +1 -1
  108. package/lib/color/core/interpolate.d.ts +67 -0
  109. package/lib/color/core/interpolate.d.ts.map +1 -0
  110. package/lib/color/core/interpolate.js +121 -0
  111. package/lib/color/core/interpolate.js.map +1 -0
  112. package/lib/color/core/scale.d.ts +11 -15
  113. package/lib/color/core/scale.d.ts.map +1 -1
  114. package/lib/color/core/scale.js +14 -41
  115. package/lib/color/core/scale.js.map +1 -1
  116. package/lib/color/core/scaleData.d.ts +19 -0
  117. package/lib/color/core/scaleData.d.ts.map +1 -0
  118. package/lib/color/core/scaleData.js +120 -0
  119. package/lib/color/core/scaleData.js.map +1 -0
  120. package/lib/color/core/scaleText.d.ts +43 -0
  121. package/lib/color/core/scaleText.d.ts.map +1 -0
  122. package/lib/color/core/scaleText.js +109 -0
  123. package/lib/color/core/scaleText.js.map +1 -0
  124. package/lib/color/core/scales.d.ts +42 -0
  125. package/lib/color/core/scales.d.ts.map +1 -0
  126. package/lib/color/core/scales.js +110 -0
  127. package/lib/color/core/scales.js.map +1 -0
  128. package/lib/color/ui/ColorScaleBar.d.ts +39 -0
  129. package/lib/color/ui/ColorScaleBar.d.ts.map +1 -0
  130. package/lib/color/ui/ColorScaleBar.js +27 -0
  131. package/lib/color/ui/ColorScaleBar.js.map +1 -0
  132. package/lib/color/ui/ColorScaleEditor.d.ts +21 -0
  133. package/lib/color/ui/ColorScaleEditor.d.ts.map +1 -0
  134. package/lib/color/ui/ColorScaleEditor.js +141 -0
  135. package/lib/color/ui/ColorScaleEditor.js.map +1 -0
  136. package/lib/color/ui/ColorScaleSelect.d.ts +38 -0
  137. package/lib/color/ui/ColorScaleSelect.d.ts.map +1 -0
  138. package/lib/color/ui/ColorScaleSelect.js +109 -0
  139. package/lib/color/ui/ColorScaleSelect.js.map +1 -0
  140. package/lib/color/ui/index.d.ts +6 -0
  141. package/lib/color/ui/index.d.ts.map +1 -1
  142. package/lib/color/ui/index.js +3 -0
  143. package/lib/color/ui/index.js.map +1 -1
  144. package/lib/core.d.ts +6 -0
  145. package/lib/core.d.ts.map +1 -1
  146. package/lib/core.js +6 -0
  147. package/lib/core.js.map +1 -1
  148. package/lib/credits/core/credits.d.ts +17 -0
  149. package/lib/credits/core/credits.d.ts.map +1 -1
  150. package/lib/credits/core/credits.js +20 -0
  151. package/lib/credits/core/credits.js.map +1 -1
  152. package/lib/download/core/cssTokens.d.ts +33 -0
  153. package/lib/download/core/cssTokens.d.ts.map +1 -0
  154. package/lib/download/core/cssTokens.js +82 -0
  155. package/lib/download/core/cssTokens.js.map +1 -0
  156. package/lib/download/core/downloadFigure.d.ts +39 -0
  157. package/lib/download/core/downloadFigure.d.ts.map +1 -0
  158. package/lib/download/core/downloadFigure.js +35 -0
  159. package/lib/download/core/downloadFigure.js.map +1 -0
  160. package/lib/download/core/figureLegend.d.ts +90 -0
  161. package/lib/download/core/figureLegend.d.ts.map +1 -0
  162. package/lib/download/core/figureLegend.js +77 -0
  163. package/lib/download/core/figureLegend.js.map +1 -0
  164. package/lib/download/core/figurePng.d.ts +21 -0
  165. package/lib/download/core/figurePng.d.ts.map +1 -0
  166. package/lib/download/core/figurePng.js +76 -0
  167. package/lib/download/core/figurePng.js.map +1 -0
  168. package/lib/download/core/figureScale.d.ts +61 -0
  169. package/lib/download/core/figureScale.d.ts.map +1 -0
  170. package/lib/download/core/figureScale.js +67 -0
  171. package/lib/download/core/figureScale.js.map +1 -0
  172. package/lib/download/core/figureSvg.d.ts +37 -0
  173. package/lib/download/core/figureSvg.d.ts.map +1 -0
  174. package/lib/download/core/figureSvg.js +164 -0
  175. package/lib/download/core/figureSvg.js.map +1 -0
  176. package/lib/download/core/figureSvgDocument.d.ts +62 -0
  177. package/lib/download/core/figureSvgDocument.d.ts.map +1 -0
  178. package/lib/download/core/figureSvgDocument.js +82 -0
  179. package/lib/download/core/figureSvgDocument.js.map +1 -0
  180. package/lib/download/core/figureTarget.d.ts +67 -0
  181. package/lib/download/core/figureTarget.d.ts.map +1 -0
  182. package/lib/download/core/figureTarget.js +138 -0
  183. package/lib/download/core/figureTarget.js.map +1 -0
  184. package/lib/download/core/index.d.ts +14 -0
  185. package/lib/download/core/index.d.ts.map +1 -1
  186. package/lib/download/core/index.js +8 -0
  187. package/lib/download/core/index.js.map +1 -1
  188. package/lib/download/ui/FigureDownload.d.ts +81 -0
  189. package/lib/download/ui/FigureDownload.d.ts.map +1 -0
  190. package/lib/download/ui/FigureDownload.js +65 -0
  191. package/lib/download/ui/FigureDownload.js.map +1 -0
  192. package/lib/download/ui/FigureDownloadPanel.d.ts +45 -0
  193. package/lib/download/ui/FigureDownloadPanel.d.ts.map +1 -0
  194. package/lib/download/ui/FigureDownloadPanel.js +86 -0
  195. package/lib/download/ui/FigureDownloadPanel.js.map +1 -0
  196. package/lib/download/ui/index.d.ts +13 -0
  197. package/lib/download/ui/index.d.ts.map +1 -0
  198. package/lib/download/ui/index.js +11 -0
  199. package/lib/download/ui/index.js.map +1 -0
  200. package/lib/ecosystem/core/sites.d.ts +1 -1
  201. package/lib/ecosystem/core/sites.d.ts.map +1 -1
  202. package/lib/ecosystem/core/sites.js +23 -0
  203. package/lib/ecosystem/core/sites.js.map +1 -1
  204. package/lib/ecosystem/ui/glyphs.d.ts.map +1 -1
  205. package/lib/ecosystem/ui/glyphs.js +9 -0
  206. package/lib/ecosystem/ui/glyphs.js.map +1 -1
  207. package/lib/overlay/core/emptiestCorner.d.ts +47 -0
  208. package/lib/overlay/core/emptiestCorner.d.ts.map +1 -0
  209. package/lib/overlay/core/emptiestCorner.js +84 -0
  210. package/lib/overlay/core/emptiestCorner.js.map +1 -0
  211. package/lib/overlay/core/index.d.ts +23 -0
  212. package/lib/overlay/core/index.d.ts.map +1 -0
  213. package/lib/overlay/core/index.js +16 -0
  214. package/lib/overlay/core/index.js.map +1 -0
  215. package/lib/overlay/core/overlayCollapse.d.ts +14 -0
  216. package/lib/overlay/core/overlayCollapse.d.ts.map +1 -0
  217. package/lib/overlay/core/overlayCollapse.js +20 -0
  218. package/lib/overlay/core/overlayCollapse.js.map +1 -0
  219. package/lib/overlay/core/overlayMarks.d.ts +31 -0
  220. package/lib/overlay/core/overlayMarks.d.ts.map +1 -0
  221. package/lib/overlay/core/overlayMarks.js +38 -0
  222. package/lib/overlay/core/overlayMarks.js.map +1 -0
  223. package/lib/overlay/core/overlayMetrics.d.ts +41 -0
  224. package/lib/overlay/core/overlayMetrics.d.ts.map +1 -0
  225. package/lib/overlay/core/overlayMetrics.js +73 -0
  226. package/lib/overlay/core/overlayMetrics.js.map +1 -0
  227. package/lib/overlay/core/overlayPlacement.d.ts +60 -0
  228. package/lib/overlay/core/overlayPlacement.d.ts.map +1 -0
  229. package/lib/overlay/core/overlayPlacement.js +24 -0
  230. package/lib/overlay/core/overlayPlacement.js.map +1 -0
  231. package/lib/overlay/core/overlayTierRoom.d.ts +89 -0
  232. package/lib/overlay/core/overlayTierRoom.d.ts.map +1 -0
  233. package/lib/overlay/core/overlayTierRoom.js +135 -0
  234. package/lib/overlay/core/overlayTierRoom.js.map +1 -0
  235. package/lib/overlay/core/overlayTiers.d.ts +71 -0
  236. package/lib/overlay/core/overlayTiers.d.ts.map +1 -0
  237. package/lib/overlay/core/overlayTiers.js +89 -0
  238. package/lib/overlay/core/overlayTiers.js.map +1 -0
  239. package/lib/overlay/core/placeOverlayCard.d.ts +47 -0
  240. package/lib/overlay/core/placeOverlayCard.d.ts.map +1 -0
  241. package/lib/overlay/core/placeOverlayCard.js +42 -0
  242. package/lib/overlay/core/placeOverlayCard.js.map +1 -0
  243. package/lib/overlay/ui/OverlayAction.d.ts +32 -0
  244. package/lib/overlay/ui/OverlayAction.d.ts.map +1 -0
  245. package/lib/overlay/ui/OverlayAction.js +19 -0
  246. package/lib/overlay/ui/OverlayAction.js.map +1 -0
  247. package/lib/overlay/ui/OverlayBar.d.ts +122 -0
  248. package/lib/overlay/ui/OverlayBar.d.ts.map +1 -0
  249. package/lib/overlay/ui/OverlayBar.js +42 -0
  250. package/lib/overlay/ui/OverlayBar.js.map +1 -0
  251. package/lib/overlay/ui/OverlayBarButton.d.ts +38 -0
  252. package/lib/overlay/ui/OverlayBarButton.d.ts.map +1 -0
  253. package/lib/overlay/ui/OverlayBarButton.js +40 -0
  254. package/lib/overlay/ui/OverlayBarButton.js.map +1 -0
  255. package/lib/overlay/ui/OverlayBarCard.d.ts +25 -0
  256. package/lib/overlay/ui/OverlayBarCard.d.ts.map +1 -0
  257. package/lib/overlay/ui/OverlayBarCard.js +28 -0
  258. package/lib/overlay/ui/OverlayBarCard.js.map +1 -0
  259. package/lib/overlay/ui/OverlayBarStrip.d.ts +18 -0
  260. package/lib/overlay/ui/OverlayBarStrip.d.ts.map +1 -0
  261. package/lib/overlay/ui/OverlayBarStrip.js +26 -0
  262. package/lib/overlay/ui/OverlayBarStrip.js.map +1 -0
  263. package/lib/overlay/ui/OverlayCaption.d.ts +52 -0
  264. package/lib/overlay/ui/OverlayCaption.d.ts.map +1 -0
  265. package/lib/overlay/ui/OverlayCaption.js +62 -0
  266. package/lib/overlay/ui/OverlayCaption.js.map +1 -0
  267. package/lib/overlay/ui/OverlayChip.d.ts +60 -0
  268. package/lib/overlay/ui/OverlayChip.d.ts.map +1 -0
  269. package/lib/overlay/ui/OverlayChip.js +73 -0
  270. package/lib/overlay/ui/OverlayChip.js.map +1 -0
  271. package/lib/overlay/ui/OverlayDivider.d.ts +11 -0
  272. package/lib/overlay/ui/OverlayDivider.d.ts.map +1 -0
  273. package/lib/overlay/ui/OverlayDivider.js +16 -0
  274. package/lib/overlay/ui/OverlayDivider.js.map +1 -0
  275. package/lib/overlay/ui/OverlayGroup.d.ts +53 -0
  276. package/lib/overlay/ui/OverlayGroup.d.ts.map +1 -0
  277. package/lib/overlay/ui/OverlayGroup.js +63 -0
  278. package/lib/overlay/ui/OverlayGroup.js.map +1 -0
  279. package/lib/overlay/ui/OverlayIconButton.d.ts +75 -0
  280. package/lib/overlay/ui/OverlayIconButton.d.ts.map +1 -0
  281. package/lib/overlay/ui/OverlayIconButton.js +43 -0
  282. package/lib/overlay/ui/OverlayIconButton.js.map +1 -0
  283. package/lib/overlay/ui/OverlayInfo.d.ts +43 -0
  284. package/lib/overlay/ui/OverlayInfo.d.ts.map +1 -0
  285. package/lib/overlay/ui/OverlayInfo.js +47 -0
  286. package/lib/overlay/ui/OverlayInfo.js.map +1 -0
  287. package/lib/overlay/ui/OverlayLayer.d.ts +54 -0
  288. package/lib/overlay/ui/OverlayLayer.d.ts.map +1 -0
  289. package/lib/overlay/ui/OverlayLayer.js +50 -0
  290. package/lib/overlay/ui/OverlayLayer.js.map +1 -0
  291. package/lib/overlay/ui/OverlayLegend.d.ts +75 -0
  292. package/lib/overlay/ui/OverlayLegend.d.ts.map +1 -0
  293. package/lib/overlay/ui/OverlayLegend.js +81 -0
  294. package/lib/overlay/ui/OverlayLegend.js.map +1 -0
  295. package/lib/overlay/ui/OverlayLegendMark.d.ts +36 -0
  296. package/lib/overlay/ui/OverlayLegendMark.d.ts.map +1 -0
  297. package/lib/overlay/ui/OverlayLegendMark.js +43 -0
  298. package/lib/overlay/ui/OverlayLegendMark.js.map +1 -0
  299. package/lib/overlay/ui/OverlayNumber.d.ts +43 -0
  300. package/lib/overlay/ui/OverlayNumber.d.ts.map +1 -0
  301. package/lib/overlay/ui/OverlayNumber.js +74 -0
  302. package/lib/overlay/ui/OverlayNumber.js.map +1 -0
  303. package/lib/overlay/ui/OverlayPanel.d.ts +81 -0
  304. package/lib/overlay/ui/OverlayPanel.d.ts.map +1 -0
  305. package/lib/overlay/ui/OverlayPanel.js +42 -0
  306. package/lib/overlay/ui/OverlayPanel.js.map +1 -0
  307. package/lib/overlay/ui/OverlayPills.d.ts +73 -0
  308. package/lib/overlay/ui/OverlayPills.d.ts.map +1 -0
  309. package/lib/overlay/ui/OverlayPills.js +55 -0
  310. package/lib/overlay/ui/OverlayPills.js.map +1 -0
  311. package/lib/overlay/ui/OverlayReadout.d.ts +63 -0
  312. package/lib/overlay/ui/OverlayReadout.d.ts.map +1 -0
  313. package/lib/overlay/ui/OverlayReadout.js +129 -0
  314. package/lib/overlay/ui/OverlayReadout.js.map +1 -0
  315. package/lib/overlay/ui/OverlayRow.d.ts +111 -0
  316. package/lib/overlay/ui/OverlayRow.d.ts.map +1 -0
  317. package/lib/overlay/ui/OverlayRow.js +50 -0
  318. package/lib/overlay/ui/OverlayRow.js.map +1 -0
  319. package/lib/overlay/ui/OverlaySegmented.d.ts +28 -0
  320. package/lib/overlay/ui/OverlaySegmented.d.ts.map +1 -0
  321. package/lib/overlay/ui/OverlaySegmented.js +23 -0
  322. package/lib/overlay/ui/OverlaySegmented.js.map +1 -0
  323. package/lib/overlay/ui/OverlaySelect.d.ts +35 -0
  324. package/lib/overlay/ui/OverlaySelect.d.ts.map +1 -0
  325. package/lib/overlay/ui/OverlaySelect.js +30 -0
  326. package/lib/overlay/ui/OverlaySelect.js.map +1 -0
  327. package/lib/overlay/ui/OverlaySwatchIcon.d.ts +26 -0
  328. package/lib/overlay/ui/OverlaySwatchIcon.d.ts.map +1 -0
  329. package/lib/overlay/ui/OverlaySwatchIcon.js +94 -0
  330. package/lib/overlay/ui/OverlaySwatchIcon.js.map +1 -0
  331. package/lib/overlay/ui/OverlayToggle.d.ts +56 -0
  332. package/lib/overlay/ui/OverlayToggle.d.ts.map +1 -0
  333. package/lib/overlay/ui/OverlayToggle.js +42 -0
  334. package/lib/overlay/ui/OverlayToggle.js.map +1 -0
  335. package/lib/overlay/ui/OverlayValueButton.d.ts +80 -0
  336. package/lib/overlay/ui/OverlayValueButton.d.ts.map +1 -0
  337. package/lib/overlay/ui/OverlayValueButton.js +46 -0
  338. package/lib/overlay/ui/OverlayValueButton.js.map +1 -0
  339. package/lib/overlay/ui/OverlayValueMenu.d.ts +68 -0
  340. package/lib/overlay/ui/OverlayValueMenu.d.ts.map +1 -0
  341. package/lib/overlay/ui/OverlayValueMenu.js +40 -0
  342. package/lib/overlay/ui/OverlayValueMenu.js.map +1 -0
  343. package/lib/overlay/ui/index.d.ts +55 -0
  344. package/lib/overlay/ui/index.d.ts.map +1 -0
  345. package/lib/overlay/ui/index.js +33 -0
  346. package/lib/overlay/ui/index.js.map +1 -0
  347. package/lib/overlay/ui/overlayBarShape.d.ts +85 -0
  348. package/lib/overlay/ui/overlayBarShape.d.ts.map +1 -0
  349. package/lib/overlay/ui/overlayBarShape.js +48 -0
  350. package/lib/overlay/ui/overlayBarShape.js.map +1 -0
  351. package/lib/overlay/ui/overlayControlStyles.d.ts +82 -0
  352. package/lib/overlay/ui/overlayControlStyles.d.ts.map +1 -0
  353. package/lib/overlay/ui/overlayControlStyles.js +142 -0
  354. package/lib/overlay/ui/overlayControlStyles.js.map +1 -0
  355. package/lib/overlay/ui/overlayFigureStyles.d.ts +52 -0
  356. package/lib/overlay/ui/overlayFigureStyles.d.ts.map +1 -0
  357. package/lib/overlay/ui/overlayFigureStyles.js +98 -0
  358. package/lib/overlay/ui/overlayFigureStyles.js.map +1 -0
  359. package/lib/overlay/ui/overlayPanelContext.d.ts +34 -0
  360. package/lib/overlay/ui/overlayPanelContext.d.ts.map +1 -0
  361. package/lib/overlay/ui/overlayPanelContext.js +29 -0
  362. package/lib/overlay/ui/overlayPanelContext.js.map +1 -0
  363. package/lib/overlay/ui/overlayPanelStyles.d.ts +112 -0
  364. package/lib/overlay/ui/overlayPanelStyles.d.ts.map +1 -0
  365. package/lib/overlay/ui/overlayPanelStyles.js +193 -0
  366. package/lib/overlay/ui/overlayPanelStyles.js.map +1 -0
  367. package/lib/overlay/ui/overlayPillKeys.d.ts +19 -0
  368. package/lib/overlay/ui/overlayPillKeys.d.ts.map +1 -0
  369. package/lib/overlay/ui/overlayPillKeys.js +33 -0
  370. package/lib/overlay/ui/overlayPillKeys.js.map +1 -0
  371. package/lib/overlay/ui/overlayPillStyles.d.ts +78 -0
  372. package/lib/overlay/ui/overlayPillStyles.d.ts.map +1 -0
  373. package/lib/overlay/ui/overlayPillStyles.js +140 -0
  374. package/lib/overlay/ui/overlayPillStyles.js.map +1 -0
  375. package/lib/overlay/ui/overlayRowStyles.d.ts +113 -0
  376. package/lib/overlay/ui/overlayRowStyles.d.ts.map +1 -0
  377. package/lib/overlay/ui/overlayRowStyles.js +135 -0
  378. package/lib/overlay/ui/overlayRowStyles.js.map +1 -0
  379. package/lib/overlay/ui/overlayStepperStyles.d.ts +51 -0
  380. package/lib/overlay/ui/overlayStepperStyles.d.ts.map +1 -0
  381. package/lib/overlay/ui/overlayStepperStyles.js +96 -0
  382. package/lib/overlay/ui/overlayStepperStyles.js.map +1 -0
  383. package/lib/overlay/ui/overlayStyles.d.ts +123 -0
  384. package/lib/overlay/ui/overlayStyles.d.ts.map +1 -0
  385. package/lib/overlay/ui/overlayStyles.js +203 -0
  386. package/lib/overlay/ui/overlayStyles.js.map +1 -0
  387. package/lib/overlay/ui/overlaySurface.d.ts +54 -0
  388. package/lib/overlay/ui/overlaySurface.d.ts.map +1 -0
  389. package/lib/overlay/ui/overlaySurface.js +85 -0
  390. package/lib/overlay/ui/overlaySurface.js.map +1 -0
  391. package/lib/overlay/ui/overlaySwitchStyles.d.ts +70 -0
  392. package/lib/overlay/ui/overlaySwitchStyles.d.ts.map +1 -0
  393. package/lib/overlay/ui/overlaySwitchStyles.js +102 -0
  394. package/lib/overlay/ui/overlaySwitchStyles.js.map +1 -0
  395. package/lib/overlay/ui/overlayValueStyles.d.ts +101 -0
  396. package/lib/overlay/ui/overlayValueStyles.d.ts.map +1 -0
  397. package/lib/overlay/ui/overlayValueStyles.js +166 -0
  398. package/lib/overlay/ui/overlayValueStyles.js.map +1 -0
  399. package/lib/projection/core/embeddingResult.d.ts +60 -0
  400. package/lib/projection/core/embeddingResult.d.ts.map +1 -0
  401. package/lib/projection/core/embeddingResult.js +52 -0
  402. package/lib/projection/core/embeddingResult.js.map +1 -0
  403. package/lib/projection/core/explainedShares.d.ts +51 -0
  404. package/lib/projection/core/explainedShares.d.ts.map +1 -0
  405. package/lib/projection/core/explainedShares.js +55 -0
  406. package/lib/projection/core/explainedShares.js.map +1 -0
  407. package/lib/projection/core/index.d.ts +38 -0
  408. package/lib/projection/core/index.d.ts.map +1 -0
  409. package/lib/projection/core/index.js +25 -0
  410. package/lib/projection/core/index.js.map +1 -0
  411. package/lib/projection/core/loadingProfiles.d.ts +87 -0
  412. package/lib/projection/core/loadingProfiles.d.ts.map +1 -0
  413. package/lib/projection/core/loadingProfiles.js +125 -0
  414. package/lib/projection/core/loadingProfiles.js.map +1 -0
  415. package/lib/projection/core/pcaLike.d.ts +32 -0
  416. package/lib/projection/core/pcaLike.d.ts.map +1 -0
  417. package/lib/projection/core/pcaLike.js +2 -0
  418. package/lib/projection/core/pcaLike.js.map +1 -0
  419. package/lib/projection/core/pcaResult.d.ts +86 -0
  420. package/lib/projection/core/pcaResult.d.ts.map +1 -0
  421. package/lib/projection/core/pcaResult.js +122 -0
  422. package/lib/projection/core/pcaResult.js.map +1 -0
  423. package/lib/projection/core/projectionCopy.d.ts +134 -0
  424. package/lib/projection/core/projectionCopy.d.ts.map +1 -0
  425. package/lib/projection/core/projectionCopy.js +114 -0
  426. package/lib/projection/core/projectionCopy.js.map +1 -0
  427. package/lib/projection/core/projectionCopyPatch.d.ts +13 -0
  428. package/lib/projection/core/projectionCopyPatch.d.ts.map +1 -0
  429. package/lib/projection/core/projectionCopyPatch.js +2 -0
  430. package/lib/projection/core/projectionCopyPatch.js.map +1 -0
  431. package/lib/projection/core/projectionOptions.d.ts +143 -0
  432. package/lib/projection/core/projectionOptions.d.ts.map +1 -0
  433. package/lib/projection/core/projectionOptions.js +111 -0
  434. package/lib/projection/core/projectionOptions.js.map +1 -0
  435. package/lib/projection/core/projectionResult.d.ts +119 -0
  436. package/lib/projection/core/projectionResult.d.ts.map +1 -0
  437. package/lib/projection/core/projectionResult.js +2 -0
  438. package/lib/projection/core/projectionResult.js.map +1 -0
  439. package/lib/projection/core/projectionSamples.d.ts +77 -0
  440. package/lib/projection/core/projectionSamples.d.ts.map +1 -0
  441. package/lib/projection/core/projectionSamples.js +81 -0
  442. package/lib/projection/core/projectionSamples.js.map +1 -0
  443. package/lib/projection/core/projectionStrings.d.ts +138 -0
  444. package/lib/projection/core/projectionStrings.d.ts.map +1 -0
  445. package/lib/projection/core/projectionStrings.js +182 -0
  446. package/lib/projection/core/projectionStrings.js.map +1 -0
  447. package/lib/projection/core/projectionTabDefaults.d.ts +18 -0
  448. package/lib/projection/core/projectionTabDefaults.d.ts.map +1 -0
  449. package/lib/projection/core/projectionTabDefaults.js +58 -0
  450. package/lib/projection/core/projectionTabDefaults.js.map +1 -0
  451. package/lib/projection/core/projectionTabs.d.ts +25 -0
  452. package/lib/projection/core/projectionTabs.d.ts.map +1 -0
  453. package/lib/projection/core/projectionTabs.js +60 -0
  454. package/lib/projection/core/projectionTabs.js.map +1 -0
  455. package/lib/projection/core/variableAxis.d.ts +106 -0
  456. package/lib/projection/core/variableAxis.d.ts.map +1 -0
  457. package/lib/projection/core/variableAxis.js +84 -0
  458. package/lib/projection/core/variableAxis.js.map +1 -0
  459. package/lib/projection/core/variablesView.d.ts +33 -0
  460. package/lib/projection/core/variablesView.d.ts.map +1 -0
  461. package/lib/projection/core/variablesView.js +49 -0
  462. package/lib/projection/core/variablesView.js.map +1 -0
  463. package/lib/projection/ui/PcaViewer.d.ts +31 -0
  464. package/lib/projection/ui/PcaViewer.d.ts.map +1 -0
  465. package/lib/projection/ui/PcaViewer.js +46 -0
  466. package/lib/projection/ui/PcaViewer.js.map +1 -0
  467. package/lib/projection/ui/ProjectionBar.d.ts +55 -0
  468. package/lib/projection/ui/ProjectionBar.d.ts.map +1 -0
  469. package/lib/projection/ui/ProjectionBar.js +112 -0
  470. package/lib/projection/ui/ProjectionBar.js.map +1 -0
  471. package/lib/projection/ui/ProjectionMapCaption.d.ts +46 -0
  472. package/lib/projection/ui/ProjectionMapCaption.d.ts.map +1 -0
  473. package/lib/projection/ui/ProjectionMapCaption.js +54 -0
  474. package/lib/projection/ui/ProjectionMapCaption.js.map +1 -0
  475. package/lib/projection/ui/ProjectionMapControls.d.ts +67 -0
  476. package/lib/projection/ui/ProjectionMapControls.d.ts.map +1 -0
  477. package/lib/projection/ui/ProjectionMapControls.js +108 -0
  478. package/lib/projection/ui/ProjectionMapControls.js.map +1 -0
  479. package/lib/projection/ui/ProjectionMapLegend.d.ts +39 -0
  480. package/lib/projection/ui/ProjectionMapLegend.d.ts.map +1 -0
  481. package/lib/projection/ui/ProjectionMapLegend.js +29 -0
  482. package/lib/projection/ui/ProjectionMapLegend.js.map +1 -0
  483. package/lib/projection/ui/ProjectionMapMore.d.ts +42 -0
  484. package/lib/projection/ui/ProjectionMapMore.d.ts.map +1 -0
  485. package/lib/projection/ui/ProjectionMapMore.js +74 -0
  486. package/lib/projection/ui/ProjectionMapMore.js.map +1 -0
  487. package/lib/projection/ui/ProjectionMapTab.d.ts +107 -0
  488. package/lib/projection/ui/ProjectionMapTab.d.ts.map +1 -0
  489. package/lib/projection/ui/ProjectionMapTab.js +43 -0
  490. package/lib/projection/ui/ProjectionMapTab.js.map +1 -0
  491. package/lib/projection/ui/ProjectionPairsControls.d.ts +37 -0
  492. package/lib/projection/ui/ProjectionPairsControls.d.ts.map +1 -0
  493. package/lib/projection/ui/ProjectionPairsControls.js +20 -0
  494. package/lib/projection/ui/ProjectionPairsControls.js.map +1 -0
  495. package/lib/projection/ui/ProjectionPairsMore.d.ts +40 -0
  496. package/lib/projection/ui/ProjectionPairsMore.d.ts.map +1 -0
  497. package/lib/projection/ui/ProjectionPairsMore.js +31 -0
  498. package/lib/projection/ui/ProjectionPairsMore.js.map +1 -0
  499. package/lib/projection/ui/ProjectionPairsTab.d.ts +66 -0
  500. package/lib/projection/ui/ProjectionPairsTab.d.ts.map +1 -0
  501. package/lib/projection/ui/ProjectionPairsTab.js +64 -0
  502. package/lib/projection/ui/ProjectionPairsTab.js.map +1 -0
  503. package/lib/projection/ui/ProjectionPanel.d.ts +79 -0
  504. package/lib/projection/ui/ProjectionPanel.d.ts.map +1 -0
  505. package/lib/projection/ui/ProjectionPanel.js +72 -0
  506. package/lib/projection/ui/ProjectionPanel.js.map +1 -0
  507. package/lib/projection/ui/ProjectionReadout.d.ts +72 -0
  508. package/lib/projection/ui/ProjectionReadout.d.ts.map +1 -0
  509. package/lib/projection/ui/ProjectionReadout.js +47 -0
  510. package/lib/projection/ui/ProjectionReadout.js.map +1 -0
  511. package/lib/projection/ui/ProjectionSharesControls.d.ts +34 -0
  512. package/lib/projection/ui/ProjectionSharesControls.d.ts.map +1 -0
  513. package/lib/projection/ui/ProjectionSharesControls.js +20 -0
  514. package/lib/projection/ui/ProjectionSharesControls.js.map +1 -0
  515. package/lib/projection/ui/ProjectionSharesMarks.d.ts +49 -0
  516. package/lib/projection/ui/ProjectionSharesMarks.d.ts.map +1 -0
  517. package/lib/projection/ui/ProjectionSharesMarks.js +110 -0
  518. package/lib/projection/ui/ProjectionSharesMarks.js.map +1 -0
  519. package/lib/projection/ui/ProjectionSharesMore.d.ts +19 -0
  520. package/lib/projection/ui/ProjectionSharesMore.d.ts.map +1 -0
  521. package/lib/projection/ui/ProjectionSharesMore.js +25 -0
  522. package/lib/projection/ui/ProjectionSharesMore.js.map +1 -0
  523. package/lib/projection/ui/ProjectionSharesTab.d.ts +50 -0
  524. package/lib/projection/ui/ProjectionSharesTab.d.ts.map +1 -0
  525. package/lib/projection/ui/ProjectionSharesTab.js +48 -0
  526. package/lib/projection/ui/ProjectionSharesTab.js.map +1 -0
  527. package/lib/projection/ui/ProjectionSpaceControls.d.ts +51 -0
  528. package/lib/projection/ui/ProjectionSpaceControls.d.ts.map +1 -0
  529. package/lib/projection/ui/ProjectionSpaceControls.js +71 -0
  530. package/lib/projection/ui/ProjectionSpaceControls.js.map +1 -0
  531. package/lib/projection/ui/ProjectionSpaceMore.d.ts +32 -0
  532. package/lib/projection/ui/ProjectionSpaceMore.d.ts.map +1 -0
  533. package/lib/projection/ui/ProjectionSpaceMore.js +57 -0
  534. package/lib/projection/ui/ProjectionSpaceMore.js.map +1 -0
  535. package/lib/projection/ui/ProjectionSpaceTab.d.ts +98 -0
  536. package/lib/projection/ui/ProjectionSpaceTab.d.ts.map +1 -0
  537. package/lib/projection/ui/ProjectionSpaceTab.js +66 -0
  538. package/lib/projection/ui/ProjectionSpaceTab.js.map +1 -0
  539. package/lib/projection/ui/ProjectionSurface.d.ts +33 -0
  540. package/lib/projection/ui/ProjectionSurface.d.ts.map +1 -0
  541. package/lib/projection/ui/ProjectionSurface.js +35 -0
  542. package/lib/projection/ui/ProjectionSurface.js.map +1 -0
  543. package/lib/projection/ui/ProjectionTabStrip.d.ts +74 -0
  544. package/lib/projection/ui/ProjectionTabStrip.d.ts.map +1 -0
  545. package/lib/projection/ui/ProjectionTabStrip.js +64 -0
  546. package/lib/projection/ui/ProjectionTabStrip.js.map +1 -0
  547. package/lib/projection/ui/ProjectionVariablesControls.d.ts +33 -0
  548. package/lib/projection/ui/ProjectionVariablesControls.d.ts.map +1 -0
  549. package/lib/projection/ui/ProjectionVariablesControls.js +26 -0
  550. package/lib/projection/ui/ProjectionVariablesControls.js.map +1 -0
  551. package/lib/projection/ui/ProjectionVariablesMore.d.ts +33 -0
  552. package/lib/projection/ui/ProjectionVariablesMore.d.ts.map +1 -0
  553. package/lib/projection/ui/ProjectionVariablesMore.js +55 -0
  554. package/lib/projection/ui/ProjectionVariablesMore.js.map +1 -0
  555. package/lib/projection/ui/ProjectionVariablesTab.d.ts +78 -0
  556. package/lib/projection/ui/ProjectionVariablesTab.d.ts.map +1 -0
  557. package/lib/projection/ui/ProjectionVariablesTab.js +93 -0
  558. package/lib/projection/ui/ProjectionVariablesTab.js.map +1 -0
  559. package/lib/projection/ui/ProjectionViewer.d.ts +33 -0
  560. package/lib/projection/ui/ProjectionViewer.d.ts.map +1 -0
  561. package/lib/projection/ui/ProjectionViewer.js +91 -0
  562. package/lib/projection/ui/ProjectionViewer.js.map +1 -0
  563. package/lib/projection/ui/index.d.ts +20 -0
  564. package/lib/projection/ui/index.d.ts.map +1 -0
  565. package/lib/projection/ui/index.js +15 -0
  566. package/lib/projection/ui/index.js.map +1 -0
  567. package/lib/projection/ui/projectionBarModel.d.ts +92 -0
  568. package/lib/projection/ui/projectionBarModel.d.ts.map +1 -0
  569. package/lib/projection/ui/projectionBarModel.js +141 -0
  570. package/lib/projection/ui/projectionBarModel.js.map +1 -0
  571. package/lib/projection/ui/projectionBarReadings.d.ts +65 -0
  572. package/lib/projection/ui/projectionBarReadings.d.ts.map +1 -0
  573. package/lib/projection/ui/projectionBarReadings.js +138 -0
  574. package/lib/projection/ui/projectionBarReadings.js.map +1 -0
  575. package/lib/projection/ui/projectionBarSlots.d.ts +59 -0
  576. package/lib/projection/ui/projectionBarSlots.d.ts.map +1 -0
  577. package/lib/projection/ui/projectionBarSlots.js +98 -0
  578. package/lib/projection/ui/projectionBarSlots.js.map +1 -0
  579. package/lib/projection/ui/projectionBarStyles.d.ts +102 -0
  580. package/lib/projection/ui/projectionBarStyles.d.ts.map +1 -0
  581. package/lib/projection/ui/projectionBarStyles.js +154 -0
  582. package/lib/projection/ui/projectionBarStyles.js.map +1 -0
  583. package/lib/projection/ui/projectionCloudChoices.d.ts +18 -0
  584. package/lib/projection/ui/projectionCloudChoices.d.ts.map +1 -0
  585. package/lib/projection/ui/projectionCloudChoices.js +19 -0
  586. package/lib/projection/ui/projectionCloudChoices.js.map +1 -0
  587. package/lib/projection/ui/projectionEllipse.d.ts +50 -0
  588. package/lib/projection/ui/projectionEllipse.d.ts.map +1 -0
  589. package/lib/projection/ui/projectionEllipse.js +101 -0
  590. package/lib/projection/ui/projectionEllipse.js.map +1 -0
  591. package/lib/projection/ui/projectionEllipsoid.d.ts +38 -0
  592. package/lib/projection/ui/projectionEllipsoid.d.ts.map +1 -0
  593. package/lib/projection/ui/projectionEllipsoid.js +71 -0
  594. package/lib/projection/ui/projectionEllipsoid.js.map +1 -0
  595. package/lib/projection/ui/projectionFormat.d.ts +13 -0
  596. package/lib/projection/ui/projectionFormat.d.ts.map +1 -0
  597. package/lib/projection/ui/projectionFormat.js +19 -0
  598. package/lib/projection/ui/projectionFormat.js.map +1 -0
  599. package/lib/projection/ui/projectionMapChoices.d.ts +31 -0
  600. package/lib/projection/ui/projectionMapChoices.d.ts.map +1 -0
  601. package/lib/projection/ui/projectionMapChoices.js +46 -0
  602. package/lib/projection/ui/projectionMapChoices.js.map +1 -0
  603. package/lib/projection/ui/projectionMapChrome.d.ts +81 -0
  604. package/lib/projection/ui/projectionMapChrome.d.ts.map +1 -0
  605. package/lib/projection/ui/projectionMapChrome.js +139 -0
  606. package/lib/projection/ui/projectionMapChrome.js.map +1 -0
  607. package/lib/projection/ui/projectionMapModel.d.ts +114 -0
  608. package/lib/projection/ui/projectionMapModel.d.ts.map +1 -0
  609. package/lib/projection/ui/projectionMapModel.js +177 -0
  610. package/lib/projection/ui/projectionMapModel.js.map +1 -0
  611. package/lib/projection/ui/projectionMapView.d.ts +72 -0
  612. package/lib/projection/ui/projectionMapView.d.ts.map +1 -0
  613. package/lib/projection/ui/projectionMapView.js +116 -0
  614. package/lib/projection/ui/projectionMapView.js.map +1 -0
  615. package/lib/projection/ui/projectionPairsCeiling.d.ts +29 -0
  616. package/lib/projection/ui/projectionPairsCeiling.d.ts.map +1 -0
  617. package/lib/projection/ui/projectionPairsCeiling.js +29 -0
  618. package/lib/projection/ui/projectionPairsCeiling.js.map +1 -0
  619. package/lib/projection/ui/projectionSelection.d.ts +51 -0
  620. package/lib/projection/ui/projectionSelection.d.ts.map +1 -0
  621. package/lib/projection/ui/projectionSelection.js +66 -0
  622. package/lib/projection/ui/projectionSelection.js.map +1 -0
  623. package/lib/projection/ui/projectionSpaceModel.d.ts +14 -0
  624. package/lib/projection/ui/projectionSpaceModel.d.ts.map +1 -0
  625. package/lib/projection/ui/projectionSpaceModel.js +14 -0
  626. package/lib/projection/ui/projectionSpaceModel.js.map +1 -0
  627. package/lib/projection/ui/projectionTabInfo.d.ts +59 -0
  628. package/lib/projection/ui/projectionTabInfo.d.ts.map +1 -0
  629. package/lib/projection/ui/projectionTabInfo.js +108 -0
  630. package/lib/projection/ui/projectionTabInfo.js.map +1 -0
  631. package/lib/projection/ui/projectionTabModels.d.ts +49 -0
  632. package/lib/projection/ui/projectionTabModels.d.ts.map +1 -0
  633. package/lib/projection/ui/projectionTabModels.js +59 -0
  634. package/lib/projection/ui/projectionTabModels.js.map +1 -0
  635. package/lib/projection/ui/projectionTabStyles.d.ts +131 -0
  636. package/lib/projection/ui/projectionTabStyles.d.ts.map +1 -0
  637. package/lib/projection/ui/projectionTabStyles.js +134 -0
  638. package/lib/projection/ui/projectionTabStyles.js.map +1 -0
  639. package/lib/projection/ui/projectionVariablesModel.d.ts +104 -0
  640. package/lib/projection/ui/projectionVariablesModel.d.ts.map +1 -0
  641. package/lib/projection/ui/projectionVariablesModel.js +165 -0
  642. package/lib/projection/ui/projectionVariablesModel.js.map +1 -0
  643. package/lib/projection/ui/projectionVariablesWords.d.ts +50 -0
  644. package/lib/projection/ui/projectionVariablesWords.d.ts.map +1 -0
  645. package/lib/projection/ui/projectionVariablesWords.js +91 -0
  646. package/lib/projection/ui/projectionVariablesWords.js.map +1 -0
  647. package/lib/projection/ui/projectionViewChoices.d.ts +31 -0
  648. package/lib/projection/ui/projectionViewChoices.d.ts.map +1 -0
  649. package/lib/projection/ui/projectionViewChoices.js +53 -0
  650. package/lib/projection/ui/projectionViewChoices.js.map +1 -0
  651. package/lib/projection/ui/projectionViewerProps.d.ts +187 -0
  652. package/lib/projection/ui/projectionViewerProps.d.ts.map +1 -0
  653. package/lib/projection/ui/projectionViewerProps.js +9 -0
  654. package/lib/projection/ui/projectionViewerProps.js.map +1 -0
  655. package/lib/projection/ui/useProjectionState.d.ts +63 -0
  656. package/lib/projection/ui/useProjectionState.d.ts.map +1 -0
  657. package/lib/projection/ui/useProjectionState.js +107 -0
  658. package/lib/projection/ui/useProjectionState.js.map +1 -0
  659. package/lib/scatter/core/confidenceEllipse.d.ts +117 -0
  660. package/lib/scatter/core/confidenceEllipse.d.ts.map +1 -0
  661. package/lib/scatter/core/confidenceEllipse.js +132 -0
  662. package/lib/scatter/core/confidenceEllipse.js.map +1 -0
  663. package/lib/scatter/core/ellipseCoverage.d.ts +33 -0
  664. package/lib/scatter/core/ellipseCoverage.d.ts.map +1 -0
  665. package/lib/scatter/core/ellipseCoverage.js +46 -0
  666. package/lib/scatter/core/ellipseCoverage.js.map +1 -0
  667. package/lib/scatter/core/ellipseProjection.d.ts +53 -0
  668. package/lib/scatter/core/ellipseProjection.d.ts.map +1 -0
  669. package/lib/scatter/core/ellipseProjection.js +94 -0
  670. package/lib/scatter/core/ellipseProjection.js.map +1 -0
  671. package/lib/scatter/core/index.d.ts +24 -0
  672. package/lib/scatter/core/index.d.ts.map +1 -0
  673. package/lib/scatter/core/index.js +19 -0
  674. package/lib/scatter/core/index.js.map +1 -0
  675. package/lib/scatter/core/lassoPath.d.ts +60 -0
  676. package/lib/scatter/core/lassoPath.d.ts.map +1 -0
  677. package/lib/scatter/core/lassoPath.js +101 -0
  678. package/lib/scatter/core/lassoPath.js.map +1 -0
  679. package/lib/scatter/core/polygon.d.ts +58 -0
  680. package/lib/scatter/core/polygon.d.ts.map +1 -0
  681. package/lib/scatter/core/polygon.js +140 -0
  682. package/lib/scatter/core/polygon.js.map +1 -0
  683. package/lib/scatter/core/scatterSelection.d.ts +44 -0
  684. package/lib/scatter/core/scatterSelection.d.ts.map +1 -0
  685. package/lib/scatter/core/scatterSelection.js +81 -0
  686. package/lib/scatter/core/scatterSelection.js.map +1 -0
  687. package/lib/scatter/core/screenPoints.d.ts +58 -0
  688. package/lib/scatter/core/screenPoints.d.ts.map +1 -0
  689. package/lib/scatter/core/screenPoints.js +78 -0
  690. package/lib/scatter/core/screenPoints.js.map +1 -0
  691. package/lib/scatter/ui/ScatterEllipseLayer.d.ts +69 -0
  692. package/lib/scatter/ui/ScatterEllipseLayer.d.ts.map +1 -0
  693. package/lib/scatter/ui/ScatterEllipseLayer.js +77 -0
  694. package/lib/scatter/ui/ScatterEllipseLayer.js.map +1 -0
  695. package/lib/scatter/ui/ScatterLabelLayer.d.ts +40 -0
  696. package/lib/scatter/ui/ScatterLabelLayer.d.ts.map +1 -0
  697. package/lib/scatter/ui/ScatterLabelLayer.js +77 -0
  698. package/lib/scatter/ui/ScatterLabelLayer.js.map +1 -0
  699. package/lib/scatter/ui/ScatterMarkLayer.d.ts +68 -0
  700. package/lib/scatter/ui/ScatterMarkLayer.d.ts.map +1 -0
  701. package/lib/scatter/ui/ScatterMarkLayer.js +134 -0
  702. package/lib/scatter/ui/ScatterMarkLayer.js.map +1 -0
  703. package/lib/scatter/ui/ScatterMatrix.d.ts +19 -0
  704. package/lib/scatter/ui/ScatterMatrix.d.ts.map +1 -0
  705. package/lib/scatter/ui/ScatterMatrix.js +125 -0
  706. package/lib/scatter/ui/ScatterMatrix.js.map +1 -0
  707. package/lib/scatter/ui/ScatterMatrixCell.d.ts +24 -0
  708. package/lib/scatter/ui/ScatterMatrixCell.d.ts.map +1 -0
  709. package/lib/scatter/ui/ScatterMatrixCell.js +90 -0
  710. package/lib/scatter/ui/ScatterMatrixCell.js.map +1 -0
  711. package/lib/scatter/ui/ScatterMatrixDiagonal.d.ts +78 -0
  712. package/lib/scatter/ui/ScatterMatrixDiagonal.d.ts.map +1 -0
  713. package/lib/scatter/ui/ScatterMatrixDiagonal.js +83 -0
  714. package/lib/scatter/ui/ScatterMatrixDiagonal.js.map +1 -0
  715. package/lib/scatter/ui/ScatterPlot.d.ts +17 -0
  716. package/lib/scatter/ui/ScatterPlot.d.ts.map +1 -0
  717. package/lib/scatter/ui/ScatterPlot.js +107 -0
  718. package/lib/scatter/ui/ScatterPlot.js.map +1 -0
  719. package/lib/scatter/ui/ScatterPointLayer.d.ts +67 -0
  720. package/lib/scatter/ui/ScatterPointLayer.d.ts.map +1 -0
  721. package/lib/scatter/ui/ScatterPointLayer.js +87 -0
  722. package/lib/scatter/ui/ScatterPointLayer.js.map +1 -0
  723. package/lib/scatter/ui/index.d.ts +53 -0
  724. package/lib/scatter/ui/index.d.ts.map +1 -0
  725. package/lib/scatter/ui/index.js +34 -0
  726. package/lib/scatter/ui/index.js.map +1 -0
  727. package/lib/scatter/ui/lassoGesture.d.ts +197 -0
  728. package/lib/scatter/ui/lassoGesture.d.ts.map +1 -0
  729. package/lib/scatter/ui/lassoGesture.js +103 -0
  730. package/lib/scatter/ui/lassoGesture.js.map +1 -0
  731. package/lib/scatter/ui/scatterGroupSpread.d.ts +81 -0
  732. package/lib/scatter/ui/scatterGroupSpread.d.ts.map +1 -0
  733. package/lib/scatter/ui/scatterGroupSpread.js +147 -0
  734. package/lib/scatter/ui/scatterGroupSpread.js.map +1 -0
  735. package/lib/scatter/ui/scatterLabelBoxes.d.ts +94 -0
  736. package/lib/scatter/ui/scatterLabelBoxes.d.ts.map +1 -0
  737. package/lib/scatter/ui/scatterLabelBoxes.js +140 -0
  738. package/lib/scatter/ui/scatterLabelBoxes.js.map +1 -0
  739. package/lib/scatter/ui/scatterLabelPlacement.d.ts +96 -0
  740. package/lib/scatter/ui/scatterLabelPlacement.d.ts.map +1 -0
  741. package/lib/scatter/ui/scatterLabelPlacement.js +210 -0
  742. package/lib/scatter/ui/scatterLabelPlacement.js.map +1 -0
  743. package/lib/scatter/ui/scatterLabels.d.ts +81 -0
  744. package/lib/scatter/ui/scatterLabels.d.ts.map +1 -0
  745. package/lib/scatter/ui/scatterLabels.js +101 -0
  746. package/lib/scatter/ui/scatterLabels.js.map +1 -0
  747. package/lib/scatter/ui/scatterMarkGlyph.d.ts +37 -0
  748. package/lib/scatter/ui/scatterMarkGlyph.d.ts.map +1 -0
  749. package/lib/scatter/ui/scatterMarkGlyph.js +33 -0
  750. package/lib/scatter/ui/scatterMarkGlyph.js.map +1 -0
  751. package/lib/scatter/ui/scatterMatrixDots.d.ts +24 -0
  752. package/lib/scatter/ui/scatterMatrixDots.d.ts.map +1 -0
  753. package/lib/scatter/ui/scatterMatrixDots.js +84 -0
  754. package/lib/scatter/ui/scatterMatrixDots.js.map +1 -0
  755. package/lib/scatter/ui/scatterMatrixLayout.d.ts +93 -0
  756. package/lib/scatter/ui/scatterMatrixLayout.d.ts.map +1 -0
  757. package/lib/scatter/ui/scatterMatrixLayout.js +117 -0
  758. package/lib/scatter/ui/scatterMatrixLayout.js.map +1 -0
  759. package/lib/scatter/ui/scatterMatrixOutlines.d.ts +27 -0
  760. package/lib/scatter/ui/scatterMatrixOutlines.d.ts.map +1 -0
  761. package/lib/scatter/ui/scatterMatrixOutlines.js +34 -0
  762. package/lib/scatter/ui/scatterMatrixOutlines.js.map +1 -0
  763. package/lib/scatter/ui/scatterMatrixProps.d.ts +99 -0
  764. package/lib/scatter/ui/scatterMatrixProps.d.ts.map +1 -0
  765. package/lib/scatter/ui/scatterMatrixProps.js +10 -0
  766. package/lib/scatter/ui/scatterMatrixProps.js.map +1 -0
  767. package/lib/scatter/ui/scatterOutlineShape.d.ts +63 -0
  768. package/lib/scatter/ui/scatterOutlineShape.d.ts.map +1 -0
  769. package/lib/scatter/ui/scatterOutlineShape.js +82 -0
  770. package/lib/scatter/ui/scatterOutlineShape.js.map +1 -0
  771. package/lib/scatter/ui/scatterPlotModel.d.ts +107 -0
  772. package/lib/scatter/ui/scatterPlotModel.d.ts.map +1 -0
  773. package/lib/scatter/ui/scatterPlotModel.js +139 -0
  774. package/lib/scatter/ui/scatterPlotModel.js.map +1 -0
  775. package/lib/scatter/ui/scatterPlotProps.d.ts +269 -0
  776. package/lib/scatter/ui/scatterPlotProps.d.ts.map +1 -0
  777. package/lib/scatter/ui/scatterPlotProps.js +10 -0
  778. package/lib/scatter/ui/scatterPlotProps.js.map +1 -0
  779. package/lib/scatter/ui/useLassoGesture.d.ts +18 -0
  780. package/lib/scatter/ui/useLassoGesture.d.ts.map +1 -0
  781. package/lib/scatter/ui/useLassoGesture.js +140 -0
  782. package/lib/scatter/ui/useLassoGesture.js.map +1 -0
  783. package/lib/scatter/ui/usePointHover.d.ts +88 -0
  784. package/lib/scatter/ui/usePointHover.d.ts.map +1 -0
  785. package/lib/scatter/ui/usePointHover.js +88 -0
  786. package/lib/scatter/ui/usePointHover.js.map +1 -0
  787. package/lib/scatter/ui/useScatterFrame.d.ts +80 -0
  788. package/lib/scatter/ui/useScatterFrame.d.ts.map +1 -0
  789. package/lib/scatter/ui/useScatterFrame.js +101 -0
  790. package/lib/scatter/ui/useScatterFrame.js.map +1 -0
  791. package/lib/scatter/ui/useScatterInteraction.d.ts +112 -0
  792. package/lib/scatter/ui/useScatterInteraction.d.ts.map +1 -0
  793. package/lib/scatter/ui/useScatterInteraction.js +101 -0
  794. package/lib/scatter/ui/useScatterInteraction.js.map +1 -0
  795. package/lib/scatter/ui/useScatterKeyboard.d.ts +60 -0
  796. package/lib/scatter/ui/useScatterKeyboard.d.ts.map +1 -0
  797. package/lib/scatter/ui/useScatterKeyboard.js +56 -0
  798. package/lib/scatter/ui/useScatterKeyboard.js.map +1 -0
  799. package/lib/scatter/ui/useScatterSelection.d.ts +78 -0
  800. package/lib/scatter/ui/useScatterSelection.d.ts.map +1 -0
  801. package/lib/scatter/ui/useScatterSelection.js +72 -0
  802. package/lib/scatter/ui/useScatterSelection.js.map +1 -0
  803. package/lib/scatter3d/core/cloudGesture.d.ts +17 -0
  804. package/lib/scatter3d/core/cloudGesture.d.ts.map +1 -0
  805. package/lib/scatter3d/core/cloudGesture.js +2 -0
  806. package/lib/scatter3d/core/cloudGesture.js.map +1 -0
  807. package/lib/scatter3d/core/confidenceEllipsoid.d.ts +63 -0
  808. package/lib/scatter3d/core/confidenceEllipsoid.d.ts.map +1 -0
  809. package/lib/scatter3d/core/confidenceEllipsoid.js +128 -0
  810. package/lib/scatter3d/core/confidenceEllipsoid.js.map +1 -0
  811. package/lib/scatter3d/core/cubeFrame.d.ts +40 -0
  812. package/lib/scatter3d/core/cubeFrame.d.ts.map +1 -0
  813. package/lib/scatter3d/core/cubeFrame.js +58 -0
  814. package/lib/scatter3d/core/cubeFrame.js.map +1 -0
  815. package/lib/scatter3d/core/cubePoints.d.ts +35 -0
  816. package/lib/scatter3d/core/cubePoints.d.ts.map +1 -0
  817. package/lib/scatter3d/core/cubePoints.js +50 -0
  818. package/lib/scatter3d/core/cubePoints.js.map +1 -0
  819. package/lib/scatter3d/core/ellipsoidCoverage.d.ts +32 -0
  820. package/lib/scatter3d/core/ellipsoidCoverage.d.ts.map +1 -0
  821. package/lib/scatter3d/core/ellipsoidCoverage.js +83 -0
  822. package/lib/scatter3d/core/ellipsoidCoverage.js.map +1 -0
  823. package/lib/scatter3d/core/ellipsoidSilhouette.d.ts +42 -0
  824. package/lib/scatter3d/core/ellipsoidSilhouette.d.ts.map +1 -0
  825. package/lib/scatter3d/core/ellipsoidSilhouette.js +52 -0
  826. package/lib/scatter3d/core/ellipsoidSilhouette.js.map +1 -0
  827. package/lib/scatter3d/core/index.d.ts +29 -0
  828. package/lib/scatter3d/core/index.d.ts.map +1 -0
  829. package/lib/scatter3d/core/index.js +22 -0
  830. package/lib/scatter3d/core/index.js.map +1 -0
  831. package/lib/scatter3d/core/orbitCamera.d.ts +113 -0
  832. package/lib/scatter3d/core/orbitCamera.d.ts.map +1 -0
  833. package/lib/scatter3d/core/orbitCamera.js +104 -0
  834. package/lib/scatter3d/core/orbitCamera.js.map +1 -0
  835. package/lib/scatter3d/core/symmetricEigen.d.ts +47 -0
  836. package/lib/scatter3d/core/symmetricEigen.d.ts.map +1 -0
  837. package/lib/scatter3d/core/symmetricEigen.js +219 -0
  838. package/lib/scatter3d/core/symmetricEigen.js.map +1 -0
  839. package/lib/scatter3d/ui/CloudFrameLayer.d.ts +33 -0
  840. package/lib/scatter3d/ui/CloudFrameLayer.d.ts.map +1 -0
  841. package/lib/scatter3d/ui/CloudFrameLayer.js +37 -0
  842. package/lib/scatter3d/ui/CloudFrameLayer.js.map +1 -0
  843. package/lib/scatter3d/ui/CloudPointLayer.d.ts +62 -0
  844. package/lib/scatter3d/ui/CloudPointLayer.d.ts.map +1 -0
  845. package/lib/scatter3d/ui/CloudPointLayer.js +67 -0
  846. package/lib/scatter3d/ui/CloudPointLayer.js.map +1 -0
  847. package/lib/scatter3d/ui/CloudShellLayer.d.ts +52 -0
  848. package/lib/scatter3d/ui/CloudShellLayer.d.ts.map +1 -0
  849. package/lib/scatter3d/ui/CloudShellLayer.js +40 -0
  850. package/lib/scatter3d/ui/CloudShellLayer.js.map +1 -0
  851. package/lib/scatter3d/ui/ScatterCloud.d.ts +24 -0
  852. package/lib/scatter3d/ui/ScatterCloud.d.ts.map +1 -0
  853. package/lib/scatter3d/ui/ScatterCloud.js +189 -0
  854. package/lib/scatter3d/ui/ScatterCloud.js.map +1 -0
  855. package/lib/scatter3d/ui/cloudGeometry.d.ts +108 -0
  856. package/lib/scatter3d/ui/cloudGeometry.d.ts.map +1 -0
  857. package/lib/scatter3d/ui/cloudGeometry.js +122 -0
  858. package/lib/scatter3d/ui/cloudGeometry.js.map +1 -0
  859. package/lib/scatter3d/ui/cloudShellStyles.d.ts +36 -0
  860. package/lib/scatter3d/ui/cloudShellStyles.d.ts.map +1 -0
  861. package/lib/scatter3d/ui/cloudShellStyles.js +62 -0
  862. package/lib/scatter3d/ui/cloudShellStyles.js.map +1 -0
  863. package/lib/scatter3d/ui/cloudZoom.d.ts +21 -0
  864. package/lib/scatter3d/ui/cloudZoom.d.ts.map +1 -0
  865. package/lib/scatter3d/ui/cloudZoom.js +22 -0
  866. package/lib/scatter3d/ui/cloudZoom.js.map +1 -0
  867. package/lib/scatter3d/ui/index.d.ts +29 -0
  868. package/lib/scatter3d/ui/index.d.ts.map +1 -0
  869. package/lib/scatter3d/ui/index.js +21 -0
  870. package/lib/scatter3d/ui/index.js.map +1 -0
  871. package/lib/scatter3d/ui/scatterCloudModel.d.ts +60 -0
  872. package/lib/scatter3d/ui/scatterCloudModel.d.ts.map +1 -0
  873. package/lib/scatter3d/ui/scatterCloudModel.js +66 -0
  874. package/lib/scatter3d/ui/scatterCloudModel.js.map +1 -0
  875. package/lib/scatter3d/ui/scatterCloudProps.d.ts +185 -0
  876. package/lib/scatter3d/ui/scatterCloudProps.d.ts.map +1 -0
  877. package/lib/scatter3d/ui/scatterCloudProps.js +9 -0
  878. package/lib/scatter3d/ui/scatterCloudProps.js.map +1 -0
  879. package/lib/scatter3d/ui/useOrbitDrag.d.ts +60 -0
  880. package/lib/scatter3d/ui/useOrbitDrag.d.ts.map +1 -0
  881. package/lib/scatter3d/ui/useOrbitDrag.js +129 -0
  882. package/lib/scatter3d/ui/useOrbitDrag.js.map +1 -0
  883. package/lib/share/core/query.d.ts +10 -4
  884. package/lib/share/core/query.d.ts.map +1 -1
  885. package/lib/share/core/query.js +11 -7
  886. package/lib/share/core/query.js.map +1 -1
  887. package/lib/spectra/core/axisEntries.d.ts +50 -0
  888. package/lib/spectra/core/axisEntries.d.ts.map +1 -0
  889. package/lib/spectra/core/axisEntries.js +78 -0
  890. package/lib/spectra/core/axisEntries.js.map +1 -0
  891. package/lib/spectra/core/chainProblems.d.ts +14 -0
  892. package/lib/spectra/core/chainProblems.d.ts.map +1 -0
  893. package/lib/spectra/core/chainProblems.js +100 -0
  894. package/lib/spectra/core/chainProblems.js.map +1 -0
  895. package/lib/spectra/core/filterCatalog.d.ts +57 -0
  896. package/lib/spectra/core/filterCatalog.d.ts.map +1 -0
  897. package/lib/spectra/core/filterCatalog.js +81 -0
  898. package/lib/spectra/core/filterCatalog.js.map +1 -0
  899. package/lib/spectra/core/filterChain.d.ts +69 -0
  900. package/lib/spectra/core/filterChain.d.ts.map +1 -0
  901. package/lib/spectra/core/filterChain.js +163 -0
  902. package/lib/spectra/core/filterChain.js.map +1 -0
  903. package/lib/spectra/core/filterEntries.d.ts +136 -0
  904. package/lib/spectra/core/filterEntries.d.ts.map +1 -0
  905. package/lib/spectra/core/filterEntries.js +139 -0
  906. package/lib/spectra/core/filterEntries.js.map +1 -0
  907. package/lib/spectra/core/filterFields.d.ts +94 -0
  908. package/lib/spectra/core/filterFields.d.ts.map +1 -0
  909. package/lib/spectra/core/filterFields.js +82 -0
  910. package/lib/spectra/core/filterFields.js.map +1 -0
  911. package/lib/spectra/core/index.d.ts +14 -0
  912. package/lib/spectra/core/index.d.ts.map +1 -0
  913. package/lib/spectra/core/index.js +9 -0
  914. package/lib/spectra/core/index.js.map +1 -0
  915. package/lib/spectra/core/principalComponents.d.ts +70 -0
  916. package/lib/spectra/core/principalComponents.d.ts.map +1 -0
  917. package/lib/spectra/core/principalComponents.js +90 -0
  918. package/lib/spectra/core/principalComponents.js.map +1 -0
  919. package/lib/spectra/core/problems.d.ts +57 -0
  920. package/lib/spectra/core/problems.d.ts.map +1 -0
  921. package/lib/spectra/core/problems.js +121 -0
  922. package/lib/spectra/core/problems.js.map +1 -0
  923. package/lib/spectra/core/settings.d.ts +67 -0
  924. package/lib/spectra/core/settings.d.ts.map +1 -0
  925. package/lib/spectra/core/settings.js +35 -0
  926. package/lib/spectra/core/settings.js.map +1 -0
  927. package/lib/spectra/core/settingsProblems.d.ts +18 -0
  928. package/lib/spectra/core/settingsProblems.d.ts.map +1 -0
  929. package/lib/spectra/core/settingsProblems.js +148 -0
  930. package/lib/spectra/core/settingsProblems.js.map +1 -0
  931. package/lib/spectra/core/stepProblems.d.ts +13 -0
  932. package/lib/spectra/core/stepProblems.d.ts.map +1 -0
  933. package/lib/spectra/core/stepProblems.js +133 -0
  934. package/lib/spectra/core/stepProblems.js.map +1 -0
  935. package/lib/spectra/ui/CalculationRows.d.ts +21 -0
  936. package/lib/spectra/ui/CalculationRows.d.ts.map +1 -0
  937. package/lib/spectra/ui/CalculationRows.js +77 -0
  938. package/lib/spectra/ui/CalculationRows.js.map +1 -0
  939. package/lib/spectra/ui/FilterChainEditor.d.ts +34 -0
  940. package/lib/spectra/ui/FilterChainEditor.d.ts.map +1 -0
  941. package/lib/spectra/ui/FilterChainEditor.js +111 -0
  942. package/lib/spectra/ui/FilterChainEditor.js.map +1 -0
  943. package/lib/spectra/ui/FilterChoiceControl.d.ts +23 -0
  944. package/lib/spectra/ui/FilterChoiceControl.d.ts.map +1 -0
  945. package/lib/spectra/ui/FilterChoiceControl.js +65 -0
  946. package/lib/spectra/ui/FilterChoiceControl.js.map +1 -0
  947. package/lib/spectra/ui/FilterFieldControl.d.ts +25 -0
  948. package/lib/spectra/ui/FilterFieldControl.d.ts.map +1 -0
  949. package/lib/spectra/ui/FilterFieldControl.js +68 -0
  950. package/lib/spectra/ui/FilterFieldControl.js.map +1 -0
  951. package/lib/spectra/ui/FilterRow.d.ts +33 -0
  952. package/lib/spectra/ui/FilterRow.d.ts.map +1 -0
  953. package/lib/spectra/ui/FilterRow.js +76 -0
  954. package/lib/spectra/ui/FilterRow.js.map +1 -0
  955. package/lib/spectra/ui/MatrixFilterRows.d.ts +22 -0
  956. package/lib/spectra/ui/MatrixFilterRows.d.ts.map +1 -0
  957. package/lib/spectra/ui/MatrixFilterRows.js +92 -0
  958. package/lib/spectra/ui/MatrixFilterRows.js.map +1 -0
  959. package/lib/spectra/ui/NormalizationEditor.d.ts +24 -0
  960. package/lib/spectra/ui/NormalizationEditor.d.ts.map +1 -0
  961. package/lib/spectra/ui/NormalizationEditor.js +108 -0
  962. package/lib/spectra/ui/NormalizationEditor.js.map +1 -0
  963. package/lib/spectra/ui/NumberField.d.ts +41 -0
  964. package/lib/spectra/ui/NumberField.d.ts.map +1 -0
  965. package/lib/spectra/ui/NumberField.js +81 -0
  966. package/lib/spectra/ui/NumberField.js.map +1 -0
  967. package/lib/spectra/ui/PostProcessingEditor.d.ts +29 -0
  968. package/lib/spectra/ui/PostProcessingEditor.d.ts.map +1 -0
  969. package/lib/spectra/ui/PostProcessingEditor.js +53 -0
  970. package/lib/spectra/ui/PostProcessingEditor.js.map +1 -0
  971. package/lib/spectra/ui/PrincipalComponentSelect.d.ts +40 -0
  972. package/lib/spectra/ui/PrincipalComponentSelect.d.ts.map +1 -0
  973. package/lib/spectra/ui/PrincipalComponentSelect.js +97 -0
  974. package/lib/spectra/ui/PrincipalComponentSelect.js.map +1 -0
  975. package/lib/spectra/ui/ProblemList.d.ts +24 -0
  976. package/lib/spectra/ui/ProblemList.d.ts.map +1 -0
  977. package/lib/spectra/ui/ProblemList.js +40 -0
  978. package/lib/spectra/ui/ProblemList.js.map +1 -0
  979. package/lib/spectra/ui/RangeRows.d.ts +23 -0
  980. package/lib/spectra/ui/RangeRows.d.ts.map +1 -0
  981. package/lib/spectra/ui/RangeRows.js +76 -0
  982. package/lib/spectra/ui/RangeRows.js.map +1 -0
  983. package/lib/spectra/ui/ScaleFields.d.ts +28 -0
  984. package/lib/spectra/ui/ScaleFields.d.ts.map +1 -0
  985. package/lib/spectra/ui/ScaleFields.js +67 -0
  986. package/lib/spectra/ui/ScaleFields.js.map +1 -0
  987. package/lib/spectra/ui/SettingsPart.d.ts +25 -0
  988. package/lib/spectra/ui/SettingsPart.d.ts.map +1 -0
  989. package/lib/spectra/ui/SettingsPart.js +35 -0
  990. package/lib/spectra/ui/SettingsPart.js.map +1 -0
  991. package/lib/spectra/ui/SpectraSettingsEditor.d.ts +62 -0
  992. package/lib/spectra/ui/SpectraSettingsEditor.d.ts.map +1 -0
  993. package/lib/spectra/ui/SpectraSettingsEditor.js +39 -0
  994. package/lib/spectra/ui/SpectraSettingsEditor.js.map +1 -0
  995. package/lib/spectra/ui/SpectrumSelection.d.ts +30 -0
  996. package/lib/spectra/ui/SpectrumSelection.d.ts.map +1 -0
  997. package/lib/spectra/ui/SpectrumSelection.js +116 -0
  998. package/lib/spectra/ui/SpectrumSelection.js.map +1 -0
  999. package/lib/spectra/ui/ZoneRows.d.ts +41 -0
  1000. package/lib/spectra/ui/ZoneRows.d.ts.map +1 -0
  1001. package/lib/spectra/ui/ZoneRows.js +70 -0
  1002. package/lib/spectra/ui/ZoneRows.js.map +1 -0
  1003. package/lib/spectra/ui/index.d.ts +7 -0
  1004. package/lib/spectra/ui/index.d.ts.map +1 -0
  1005. package/lib/spectra/ui/index.js +4 -0
  1006. package/lib/spectra/ui/index.js.map +1 -0
  1007. package/lib/spectra/ui/matrixSteps.d.ts +61 -0
  1008. package/lib/spectra/ui/matrixSteps.d.ts.map +1 -0
  1009. package/lib/spectra/ui/matrixSteps.js +92 -0
  1010. package/lib/spectra/ui/matrixSteps.js.map +1 -0
  1011. package/lib/spectra/ui/problemsAbout.d.ts +14 -0
  1012. package/lib/spectra/ui/problemsAbout.d.ts.map +1 -0
  1013. package/lib/spectra/ui/problemsAbout.js +15 -0
  1014. package/lib/spectra/ui/problemsAbout.js.map +1 -0
  1015. package/lib/spectra/ui/rowKeys.d.ts +27 -0
  1016. package/lib/spectra/ui/rowKeys.d.ts.map +1 -0
  1017. package/lib/spectra/ui/rowKeys.js +45 -0
  1018. package/lib/spectra/ui/rowKeys.js.map +1 -0
  1019. package/lib/spectra/ui/scaleOptions.d.ts +50 -0
  1020. package/lib/spectra/ui/scaleOptions.d.ts.map +1 -0
  1021. package/lib/spectra/ui/scaleOptions.js +103 -0
  1022. package/lib/spectra/ui/scaleOptions.js.map +1 -0
  1023. package/lib/ui.d.ts +7 -0
  1024. package/lib/ui.d.ts.map +1 -1
  1025. package/lib/ui.js +7 -0
  1026. package/lib/ui.js.map +1 -1
  1027. package/package.json +17 -1
  1028. package/src/chart/core/chartAxisScale.ts +249 -0
  1029. package/src/chart/core/chartBand.ts +82 -0
  1030. package/src/chart/core/chartBins.ts +96 -0
  1031. package/src/chart/core/chartExtent.ts +203 -0
  1032. package/src/chart/core/chartLabels.ts +68 -0
  1033. package/src/chart/core/chartPalette.ts +71 -0
  1034. package/src/chart/core/chartScale.ts +72 -0
  1035. package/src/chart/core/chartViewport.ts +211 -0
  1036. package/src/chart/core/index.ts +58 -0
  1037. package/src/chart/core/matrix.ts +100 -0
  1038. package/src/chart/ui/ChartAxis.tsx +232 -0
  1039. package/src/chart/ui/ChartFrame.tsx +246 -0
  1040. package/src/chart/ui/ChartSeriesMarks.tsx +98 -0
  1041. package/src/chart/ui/ChartTrackingLayer.tsx +192 -0
  1042. package/src/chart/ui/TrackedLineChart.tsx +267 -0
  1043. package/src/chart/ui/TrackedStickChart.tsx +197 -0
  1044. package/src/chart/ui/chartStyles.ts +194 -0
  1045. package/src/chart/ui/index.ts +34 -0
  1046. package/src/chart/ui/stickChartModel.ts +201 -0
  1047. package/src/chart/ui/useWheelZoom.ts +177 -0
  1048. package/src/chrome/ui/NavLink.tsx +5 -3
  1049. package/src/chrome/ui/SiteFooter.tsx +16 -1
  1050. package/src/chrome/ui/SiteHeader.tsx +19 -1
  1051. package/src/chrome/ui/navItem.ts +12 -0
  1052. package/src/color/core/gradient.ts +29 -0
  1053. package/src/color/core/hsv.ts +112 -0
  1054. package/src/color/core/index.ts +27 -1
  1055. package/src/color/core/interpolate.ts +179 -0
  1056. package/src/color/core/scale.ts +17 -49
  1057. package/src/color/core/scaleData.ts +128 -0
  1058. package/src/color/core/scaleText.ts +134 -0
  1059. package/src/color/core/scales.ts +148 -0
  1060. package/src/color/ui/ColorScaleBar.tsx +73 -0
  1061. package/src/color/ui/ColorScaleEditor.tsx +243 -0
  1062. package/src/color/ui/ColorScaleSelect.tsx +252 -0
  1063. package/src/color/ui/index.ts +6 -0
  1064. package/src/core.ts +6 -0
  1065. package/src/credits/core/credits.ts +20 -0
  1066. package/src/download/core/cssTokens.ts +90 -0
  1067. package/src/download/core/downloadFigure.ts +66 -0
  1068. package/src/download/core/figureLegend.ts +167 -0
  1069. package/src/download/core/figurePng.ts +87 -0
  1070. package/src/download/core/figureScale.ts +83 -0
  1071. package/src/download/core/figureSvg.ts +210 -0
  1072. package/src/download/core/figureSvgDocument.ts +139 -0
  1073. package/src/download/core/figureTarget.ts +151 -0
  1074. package/src/download/core/index.ts +36 -0
  1075. package/src/download/ui/FigureDownload.tsx +158 -0
  1076. package/src/download/ui/FigureDownloadPanel.tsx +165 -0
  1077. package/src/download/ui/index.ts +13 -0
  1078. package/src/ecosystem/core/sites.ts +26 -1
  1079. package/src/ecosystem/ui/glyphs.tsx +42 -0
  1080. package/src/overlay/core/emptiestCorner.ts +122 -0
  1081. package/src/overlay/core/index.ts +34 -0
  1082. package/src/overlay/core/overlayCollapse.ts +20 -0
  1083. package/src/overlay/core/overlayMarks.ts +43 -0
  1084. package/src/overlay/core/overlayMetrics.ts +112 -0
  1085. package/src/overlay/core/overlayPlacement.ts +80 -0
  1086. package/src/overlay/core/overlayTierRoom.ts +199 -0
  1087. package/src/overlay/core/overlayTiers.ts +130 -0
  1088. package/src/overlay/core/placeOverlayCard.ts +93 -0
  1089. package/src/overlay/ui/OverlayAction.tsx +66 -0
  1090. package/src/overlay/ui/OverlayBar.tsx +188 -0
  1091. package/src/overlay/ui/OverlayBarButton.tsx +83 -0
  1092. package/src/overlay/ui/OverlayBarCard.tsx +78 -0
  1093. package/src/overlay/ui/OverlayBarStrip.tsx +62 -0
  1094. package/src/overlay/ui/OverlayCaption.tsx +124 -0
  1095. package/src/overlay/ui/OverlayChip.tsx +181 -0
  1096. package/src/overlay/ui/OverlayDivider.tsx +24 -0
  1097. package/src/overlay/ui/OverlayGroup.tsx +157 -0
  1098. package/src/overlay/ui/OverlayIconButton.tsx +131 -0
  1099. package/src/overlay/ui/OverlayInfo.tsx +92 -0
  1100. package/src/overlay/ui/OverlayLayer.tsx +118 -0
  1101. package/src/overlay/ui/OverlayLegend.tsx +228 -0
  1102. package/src/overlay/ui/OverlayLegendMark.tsx +95 -0
  1103. package/src/overlay/ui/OverlayNumber.tsx +160 -0
  1104. package/src/overlay/ui/OverlayPanel.tsx +162 -0
  1105. package/src/overlay/ui/OverlayPills.tsx +157 -0
  1106. package/src/overlay/ui/OverlayReadout.tsx +247 -0
  1107. package/src/overlay/ui/OverlayRow.tsx +200 -0
  1108. package/src/overlay/ui/OverlaySegmented.tsx +67 -0
  1109. package/src/overlay/ui/OverlaySelect.tsx +114 -0
  1110. package/src/overlay/ui/OverlaySwatchIcon.tsx +126 -0
  1111. package/src/overlay/ui/OverlayToggle.tsx +136 -0
  1112. package/src/overlay/ui/OverlayValueButton.tsx +149 -0
  1113. package/src/overlay/ui/OverlayValueMenu.tsx +141 -0
  1114. package/src/overlay/ui/index.ts +72 -0
  1115. package/src/overlay/ui/overlayBarShape.ts +113 -0
  1116. package/src/overlay/ui/overlayControlStyles.ts +176 -0
  1117. package/src/overlay/ui/overlayFigureStyles.ts +111 -0
  1118. package/src/overlay/ui/overlayPanelContext.ts +42 -0
  1119. package/src/overlay/ui/overlayPanelStyles.ts +235 -0
  1120. package/src/overlay/ui/overlayPillKeys.ts +45 -0
  1121. package/src/overlay/ui/overlayPillStyles.ts +190 -0
  1122. package/src/overlay/ui/overlayRowStyles.ts +166 -0
  1123. package/src/overlay/ui/overlayStepperStyles.ts +112 -0
  1124. package/src/overlay/ui/overlayStyles.ts +222 -0
  1125. package/src/overlay/ui/overlaySurface.ts +120 -0
  1126. package/src/overlay/ui/overlaySwitchStyles.ts +136 -0
  1127. package/src/overlay/ui/overlayValueStyles.ts +210 -0
  1128. package/src/projection/core/embeddingResult.ts +119 -0
  1129. package/src/projection/core/explainedShares.ts +105 -0
  1130. package/src/projection/core/index.ts +81 -0
  1131. package/src/projection/core/loadingProfiles.ts +226 -0
  1132. package/src/projection/core/pcaLike.ts +33 -0
  1133. package/src/projection/core/pcaResult.ts +238 -0
  1134. package/src/projection/core/projectionCopy.ts +261 -0
  1135. package/src/projection/core/projectionCopyPatch.ts +12 -0
  1136. package/src/projection/core/projectionOptions.ts +283 -0
  1137. package/src/projection/core/projectionResult.ts +123 -0
  1138. package/src/projection/core/projectionSamples.ts +170 -0
  1139. package/src/projection/core/projectionStrings.ts +281 -0
  1140. package/src/projection/core/projectionTabDefaults.ts +63 -0
  1141. package/src/projection/core/projectionTabs.ts +65 -0
  1142. package/src/projection/core/variableAxis.ts +161 -0
  1143. package/src/projection/core/variablesView.ts +53 -0
  1144. package/src/projection/ui/PcaViewer.tsx +80 -0
  1145. package/src/projection/ui/ProjectionBar.tsx +222 -0
  1146. package/src/projection/ui/ProjectionMapCaption.tsx +96 -0
  1147. package/src/projection/ui/ProjectionMapControls.tsx +271 -0
  1148. package/src/projection/ui/ProjectionMapLegend.tsx +70 -0
  1149. package/src/projection/ui/ProjectionMapMore.tsx +178 -0
  1150. package/src/projection/ui/ProjectionMapTab.tsx +213 -0
  1151. package/src/projection/ui/ProjectionPairsControls.tsx +58 -0
  1152. package/src/projection/ui/ProjectionPairsMore.tsx +95 -0
  1153. package/src/projection/ui/ProjectionPairsTab.tsx +159 -0
  1154. package/src/projection/ui/ProjectionPanel.tsx +262 -0
  1155. package/src/projection/ui/ProjectionReadout.tsx +159 -0
  1156. package/src/projection/ui/ProjectionSharesControls.tsx +56 -0
  1157. package/src/projection/ui/ProjectionSharesMarks.tsx +241 -0
  1158. package/src/projection/ui/ProjectionSharesMore.tsx +53 -0
  1159. package/src/projection/ui/ProjectionSharesTab.tsx +118 -0
  1160. package/src/projection/ui/ProjectionSpaceControls.tsx +219 -0
  1161. package/src/projection/ui/ProjectionSpaceMore.tsx +169 -0
  1162. package/src/projection/ui/ProjectionSpaceTab.tsx +217 -0
  1163. package/src/projection/ui/ProjectionSurface.tsx +63 -0
  1164. package/src/projection/ui/ProjectionTabStrip.tsx +144 -0
  1165. package/src/projection/ui/ProjectionVariablesControls.tsx +62 -0
  1166. package/src/projection/ui/ProjectionVariablesMore.tsx +144 -0
  1167. package/src/projection/ui/ProjectionVariablesTab.tsx +216 -0
  1168. package/src/projection/ui/ProjectionViewer.tsx +146 -0
  1169. package/src/projection/ui/index.ts +20 -0
  1170. package/src/projection/ui/projectionBarModel.ts +194 -0
  1171. package/src/projection/ui/projectionBarReadings.ts +195 -0
  1172. package/src/projection/ui/projectionBarSlots.tsx +158 -0
  1173. package/src/projection/ui/projectionBarStyles.ts +174 -0
  1174. package/src/projection/ui/projectionCloudChoices.ts +23 -0
  1175. package/src/projection/ui/projectionEllipse.ts +104 -0
  1176. package/src/projection/ui/projectionEllipsoid.ts +78 -0
  1177. package/src/projection/ui/projectionFormat.ts +18 -0
  1178. package/src/projection/ui/projectionMapChoices.ts +64 -0
  1179. package/src/projection/ui/projectionMapChrome.ts +228 -0
  1180. package/src/projection/ui/projectionMapModel.ts +253 -0
  1181. package/src/projection/ui/projectionMapView.ts +233 -0
  1182. package/src/projection/ui/projectionPairsCeiling.ts +45 -0
  1183. package/src/projection/ui/projectionSelection.ts +87 -0
  1184. package/src/projection/ui/projectionSpaceModel.ts +14 -0
  1185. package/src/projection/ui/projectionTabInfo.ts +126 -0
  1186. package/src/projection/ui/projectionTabModels.ts +106 -0
  1187. package/src/projection/ui/projectionTabStyles.ts +161 -0
  1188. package/src/projection/ui/projectionVariablesModel.ts +231 -0
  1189. package/src/projection/ui/projectionVariablesWords.ts +105 -0
  1190. package/src/projection/ui/projectionViewChoices.ts +77 -0
  1191. package/src/projection/ui/projectionViewerProps.ts +190 -0
  1192. package/src/projection/ui/useProjectionState.ts +224 -0
  1193. package/src/scatter/core/confidenceEllipse.ts +230 -0
  1194. package/src/scatter/core/ellipseCoverage.ts +46 -0
  1195. package/src/scatter/core/ellipseProjection.ts +126 -0
  1196. package/src/scatter/core/index.ts +48 -0
  1197. package/src/scatter/core/lassoPath.ts +127 -0
  1198. package/src/scatter/core/polygon.ts +155 -0
  1199. package/src/scatter/core/scatterSelection.ts +88 -0
  1200. package/src/scatter/core/screenPoints.ts +110 -0
  1201. package/src/scatter/ui/ScatterEllipseLayer.tsx +153 -0
  1202. package/src/scatter/ui/ScatterLabelLayer.tsx +135 -0
  1203. package/src/scatter/ui/ScatterMarkLayer.tsx +245 -0
  1204. package/src/scatter/ui/ScatterMatrix.tsx +177 -0
  1205. package/src/scatter/ui/ScatterMatrixCell.tsx +140 -0
  1206. package/src/scatter/ui/ScatterMatrixDiagonal.tsx +182 -0
  1207. package/src/scatter/ui/ScatterPlot.tsx +253 -0
  1208. package/src/scatter/ui/ScatterPointLayer.tsx +168 -0
  1209. package/src/scatter/ui/index.ts +123 -0
  1210. package/src/scatter/ui/lassoGesture.ts +250 -0
  1211. package/src/scatter/ui/scatterGroupSpread.ts +206 -0
  1212. package/src/scatter/ui/scatterLabelBoxes.ts +177 -0
  1213. package/src/scatter/ui/scatterLabelPlacement.ts +325 -0
  1214. package/src/scatter/ui/scatterLabels.ts +147 -0
  1215. package/src/scatter/ui/scatterMarkGlyph.tsx +94 -0
  1216. package/src/scatter/ui/scatterMatrixDots.tsx +134 -0
  1217. package/src/scatter/ui/scatterMatrixLayout.ts +133 -0
  1218. package/src/scatter/ui/scatterMatrixOutlines.tsx +53 -0
  1219. package/src/scatter/ui/scatterMatrixProps.ts +103 -0
  1220. package/src/scatter/ui/scatterOutlineShape.tsx +169 -0
  1221. package/src/scatter/ui/scatterPlotModel.ts +200 -0
  1222. package/src/scatter/ui/scatterPlotProps.ts +275 -0
  1223. package/src/scatter/ui/useLassoGesture.ts +214 -0
  1224. package/src/scatter/ui/usePointHover.ts +187 -0
  1225. package/src/scatter/ui/useScatterFrame.ts +191 -0
  1226. package/src/scatter/ui/useScatterInteraction.ts +258 -0
  1227. package/src/scatter/ui/useScatterKeyboard.ts +120 -0
  1228. package/src/scatter/ui/useScatterSelection.ts +189 -0
  1229. package/src/scatter3d/core/cloudGesture.ts +16 -0
  1230. package/src/scatter3d/core/confidenceEllipsoid.ts +177 -0
  1231. package/src/scatter3d/core/cubeFrame.ts +72 -0
  1232. package/src/scatter3d/core/cubePoints.ts +75 -0
  1233. package/src/scatter3d/core/ellipsoidCoverage.ts +86 -0
  1234. package/src/scatter3d/core/ellipsoidSilhouette.ts +76 -0
  1235. package/src/scatter3d/core/index.ts +52 -0
  1236. package/src/scatter3d/core/orbitCamera.ts +159 -0
  1237. package/src/scatter3d/core/symmetricEigen.ts +273 -0
  1238. package/src/scatter3d/ui/CloudFrameLayer.tsx +97 -0
  1239. package/src/scatter3d/ui/CloudPointLayer.tsx +132 -0
  1240. package/src/scatter3d/ui/CloudShellLayer.tsx +107 -0
  1241. package/src/scatter3d/ui/ScatterCloud.tsx +312 -0
  1242. package/src/scatter3d/ui/cloudGeometry.ts +200 -0
  1243. package/src/scatter3d/ui/cloudShellStyles.ts +74 -0
  1244. package/src/scatter3d/ui/cloudZoom.ts +22 -0
  1245. package/src/scatter3d/ui/index.ts +41 -0
  1246. package/src/scatter3d/ui/scatterCloudModel.ts +98 -0
  1247. package/src/scatter3d/ui/scatterCloudProps.ts +191 -0
  1248. package/src/scatter3d/ui/useOrbitDrag.ts +220 -0
  1249. package/src/share/core/query.ts +11 -7
  1250. package/src/spectra/core/axisEntries.ts +107 -0
  1251. package/src/spectra/core/chainProblems.ts +165 -0
  1252. package/src/spectra/core/filterCatalog.ts +100 -0
  1253. package/src/spectra/core/filterChain.ts +194 -0
  1254. package/src/spectra/core/filterEntries.ts +214 -0
  1255. package/src/spectra/core/filterFields.ts +159 -0
  1256. package/src/spectra/core/index.ts +67 -0
  1257. package/src/spectra/core/principalComponents.ts +130 -0
  1258. package/src/spectra/core/problems.ts +143 -0
  1259. package/src/spectra/core/settings.ts +119 -0
  1260. package/src/spectra/core/settingsProblems.ts +222 -0
  1261. package/src/spectra/core/stepProblems.ts +228 -0
  1262. package/src/spectra/ui/CalculationRows.tsx +161 -0
  1263. package/src/spectra/ui/FilterChainEditor.tsx +199 -0
  1264. package/src/spectra/ui/FilterChoiceControl.tsx +153 -0
  1265. package/src/spectra/ui/FilterFieldControl.tsx +105 -0
  1266. package/src/spectra/ui/FilterRow.tsx +190 -0
  1267. package/src/spectra/ui/MatrixFilterRows.tsx +184 -0
  1268. package/src/spectra/ui/NormalizationEditor.tsx +235 -0
  1269. package/src/spectra/ui/NumberField.tsx +126 -0
  1270. package/src/spectra/ui/PostProcessingEditor.tsx +136 -0
  1271. package/src/spectra/ui/PrincipalComponentSelect.tsx +245 -0
  1272. package/src/spectra/ui/ProblemList.tsx +77 -0
  1273. package/src/spectra/ui/RangeRows.tsx +175 -0
  1274. package/src/spectra/ui/ScaleFields.tsx +183 -0
  1275. package/src/spectra/ui/SettingsPart.tsx +60 -0
  1276. package/src/spectra/ui/SpectraSettingsEditor.tsx +143 -0
  1277. package/src/spectra/ui/SpectrumSelection.tsx +193 -0
  1278. package/src/spectra/ui/ZoneRows.tsx +159 -0
  1279. package/src/spectra/ui/index.ts +9 -0
  1280. package/src/spectra/ui/matrixSteps.ts +128 -0
  1281. package/src/spectra/ui/problemsAbout.ts +21 -0
  1282. package/src/spectra/ui/rowKeys.ts +47 -0
  1283. package/src/spectra/ui/scaleOptions.ts +116 -0
  1284. package/src/ui.ts +7 -0
  1285. package/styles/chrome.css +29 -4
@@ -0,0 +1,169 @@
1
+ import type { ReactElement } from 'react';
2
+
3
+ import { chartAxisTitle } from '../../chart/core/chartLabels.ts';
4
+ import { OverlayAction } from '../../overlay/ui/OverlayAction.tsx';
5
+ import { OverlayGroup } from '../../overlay/ui/OverlayGroup.tsx';
6
+ import { OverlayNumber } from '../../overlay/ui/OverlayNumber.tsx';
7
+ import { OverlayPanel } from '../../overlay/ui/OverlayPanel.tsx';
8
+ import type { OverlayOption } from '../../overlay/ui/OverlayRow.tsx';
9
+ import { OverlaySegmented } from '../../overlay/ui/OverlaySegmented.tsx';
10
+ import { OverlaySelect } from '../../overlay/ui/OverlaySelect.tsx';
11
+ import type { ScatterSelectionMode } from '../../scatter/core/scatterSelection.ts';
12
+ import type { CloudGesture } from '../../scatter3d/core/cloudGesture.ts';
13
+ import type { ProjectionResult } from '../core/projectionResult.ts';
14
+ import {
15
+ PROJECTION_PANEL_NAME,
16
+ PROJECTION_PANEL_SECTION,
17
+ } from '../core/projectionStrings.ts';
18
+ import { PROJECTION_TAB_DEFAULTS } from '../core/projectionTabDefaults.ts';
19
+
20
+ import type { ProjectionSpaceControlsProps } from './ProjectionSpaceControls.tsx';
21
+ import { CLOUD_GESTURE_CHOICES } from './projectionCloudChoices.ts';
22
+
23
+ /** What {@link ProjectionSpaceMore} needs beyond the cloud's own controls. */
24
+ export interface ProjectionSpaceMoreProps extends ProjectionSpaceControlsProps {
25
+ /** The reduced space the controls apply to; its axes fill the three pickers. */
26
+ result: ProjectionResult;
27
+ /**
28
+ * How many samples are selected, which is what the clearing action needs
29
+ * before it can do anything.
30
+ * @default 0
31
+ */
32
+ selectedCount?: number;
33
+ /** Puts the box back where it was first seen. */
34
+ onResetView: () => void;
35
+ /** Empties the selection. */
36
+ onClearSelection: () => void;
37
+ }
38
+
39
+ /**
40
+ * What the cloud keeps behind the cog: its three axes, the dot size, and what
41
+ * the two drags do.
42
+ *
43
+ * It is the map's panel with one picker more and one action fewer. There is no
44
+ * "zoom to selection" here, because a box has no frame to draw round a crowd:
45
+ * the reader turns it until the crowd is facing them, which is the gesture the
46
+ * whole tab exists for, and a button that guessed an angle for them would
47
+ * usually guess wrong.
48
+ * @param props - See {@link ProjectionSpaceMoreProps}.
49
+ * @returns The panel behind the cog.
50
+ */
51
+ export function ProjectionSpaceMore(
52
+ props: ProjectionSpaceMoreProps,
53
+ ): ReactElement {
54
+ const { result, options, onChange, copy } = props;
55
+ const { selectedCount = 0, onResetView, onClearSelection } = props;
56
+ const { action, help, tab } = copy;
57
+
58
+ const nothingPicked = selectedCount === 0;
59
+
60
+ return (
61
+ <OverlayPanel
62
+ title={tab.space}
63
+ onReset={() => onChange(PROJECTION_TAB_DEFAULTS.space)}
64
+ actions={
65
+ <>
66
+ <OverlayAction
67
+ text={action.resetView}
68
+ icon="reset"
69
+ onClick={onResetView}
70
+ />
71
+ <OverlayAction
72
+ text={action.clearSelection}
73
+ icon="cross"
74
+ disabled={nothingPicked}
75
+ onClick={onClearSelection}
76
+ />
77
+ </>
78
+ }
79
+ >
80
+ <OverlayGroup label={PROJECTION_PANEL_SECTION.axes} divider={false}>
81
+ <OverlaySelect
82
+ label={PROJECTION_PANEL_NAME.xAxis}
83
+ help={help.xAxis}
84
+ value={String(options.xAxis)}
85
+ options={axisChoices(result, [options.yAxis, options.zAxis])}
86
+ onChange={(value) => onChange({ xAxis: Number(value) })}
87
+ />
88
+ <OverlaySelect
89
+ label={PROJECTION_PANEL_NAME.yAxis}
90
+ help={help.yAxis}
91
+ value={String(options.yAxis)}
92
+ options={axisChoices(result, [options.xAxis, options.zAxis])}
93
+ onChange={(value) => onChange({ yAxis: Number(value) })}
94
+ />
95
+ <OverlaySelect
96
+ label={PROJECTION_PANEL_NAME.zAxis}
97
+ help={help.zAxis}
98
+ value={String(options.zAxis)}
99
+ options={axisChoices(result, [options.xAxis, options.yAxis])}
100
+ onChange={(value) => onChange({ zAxis: Number(value) })}
101
+ />
102
+ </OverlayGroup>
103
+ <OverlayGroup label={PROJECTION_PANEL_SECTION.drawing}>
104
+ <OverlayNumber
105
+ label={PROJECTION_PANEL_NAME.pointRadius}
106
+ help={help.pointRadius}
107
+ value={options.pointRadius}
108
+ min={1}
109
+ max={12}
110
+ step={0.5}
111
+ digits={1}
112
+ unit="px"
113
+ onChange={(pointRadius) => onChange({ pointRadius })}
114
+ />
115
+ </OverlayGroup>
116
+ <OverlayGroup label={PROJECTION_PANEL_SECTION.handling}>
117
+ <OverlaySegmented<CloudGesture>
118
+ label={PROJECTION_PANEL_NAME.cloudGesture}
119
+ help={help.cloudGesture}
120
+ value={options.cloudGesture}
121
+ options={CLOUD_GESTURE_CHOICES}
122
+ onChange={(cloudGesture) => onChange({ cloudGesture })}
123
+ />
124
+ </OverlayGroup>
125
+ <OverlayGroup label={PROJECTION_PANEL_SECTION.selecting}>
126
+ <OverlaySegmented<ScatterSelectionMode>
127
+ label={PROJECTION_PANEL_NAME.selectMode}
128
+ help={help.selectMode}
129
+ value={options.selectMode}
130
+ options={SELECT_MODE_CHOICES}
131
+ onChange={(selectMode) => onChange({ selectMode })}
132
+ />
133
+ </OverlayGroup>
134
+ </OverlayPanel>
135
+ );
136
+ }
137
+
138
+ const AXIS_TAKEN_NOTE = 'Already drawn on another axis.';
139
+
140
+ /** The same three words the map's panel offers, for the same reason. */
141
+ const SELECT_MODE_CHOICES: ReadonlyArray<OverlayOption<ScatterSelectionMode>> =
142
+ [
143
+ { value: 'replace', label: 'Replace' },
144
+ { value: 'add', label: 'Add' },
145
+ { value: 'remove', label: 'Remove' },
146
+ ];
147
+
148
+ /**
149
+ * The axes one picker offers, with the ones already drawn kept but unreachable.
150
+ * @param result - The reduced space being drawn.
151
+ * @param taken - The axes the other two pickers are showing.
152
+ * @returns The choices, in the order the run produced them.
153
+ */
154
+ function axisChoices(
155
+ result: ProjectionResult,
156
+ taken: readonly number[],
157
+ ): OverlayOption[] {
158
+ const choices: OverlayOption[] = [];
159
+ for (const [index, axis] of result.axes.entries()) {
160
+ const drawn = taken.includes(index);
161
+ choices.push({
162
+ value: String(index),
163
+ label: chartAxisTitle(axis.name, { share: axis.share }),
164
+ disabled: drawn,
165
+ title: drawn ? AXIS_TAKEN_NOTE : undefined,
166
+ });
167
+ }
168
+ return choices;
169
+ }
@@ -0,0 +1,217 @@
1
+ import type { ReactElement, ReactNode } from 'react';
2
+ import { useMemo } from 'react';
3
+
4
+ import type { ScatterPointOpen } from '../../scatter/ui/scatterPlotProps.ts';
5
+ import type { SelectionChange } from '../../scatter/ui/useScatterSelection.ts';
6
+ import type { OrbitCamera } from '../../scatter3d/core/orbitCamera.ts';
7
+ import { ScatterCloud } from '../../scatter3d/ui/ScatterCloud.tsx';
8
+ import type { ProjectionCopy } from '../core/projectionCopy.ts';
9
+ import type { ProjectionOptions } from '../core/projectionOptions.ts';
10
+ import type { ProjectionResult } from '../core/projectionResult.ts';
11
+ import type { ResolvedProjectionGroups } from '../core/projectionSamples.ts';
12
+
13
+ import type { SelectionReport } from './ProjectionMapCaption.tsx';
14
+ import { ProjectionMapCaption } from './ProjectionMapCaption.tsx';
15
+ import { ProjectionMapLegend } from './ProjectionMapLegend.tsx';
16
+ import { ProjectionSurface } from './ProjectionSurface.tsx';
17
+ import type { ProjectionMapChrome } from './projectionMapChrome.ts';
18
+ import {
19
+ projectionAxisTitle,
20
+ projectionMapCloud,
21
+ projectionScatterGroups,
22
+ } from './projectionMapModel.ts';
23
+ import { MINIMUM_SHELL_POINTS } from './projectionSpaceModel.ts';
24
+
25
+ /** What {@link ProjectionSpaceTab} needs. */
26
+ export interface ProjectionSpaceTabProps {
27
+ /** What the run produced, whatever produced it. */
28
+ result: ProjectionResult;
29
+ /** The groups, resolved once by the viewer so every tab colours alike. */
30
+ groups: ResolvedProjectionGroups;
31
+ /** What the cloud is showing, already resolved against `result`. */
32
+ options: ProjectionOptions;
33
+ /** The words the cloud writes, already merged over the defaults. */
34
+ copy: ProjectionCopy;
35
+ /** The key's title and entries, built once with the bar's explanation. */
36
+ chrome: ProjectionMapChrome;
37
+ /**
38
+ * What each sample is called, in the score matrix's row order.
39
+ * @default undefined — the setting has nothing to write and draws nothing
40
+ */
41
+ ids?: readonly string[];
42
+ /** Width of the figure, in pixels. */
43
+ width: number;
44
+ /** Height of the figure, in pixels. */
45
+ height: number;
46
+ /** The selected rows, as indices into the score matrix. */
47
+ selected: readonly number[];
48
+ /** Where the reader is standing, which the viewer keeps between visits. */
49
+ camera: OrbitCamera;
50
+ /** Called with the camera every frame of a turn leaves behind. */
51
+ onCameraChange: (camera: OrbitCamera) => void;
52
+ /** How far in the reader has zoomed. */
53
+ zoom: number;
54
+ /** Called with the zoom the wheel asks for. */
55
+ onZoomChange: (zoom: number) => void;
56
+ /**
57
+ * Whether the wheel zooms the box.
58
+ * @default true
59
+ */
60
+ wheelZoom?: boolean;
61
+ /**
62
+ * What the last gesture picked out, for the line over the picture.
63
+ * @default null — nothing has happened yet
64
+ */
65
+ report?: SelectionReport | null;
66
+ /**
67
+ * Called when a lasso is released or a dot is tapped.
68
+ * @default undefined
69
+ */
70
+ onSelectionChange?: (change: SelectionChange) => void;
71
+ /**
72
+ * Called with the row under the pointer, or `-1`.
73
+ * @default undefined
74
+ */
75
+ onHoverChange?: (index: number) => void;
76
+ /**
77
+ * Called when the reader double-clicks a sample.
78
+ * @default undefined
79
+ */
80
+ onPointDoubleClick?: (point: ScatterPointOpen) => void;
81
+ /**
82
+ * The card that follows the pointer, built by the viewer so that it says the
83
+ * same thing on every tab.
84
+ * @default undefined — no card is drawn
85
+ */
86
+ hoverCard?: ReactNode;
87
+ /**
88
+ * Value of the `data-testid` attribute of the figure.
89
+ * @default undefined
90
+ */
91
+ testId?: string;
92
+ }
93
+
94
+ /**
95
+ * The cloud: the same samples as the map, in a box the reader can turn.
96
+ *
97
+ * It earns a tab of its own rather than a switch on the map because it answers
98
+ * a different question. The map shows the two strongest patterns and is the
99
+ * right picture nine times in ten; the cloud is what a reader reaches for when
100
+ * two groups sit on top of each other there, because a third component often
101
+ * pulls them apart and no flat picture can show that.
102
+ *
103
+ * Everything it can share with the map it does share — the colours, the
104
+ * selection, the lasso, the key, the card and the names — so moving between
105
+ * the two tabs changes the picture and nothing else. What it cannot share is
106
+ * the scale: all three axes are stretched to one box, because a solid seen
107
+ * from an angle has nowhere to put three sets of tick labels, and a box drawn
108
+ * at three scales would tilt a group in a direction the data never did.
109
+ * @param props - See {@link ProjectionSpaceTabProps}.
110
+ * @returns The figure.
111
+ */
112
+ export function ProjectionSpaceTab(
113
+ props: ProjectionSpaceTabProps,
114
+ ): ReactElement {
115
+ const { result, groups, options, copy, chrome, width, height } = props;
116
+ const { ids, selected, report = null, camera, zoom } = props;
117
+ const { onCameraChange, onZoomChange, wheelZoom } = props;
118
+ const { onSelectionChange, onHoverChange, hoverCard, testId } = props;
119
+ const { onPointDoubleClick } = props;
120
+ const { scores, fittedCount } = result;
121
+ const { xAxis, yAxis, zAxis, colorBy, pointRadius } = options;
122
+ const { showGroupLabels, showIds, selectMode, cloudGesture } = options;
123
+ const { ellipse: shells } = options;
124
+
125
+ const flat = useMemo(
126
+ () => projectionMapCloud(scores, xAxis, yAxis),
127
+ [scores, xAxis, yAxis],
128
+ );
129
+ const depth = useMemo(
130
+ () => projectionMapCloud(scores, zAxis, zAxis).x,
131
+ [scores, zAxis],
132
+ );
133
+
134
+ const colored = colorBy === 'group' && groups.entries.length > 0;
135
+
136
+ return (
137
+ <div style={{ position: 'relative' }} data-testid={testId}>
138
+ <ScatterCloud
139
+ x={flat.x}
140
+ y={flat.y}
141
+ z={depth}
142
+ width={width}
143
+ height={height}
144
+ xLabel={axisName(result, xAxis)}
145
+ yLabel={axisName(result, yAxis)}
146
+ zLabel={axisName(result, zAxis)}
147
+ groupOf={colored ? groups.groupOf : undefined}
148
+ groups={colored ? projectionScatterGroups(groups) : undefined}
149
+ ellipsoid={colored ? shells : null}
150
+ ellipsoidMinimumPoints={MINIMUM_SHELL_POINTS}
151
+ showGroupLabels={colored && showGroupLabels}
152
+ pointLabels={showIds ? ids : undefined}
153
+ pointRadius={pointRadius}
154
+ outlinedFrom={fittedCount}
155
+ selected={selected}
156
+ onSelectionChange={onSelectionChange}
157
+ selectMode={selectMode}
158
+ onHoverChange={onHoverChange}
159
+ onPointDoubleClick={onPointDoubleClick}
160
+ gesture={cloudGesture}
161
+ camera={camera}
162
+ onCameraChange={onCameraChange}
163
+ zoom={zoom}
164
+ onZoomChange={onZoomChange}
165
+ wheelZoom={wheelZoom}
166
+ overlay={
167
+ <ProjectionSurface>
168
+ {chrome.entries.length === 0 ? null : (
169
+ <ProjectionMapLegend
170
+ title={chrome.title}
171
+ entries={chrome.entries}
172
+ cloud={flat}
173
+ xDomain={CUBE_DOMAIN}
174
+ yDomain={CUBE_DOMAIN}
175
+ width={width}
176
+ height={height}
177
+ />
178
+ )}
179
+ <ProjectionMapCaption
180
+ report={report}
181
+ copy={copy}
182
+ mode={selectMode}
183
+ drawing={false}
184
+ />
185
+ {hoverCard}
186
+ </ProjectionSurface>
187
+ }
188
+ />
189
+ </div>
190
+ );
191
+ }
192
+
193
+ /**
194
+ * What an arm of the frame is called.
195
+ *
196
+ * The frame is the cloud's only record of which axis is which, so an axis the
197
+ * result cannot name is given its number rather than left blank: an unlabelled
198
+ * arm reads as a drawing error, and the reader cannot tell which of the three
199
+ * it was.
200
+ * @param result - The reduced space being drawn.
201
+ * @param index - Which axis.
202
+ * @returns The name to write on that arm.
203
+ */
204
+ function axisName(result: ProjectionResult, index: number): string {
205
+ return projectionAxisTitle(result, index) ?? `Axis ${index + 1}`;
206
+ }
207
+
208
+ /**
209
+ * The range the key measures emptiness against.
210
+ *
211
+ * The key floats in whichever corner of the picture holds fewest dots, and it
212
+ * works that out from the cloud's own coordinates against a range. A turning
213
+ * box has no fixed range in data units — the same sample is at a different
214
+ * corner a second later — so the cube's own is used, which is stable and is
215
+ * what the corners of the picture actually are.
216
+ */
217
+ const CUBE_DOMAIN: readonly [number, number] = [-1, 1];
@@ -0,0 +1,63 @@
1
+ import type { ReactElement, ReactNode } from 'react';
2
+ import { useMemo } from 'react';
3
+
4
+ import { overlayMetrics } from '../../overlay/core/overlayMetrics.ts';
5
+ import type { OverlaySurface } from '../../overlay/ui/overlaySurface.ts';
6
+ import {
7
+ OverlaySurfaceContext,
8
+ useCoarsePointer,
9
+ useOverlaySurface,
10
+ } from '../../overlay/ui/overlaySurface.ts';
11
+
12
+ /** What {@link ProjectionSurface} needs. */
13
+ export interface ProjectionSurfaceProps {
14
+ /** The chrome drawn at the compact size: the settings bar, a floating key. */
15
+ children: ReactNode;
16
+ /**
17
+ * Width of the figure, in pixels, for the chrome that has to decide whether
18
+ * it still fits. Only the settings bar needs it — chrome inside a chart is
19
+ * already over a measured figure and inherits its width.
20
+ * @default undefined — whatever the surface above it was measured at
21
+ */
22
+ width?: number;
23
+ }
24
+
25
+ /**
26
+ * The compact measurements every piece of this viewer's chrome is drawn from.
27
+ *
28
+ * The viewer is meant to be embedded in somebody else's page, so its chrome
29
+ * takes the smallest measurements the overlay domain offers rather than the
30
+ * roomier ones a figure standing alone can afford. A finger still wins: the
31
+ * pointer is read here, and a coarse one is handed the largest set whatever
32
+ * the figure asked for.
33
+ *
34
+ * It is a surface of its own rather than an `OverlayLayer` because the
35
+ * settings bar is in the flow above the picture, and a layer is absolutely
36
+ * positioned over one — a bar inside a layer would float over the very data it
37
+ * introduces. Everything else about the surface it stands on is carried
38
+ * through, so a key nested inside a chart's own layer still fades with that
39
+ * chart and still knows it is repainting.
40
+ * @param props - See {@link ProjectionSurfaceProps}.
41
+ * @returns The chrome, drawn compact.
42
+ */
43
+ export function ProjectionSurface(props: ProjectionSurfaceProps): ReactElement {
44
+ const { children, width } = props;
45
+ const above = useOverlaySurface();
46
+ const pointer = useCoarsePointer() ? 'coarse' : 'fine';
47
+
48
+ const surface = useMemo<OverlaySurface>(
49
+ () => ({
50
+ ...above,
51
+ metrics: overlayMetrics('compact', pointer),
52
+ pointer,
53
+ width: width ?? above.width,
54
+ }),
55
+ [above, pointer, width],
56
+ );
57
+
58
+ return (
59
+ <OverlaySurfaceContext.Provider value={surface}>
60
+ {children}
61
+ </OverlaySurfaceContext.Provider>
62
+ );
63
+ }
@@ -0,0 +1,144 @@
1
+ import type { ReactElement } from 'react';
2
+ import { useEffect, useMemo, useRef } from 'react';
3
+
4
+ import type { OverlayTier } from '../../overlay/core/overlayTiers.ts';
5
+ import type { OverlayPillOption } from '../../overlay/ui/OverlayPills.tsx';
6
+ import { OverlayPills } from '../../overlay/ui/OverlayPills.tsx';
7
+ import type { ProjectionTab } from '../core/projectionTabs.ts';
8
+
9
+ import {
10
+ projectionTabScroll,
11
+ projectionTabTrackStyle,
12
+ } from './projectionBarStyles.ts';
13
+
14
+ /** What {@link ProjectionTabStrip} needs. */
15
+ export interface ProjectionTabStripProps {
16
+ /** The tabs the result can fill, in reading order. */
17
+ tabs: readonly ProjectionTab[];
18
+ /** The one showing. */
19
+ tab: ProjectionTab;
20
+ /** Called with the tab the reader moved to. */
21
+ onTabChange: (tab: ProjectionTab) => void;
22
+ /** What each tab is called, from the viewer's copy. */
23
+ labels: Readonly<Record<ProjectionTab, string>>;
24
+ /**
25
+ * What each tab is called on a bar with no room for the long name. They are
26
+ * written out rather than truncated: "How much each explains" cut to the
27
+ * width that fits reads "How much each e…", which says less than the one
28
+ * word the tab is about.
29
+ */
30
+ shortLabels: Readonly<Record<ProjectionTab, string>>;
31
+ /**
32
+ * Stem of the `id` every button carries, so the panel below can name the tab
33
+ * it belongs to and a screen reader can walk between the two.
34
+ */
35
+ baseId: string;
36
+ /**
37
+ * The `id` of the panel the buttons drive. One panel is shared, because only
38
+ * the showing tab is ever rendered.
39
+ */
40
+ panelId: string;
41
+ /**
42
+ * How much of itself the bar is writing, which decides whether the names are
43
+ * written in full and whether the strip may scroll rather than shrink.
44
+ * @default 'full'
45
+ */
46
+ tier?: OverlayTier;
47
+ /**
48
+ * The most room the strip may take once it is scrolling, which is whatever
49
+ * the settings and the glyphs at the far end do not need. Without it the row
50
+ * would hand the strip and the settings a share of the shortfall each, and
51
+ * the settings — a chip beside a cog — have nothing to give.
52
+ * @default Number.POSITIVE_INFINITY — the strip takes what it needs
53
+ */
54
+ maxWidth?: number;
55
+ /**
56
+ * What the strip is called, for a reader arriving by tab.
57
+ * @default 'Views'
58
+ */
59
+ label?: string;
60
+ }
61
+
62
+ /**
63
+ * The connected pills that move between a projection's four views.
64
+ *
65
+ * They are the package's one segmented control rather than a strip of their
66
+ * own, so a reader who has pressed the choices inside a settings card has
67
+ * already learned to press these — and the pills sit at the start of the same
68
+ * bar those settings sit at the end of, which is what makes the two read as
69
+ * one piece of chrome instead of two rows stacked over the figure.
70
+ *
71
+ * What a narrowing figure takes from them is words and never views. First the
72
+ * long names give way to the short ones; then, on a figure too narrow to hold
73
+ * four names however short, the strip scrolls and the view in force is brought
74
+ * into sight — a reader who cannot see which view they are on, or cannot reach
75
+ * the others, is stuck rather than merely short of room.
76
+ *
77
+ * The shell draws none at all when the result can fill only one tab: a single
78
+ * pill says nothing about the data and still costs the reader a glance to rule
79
+ * out. The bar itself stays, because the settings and the explanation still
80
+ * belong somewhere.
81
+ * @param props - See {@link ProjectionTabStripProps}.
82
+ * @returns The strip.
83
+ */
84
+ export function ProjectionTabStrip(
85
+ props: ProjectionTabStripProps,
86
+ ): ReactElement {
87
+ const { tabs, tab, onTabChange, labels, shortLabels } = props;
88
+ const { baseId, panelId, tier = 'full', label } = props;
89
+ const { maxWidth = Number.POSITIVE_INFINITY } = props;
90
+ const track = useRef<HTMLDivElement>(null);
91
+
92
+ const scrolls = tier === 'tiny';
93
+ const written =
94
+ tier === 'full' || tier === 'condensed' ? labels : shortLabels;
95
+ const options = useMemo<Array<OverlayPillOption<ProjectionTab>>>(
96
+ () => tabs.map((entry) => ({ value: entry, label: written[entry] })),
97
+ [tabs, written],
98
+ );
99
+
100
+ useEffect(() => {
101
+ if (!scrolls) return;
102
+ showSelected(track.current);
103
+ }, [scrolls, tab, options, maxWidth]);
104
+
105
+ return (
106
+ <div ref={track} style={projectionTabTrackStyle(scrolls, maxWidth)}>
107
+ <OverlayPills<ProjectionTab>
108
+ role="tablist"
109
+ label={label ?? 'Views'}
110
+ value={tab}
111
+ options={options}
112
+ baseId={baseId}
113
+ panelId={panelId}
114
+ onChange={onTabChange}
115
+ />
116
+ </div>
117
+ );
118
+ }
119
+
120
+ /**
121
+ * Bring the view in force back into sight inside a scrolling strip.
122
+ *
123
+ * The box is scrolled by hand rather than through `scrollIntoView`, which asks
124
+ * every scrolling ancestor to move as well — so a figure halfway down somebody
125
+ * else's page would jump under the reader for a tab they can already see.
126
+ *
127
+ * Where the view sits is measured against the strip's own box rather than read
128
+ * off `offsetLeft`, which is relative to whichever ancestor happens to be
129
+ * positioned — here the card, several boxes further out.
130
+ * @param box - The scrolling box, when it has been laid out.
131
+ */
132
+ function showSelected(box: HTMLDivElement | null): void {
133
+ if (box === null) return;
134
+ const selected = box.querySelector<HTMLElement>('[aria-selected="true"]');
135
+ if (selected === null) return;
136
+ const seen = selected.getBoundingClientRect();
137
+ const left = seen.left - box.getBoundingClientRect().left + box.scrollLeft;
138
+ box.scrollLeft = projectionTabScroll(
139
+ left,
140
+ left + seen.width,
141
+ box.scrollLeft,
142
+ box.clientWidth,
143
+ );
144
+ }
@@ -0,0 +1,62 @@
1
+ import type { ReactElement } from 'react';
2
+
3
+ import type { OverlayTier } from '../../overlay/core/overlayTiers.ts';
4
+ import { OverlayValueMenu } from '../../overlay/ui/OverlayValueMenu.tsx';
5
+ import type { ProjectionCopy } from '../core/projectionCopy.ts';
6
+ import type {
7
+ ProjectionOptions,
8
+ ProjectionVariablesView,
9
+ } from '../core/projectionOptions.ts';
10
+
11
+ import type { ProjectionVariablesAvailability } from './projectionViewChoices.ts';
12
+ import { projectionViewChoices } from './projectionViewChoices.ts';
13
+
14
+ /** What the "what differs" picker on the bar is drawn from. */
15
+ export interface ProjectionVariablesControlsProps extends ProjectionVariablesAvailability {
16
+ /** Every option the panels are drawn from. */
17
+ options: ProjectionOptions;
18
+ /** The words the bar writes, already merged over the defaults. */
19
+ copy: ProjectionCopy;
20
+ /** Called with only the options that changed, for the viewer to merge. */
21
+ onChange: (patch: Partial<ProjectionOptions>) => void;
22
+ /**
23
+ * How much of itself the bar is writing.
24
+ * @default 'full'
25
+ */
26
+ tier?: OverlayTier;
27
+ }
28
+
29
+ /**
30
+ * The one control of the "what differs" tab that stays on the bar.
31
+ *
32
+ * "Show" is the only choice here that changes what the panels mean rather than
33
+ * how they are drawn, and it is the one a reader who has never met a loading
34
+ * needs first. A view whose data the run never reported is greyed rather than
35
+ * dropped, with the reason on the choice itself: a reader who cannot see that
36
+ * "Weights in your units" exists never learns to ask their colleague for a
37
+ * scaled model.
38
+ * @param props - See {@link ProjectionVariablesControlsProps}.
39
+ * @returns The picker.
40
+ */
41
+ export function ProjectionVariablesControls(
42
+ props: ProjectionVariablesControlsProps,
43
+ ): ReactElement {
44
+ const { options, copy, onChange, tier = 'full' } = props;
45
+ const { canShowEffect, canRescale, canPickSample } = props;
46
+ const { bar, help } = copy;
47
+
48
+ return (
49
+ <OverlayValueMenu<ProjectionVariablesView>
50
+ label={help.variablesView.title}
51
+ keyWord={bar.key.variablesView}
52
+ showKey={tier === 'full'}
53
+ value={options.variablesView}
54
+ options={projectionViewChoices(copy, {
55
+ canShowEffect,
56
+ canRescale,
57
+ canPickSample,
58
+ })}
59
+ onChange={(variablesView) => onChange({ variablesView })}
60
+ />
61
+ );
62
+ }