matterviz 0.4.1 → 0.4.3

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 (499) hide show
  1. package/dist/EmptyState.svelte +10 -4
  2. package/dist/FilePicker.svelte +48 -60
  3. package/dist/Icon.svelte +7 -4
  4. package/dist/MillerIndexInput.svelte +2 -2
  5. package/dist/api/optimade.js +10 -7
  6. package/dist/app.css +68 -0
  7. package/dist/brillouin/BrillouinZone.svelte +90 -91
  8. package/dist/brillouin/BrillouinZone.svelte.d.ts +5 -7
  9. package/dist/brillouin/BrillouinZoneControls.svelte +3 -6
  10. package/dist/brillouin/BrillouinZoneExportPane.svelte +18 -14
  11. package/dist/brillouin/BrillouinZoneInfoPane.svelte +6 -10
  12. package/dist/brillouin/BrillouinZoneScene.svelte +46 -68
  13. package/dist/brillouin/BrillouinZoneScene.svelte.d.ts +1 -1
  14. package/dist/brillouin/compute.js +10 -16
  15. package/dist/brillouin/geometry.js +2 -2
  16. package/dist/chempot-diagram/ChemPotDiagram.svelte +48 -50
  17. package/dist/chempot-diagram/ChemPotDiagram2D.svelte +61 -169
  18. package/dist/chempot-diagram/ChemPotDiagram2D.svelte.d.ts +1 -1
  19. package/dist/chempot-diagram/ChemPotDiagram3D.svelte +559 -755
  20. package/dist/chempot-diagram/ChemPotDiagram3D.svelte.d.ts +1 -1
  21. package/dist/chempot-diagram/async-compute.svelte.js +13 -14
  22. package/dist/chempot-diagram/color.d.ts +21 -1
  23. package/dist/chempot-diagram/color.js +70 -1
  24. package/dist/chempot-diagram/compute.d.ts +7 -0
  25. package/dist/chempot-diagram/compute.js +85 -26
  26. package/dist/chempot-diagram/controls-state.svelte.js +1 -1
  27. package/dist/chempot-diagram/export.js +1 -6
  28. package/dist/chempot-diagram/temperature.js +9 -10
  29. package/dist/colors/index.d.ts +0 -4
  30. package/dist/colors/index.js +19 -20
  31. package/dist/composition/BarChart.svelte +30 -26
  32. package/dist/composition/BubbleChart.svelte +17 -17
  33. package/dist/composition/Composition.svelte +10 -19
  34. package/dist/composition/Formula.svelte +20 -27
  35. package/dist/composition/FormulaFilter.svelte +115 -184
  36. package/dist/composition/PieChart.svelte +55 -41
  37. package/dist/composition/format.js +7 -9
  38. package/dist/composition/index.d.ts +2 -0
  39. package/dist/composition/index.js +14 -0
  40. package/dist/composition/parse.d.ts +2 -2
  41. package/dist/composition/parse.js +61 -115
  42. package/dist/constants.d.ts +0 -1
  43. package/dist/constants.js +17 -26
  44. package/dist/convex-hull/ConvexHull.svelte +12 -15
  45. package/dist/convex-hull/ConvexHull.svelte.d.ts +1 -1
  46. package/dist/convex-hull/ConvexHull2D.svelte +93 -94
  47. package/dist/convex-hull/ConvexHull2D.svelte.d.ts +1 -1
  48. package/dist/convex-hull/ConvexHull3D.svelte +127 -186
  49. package/dist/convex-hull/ConvexHull3D.svelte.d.ts +1 -1
  50. package/dist/convex-hull/ConvexHull4D.svelte +131 -180
  51. package/dist/convex-hull/ConvexHull4D.svelte.d.ts +1 -1
  52. package/dist/convex-hull/ConvexHullChrome.svelte +36 -40
  53. package/dist/convex-hull/ConvexHullControls.svelte +46 -48
  54. package/dist/convex-hull/ConvexHullStats.svelte +193 -195
  55. package/dist/convex-hull/ConvexHullTooltip.svelte +5 -12
  56. package/dist/convex-hull/GasPressureControls.svelte +5 -12
  57. package/dist/convex-hull/StructurePopup.svelte +18 -22
  58. package/dist/convex-hull/StructurePopup.svelte.d.ts +2 -0
  59. package/dist/convex-hull/TemperatureSlider.svelte +4 -10
  60. package/dist/convex-hull/canvas-interactions.svelte.js +2 -1
  61. package/dist/convex-hull/gas-thermodynamics.js +21 -53
  62. package/dist/convex-hull/helpers.d.ts +8 -10
  63. package/dist/convex-hull/helpers.js +37 -43
  64. package/dist/convex-hull/hull-state.svelte.d.ts +1 -1
  65. package/dist/convex-hull/thermodynamics.js +37 -44
  66. package/dist/coordination/CoordinationBarPlot.svelte +49 -53
  67. package/dist/coordination/CoordinationBarPlot.svelte.d.ts +1 -1
  68. package/dist/coordination/calc-coordination.d.ts +1 -1
  69. package/dist/coordination/calc-coordination.js +28 -25
  70. package/dist/element/BohrAtom.svelte +5 -9
  71. package/dist/element/ElementHeading.svelte +4 -1
  72. package/dist/element/ElementPhoto.svelte +11 -9
  73. package/dist/element/ElementStats.svelte +12 -10
  74. package/dist/element/ElementTile.svelte +44 -67
  75. package/dist/element/Nucleus.svelte +4 -2
  76. package/dist/element/data.d.ts +3 -2
  77. package/dist/element/data.js +5 -1
  78. package/dist/element/helpers.d.ts +4 -0
  79. package/dist/element/helpers.js +18 -0
  80. package/dist/element/index.d.ts +2 -5
  81. package/dist/element/index.js +4 -19
  82. package/dist/feedback/DragOverlay.svelte +5 -5
  83. package/dist/feedback/DragOverlay.svelte.d.ts +2 -2
  84. package/dist/feedback/StatusMessage.svelte +7 -4
  85. package/dist/fermi-surface/FermiSlice.svelte +21 -18
  86. package/dist/fermi-surface/FermiSurface.svelte +35 -44
  87. package/dist/fermi-surface/FermiSurface.svelte.d.ts +7 -13
  88. package/dist/fermi-surface/FermiSurfaceControls.svelte +6 -20
  89. package/dist/fermi-surface/FermiSurfaceControls.svelte.d.ts +1 -1
  90. package/dist/fermi-surface/FermiSurfaceScene.svelte +64 -136
  91. package/dist/fermi-surface/FermiSurfaceScene.svelte.d.ts +1 -1
  92. package/dist/fermi-surface/FermiSurfaceTooltip.svelte +9 -6
  93. package/dist/fermi-surface/compute.js +25 -58
  94. package/dist/fermi-surface/parse.js +54 -88
  95. package/dist/file-viewer/JsonBrowser.svelte +1043 -0
  96. package/dist/file-viewer/JsonBrowser.svelte.d.ts +9 -0
  97. package/dist/file-viewer/PlotPanel.svelte +350 -0
  98. package/dist/file-viewer/PlotPanel.svelte.d.ts +9 -0
  99. package/dist/file-viewer/TrajectoryWithDos.svelte +30 -0
  100. package/dist/file-viewer/TrajectoryWithDos.svelte.d.ts +10 -0
  101. package/dist/file-viewer/detect.d.ts +11 -0
  102. package/dist/file-viewer/detect.js +381 -0
  103. package/dist/file-viewer/eligibility.d.ts +4 -0
  104. package/dist/file-viewer/eligibility.js +53 -0
  105. package/dist/file-viewer/host-protocol.d.ts +50 -0
  106. package/dist/file-viewer/host-transfer.d.ts +25 -0
  107. package/dist/file-viewer/host-transfer.js +42 -0
  108. package/dist/file-viewer/index.d.ts +5 -0
  109. package/dist/file-viewer/index.js +5 -0
  110. package/dist/file-viewer/main.d.ts +44 -0
  111. package/dist/file-viewer/main.js +535 -0
  112. package/dist/file-viewer/parse.d.ts +9 -0
  113. package/dist/file-viewer/parse.js +170 -0
  114. package/dist/file-viewer/plot-utils.d.ts +24 -0
  115. package/dist/file-viewer/plot-utils.js +191 -0
  116. package/dist/file-viewer/types.d.ts +4 -0
  117. package/dist/file-viewer/types.js +5 -0
  118. package/dist/heatmap-matrix/HeatmapMatrix.svelte +153 -219
  119. package/dist/heatmap-matrix/HeatmapMatrix.svelte.d.ts +2 -2
  120. package/dist/heatmap-matrix/HeatmapMatrixControls.svelte +9 -7
  121. package/dist/heatmap-matrix/HeatmapMatrixControls.svelte.d.ts +1 -1
  122. package/dist/heatmap-matrix/index.d.ts +5 -0
  123. package/dist/icons.d.ts +4 -0
  124. package/dist/icons.js +4 -0
  125. package/dist/index.d.ts +2 -2
  126. package/dist/index.js +1 -1
  127. package/dist/io/ExportPane.svelte +11 -7
  128. package/dist/io/decompress.d.ts +4 -1
  129. package/dist/io/decompress.js +24 -36
  130. package/dist/io/export.d.ts +11 -4
  131. package/dist/io/export.js +75 -19
  132. package/dist/io/fetch.d.ts +0 -3
  133. package/dist/io/fetch.js +0 -11
  134. package/dist/io/file-drop.js +60 -35
  135. package/dist/io/index.d.ts +0 -1
  136. package/dist/io/index.js +2 -9
  137. package/dist/io/is-binary.d.ts +9 -0
  138. package/dist/io/is-binary.js +45 -1
  139. package/dist/io/url-drop.d.ts +2 -0
  140. package/dist/io/url-drop.js +40 -40
  141. package/dist/isosurface/Isosurface.svelte +700 -215
  142. package/dist/isosurface/Isosurface.svelte.d.ts +7 -1
  143. package/dist/isosurface/IsosurfaceControls.svelte +590 -116
  144. package/dist/isosurface/IsosurfaceControls.svelte.d.ts +1 -1
  145. package/dist/isosurface/VolumeSlice.svelte +224 -0
  146. package/dist/isosurface/VolumeSlice.svelte.d.ts +28 -0
  147. package/dist/isosurface/coloring.d.ts +20 -0
  148. package/dist/isosurface/coloring.js +118 -0
  149. package/dist/isosurface/geometry-worker-types.d.ts +38 -0
  150. package/dist/isosurface/geometry.worker.d.ts +1 -0
  151. package/dist/isosurface/geometry.worker.js +59 -0
  152. package/dist/isosurface/grid.d.ts +10 -0
  153. package/dist/isosurface/grid.js +31 -0
  154. package/dist/isosurface/index.d.ts +4 -0
  155. package/dist/isosurface/index.js +4 -0
  156. package/dist/isosurface/parse-vaspwave.d.ts +3 -0
  157. package/dist/isosurface/parse-vaspwave.js +138 -0
  158. package/dist/isosurface/parse.js +6 -6
  159. package/dist/isosurface/profile.d.ts +12 -0
  160. package/dist/isosurface/profile.js +19 -0
  161. package/dist/isosurface/sampling.d.ts +34 -0
  162. package/dist/isosurface/sampling.js +408 -0
  163. package/dist/isosurface/slice-rendering.d.ts +13 -0
  164. package/dist/isosurface/slice-rendering.js +79 -0
  165. package/dist/isosurface/slice.d.ts +22 -2
  166. package/dist/isosurface/slice.js +200 -116
  167. package/dist/isosurface/types.d.ts +24 -1
  168. package/dist/isosurface/types.js +120 -8
  169. package/dist/json-path.d.ts +4 -0
  170. package/dist/json-path.js +89 -0
  171. package/dist/labels.d.ts +6 -2
  172. package/dist/labels.js +44 -14
  173. package/dist/layout/FullscreenButton.svelte +2 -1
  174. package/dist/layout/FullscreenToggle.svelte +10 -4
  175. package/dist/layout/InfoCard.svelte +8 -21
  176. package/dist/layout/InfoTag.svelte +1 -3
  177. package/dist/layout/NumberRangeInput.svelte +46 -0
  178. package/dist/layout/NumberRangeInput.svelte.d.ts +12 -0
  179. package/dist/layout/PropertyFilter.svelte +2 -6
  180. package/dist/layout/SettingsSection.svelte +57 -62
  181. package/dist/layout/SettingsSection.svelte.d.ts +6 -7
  182. package/dist/layout/SubpageGrid.svelte +3 -1
  183. package/dist/layout/ViewerChrome.svelte +16 -11
  184. package/dist/layout/ViewerChrome.svelte.d.ts +2 -1
  185. package/dist/layout/fullscreen.js +3 -5
  186. package/dist/layout/fullscreen.svelte.js +1 -2
  187. package/dist/layout/index.d.ts +1 -0
  188. package/dist/layout/index.js +1 -0
  189. package/dist/layout/json-tree/JsonNode.svelte +22 -59
  190. package/dist/layout/json-tree/JsonTree.svelte +101 -172
  191. package/dist/layout/json-tree/JsonValue.svelte +9 -32
  192. package/dist/layout/json-tree/utils.d.ts +0 -3
  193. package/dist/layout/json-tree/utils.js +50 -188
  194. package/dist/marching-cubes.d.ts +8 -1
  195. package/dist/marching-cubes.js +115 -48
  196. package/dist/math.d.ts +5 -2
  197. package/dist/math.js +48 -38
  198. package/dist/overlays/ContextMenu.svelte +19 -34
  199. package/dist/overlays/CopyButton.svelte +11 -5
  200. package/dist/overlays/DragControlTab.svelte +6 -1
  201. package/dist/overlays/DraggablePane.svelte +110 -74
  202. package/dist/overlays/DraggablePane.svelte.d.ts +2 -1
  203. package/dist/overlays/GlassChip.svelte +32 -0
  204. package/dist/overlays/GlassChip.svelte.d.ts +8 -0
  205. package/dist/overlays/InfoPaneCards.svelte +11 -23
  206. package/dist/overlays/index.d.ts +7 -0
  207. package/dist/overlays/index.js +26 -0
  208. package/dist/overlays/portal.d.ts +2 -0
  209. package/dist/overlays/portal.js +14 -0
  210. package/dist/periodic-table/PeriodicTable.svelte +113 -145
  211. package/dist/periodic-table/PeriodicTable.svelte.d.ts +5 -3
  212. package/dist/periodic-table/PeriodicTableControls.svelte +37 -115
  213. package/dist/periodic-table/TableInset.svelte +9 -4
  214. package/dist/phase-diagram/IsobaricBinaryPhaseDiagram.svelte +68 -105
  215. package/dist/phase-diagram/IsobaricBinaryPhaseDiagram.svelte.d.ts +6 -8
  216. package/dist/phase-diagram/PhaseDiagramControls.svelte +70 -94
  217. package/dist/phase-diagram/PhaseDiagramControls.svelte.d.ts +1 -1
  218. package/dist/phase-diagram/PhaseDiagramEditorPane.svelte +2 -1
  219. package/dist/phase-diagram/PhaseDiagramExportPane.svelte +12 -12
  220. package/dist/phase-diagram/PhaseDiagramTooltip.svelte +54 -58
  221. package/dist/phase-diagram/TdbInfoPanel.svelte +21 -15
  222. package/dist/phase-diagram/build-diagram.js +4 -9
  223. package/dist/phase-diagram/diagram-input.d.ts +1 -2
  224. package/dist/phase-diagram/parse.js +15 -15
  225. package/dist/phase-diagram/svg-to-diagram.js +28 -27
  226. package/dist/phase-diagram/utils.js +2 -3
  227. package/dist/plot/bar/BarPlot.svelte +461 -426
  228. package/dist/plot/bar/BarPlot.svelte.d.ts +2 -0
  229. package/dist/plot/bar/BarPlotControls.svelte +1 -3
  230. package/dist/plot/bar/BarPlotControls.svelte.d.ts +4 -6
  231. package/dist/plot/bar/SpacegroupBarPlot.svelte +46 -77
  232. package/dist/plot/bar/data.d.ts +5 -4
  233. package/dist/plot/bar/data.js +2 -1
  234. package/dist/plot/box/BoxPlot.svelte +322 -226
  235. package/dist/plot/box/BoxPlot.svelte.d.ts +2 -0
  236. package/dist/plot/box/Violin.svelte.d.ts +1 -0
  237. package/dist/plot/box/box-plot.js +1 -1
  238. package/dist/plot/core/auto-place.d.ts +1 -1
  239. package/dist/plot/core/auto-place.js +2 -2
  240. package/dist/plot/core/axis-utils.d.ts +12 -7
  241. package/dist/plot/core/axis-utils.js +48 -48
  242. package/dist/plot/core/components/AxisLabel.svelte +82 -20
  243. package/dist/plot/core/components/AxisLabel.svelte.d.ts +1 -0
  244. package/dist/plot/core/components/ColorBar.svelte +101 -106
  245. package/dist/plot/core/components/ColorScaleSelect.svelte +1 -1
  246. package/dist/plot/core/components/FillArea.svelte +10 -17
  247. package/dist/plot/core/components/HierarchyControls.svelte +249 -0
  248. package/dist/plot/{sunburst/SunburstControls.svelte.d.ts → core/components/HierarchyControls.svelte.d.ts} +12 -8
  249. package/dist/plot/core/components/InteractiveAxisLabel.svelte +1 -1
  250. package/dist/plot/core/components/InteractiveAxisLabel.svelte.d.ts +1 -1
  251. package/dist/plot/core/components/Line.svelte +18 -9
  252. package/dist/plot/core/components/Line.svelte.d.ts +2 -0
  253. package/dist/plot/core/components/PlotAxis.svelte +40 -17
  254. package/dist/plot/core/components/PlotControls.svelte +65 -41
  255. package/dist/plot/core/components/PlotLegend.svelte +31 -35
  256. package/dist/plot/core/components/PlotMarginals.svelte +616 -0
  257. package/dist/plot/core/components/PlotMarginals.svelte.d.ts +15 -0
  258. package/dist/plot/core/components/PlotTooltip.svelte +1 -1
  259. package/dist/plot/core/components/PortalSelect.svelte +4 -8
  260. package/dist/plot/core/components/ReferenceLine.svelte +27 -24
  261. package/dist/plot/core/components/ReferenceLine3D.svelte +54 -57
  262. package/dist/plot/core/components/ReferencePlane.svelte +7 -8
  263. package/dist/plot/core/components/ZeroLines.svelte +4 -8
  264. package/dist/plot/core/components/ZoomRect.svelte +1 -2
  265. package/dist/plot/core/components/index.d.ts +1 -0
  266. package/dist/plot/core/components/index.js +1 -0
  267. package/dist/plot/core/data-cleaning-signal.d.ts +46 -0
  268. package/dist/plot/core/data-cleaning-signal.js +467 -0
  269. package/dist/plot/core/data-cleaning.d.ts +2 -42
  270. package/dist/plot/core/data-cleaning.js +27 -474
  271. package/dist/plot/core/data-transform.d.ts +1 -2
  272. package/dist/plot/core/data-transform.js +9 -15
  273. package/dist/plot/core/fill-utils.d.ts +3 -1
  274. package/dist/plot/core/fill-utils.js +28 -6
  275. package/dist/plot/core/index.d.ts +1 -0
  276. package/dist/plot/core/index.js +1 -0
  277. package/dist/plot/core/interactions.js +0 -2
  278. package/dist/plot/core/layout.d.ts +15 -6
  279. package/dist/plot/core/layout.js +57 -38
  280. package/dist/plot/core/marginals.d.ts +170 -0
  281. package/dist/plot/core/marginals.js +436 -0
  282. package/dist/plot/core/pan-zoom.svelte.d.ts +2 -4
  283. package/dist/plot/core/pan-zoom.svelte.js +34 -17
  284. package/dist/plot/core/placed-tween.svelte.d.ts +3 -0
  285. package/dist/plot/core/placed-tween.svelte.js +68 -21
  286. package/dist/plot/core/reference-line.js +1 -1
  287. package/dist/plot/core/scales.d.ts +23 -0
  288. package/dist/plot/core/scales.js +39 -13
  289. package/dist/plot/core/svg.js +0 -1
  290. package/dist/plot/core/types/fills.d.ts +101 -0
  291. package/dist/plot/core/types/fills.js +15 -0
  292. package/dist/plot/core/types/plot-3d.d.ts +87 -0
  293. package/dist/plot/core/types/plot-3d.js +4 -0
  294. package/dist/plot/core/types/reference-lines.d.ts +140 -0
  295. package/dist/plot/core/types/reference-lines.js +9 -0
  296. package/dist/plot/core/types.d.ts +29 -324
  297. package/dist/plot/core/types.js +23 -20
  298. package/dist/plot/core/utils/hierarchy-chart.d.ts +52 -0
  299. package/dist/plot/core/utils/hierarchy-chart.js +191 -0
  300. package/dist/plot/core/utils/hierarchy-labels.d.ts +20 -0
  301. package/dist/plot/core/utils/hierarchy-labels.js +100 -0
  302. package/dist/plot/core/utils/label-placement.js +2 -2
  303. package/dist/plot/histogram/Histogram.svelte +314 -340
  304. package/dist/plot/histogram/Histogram.svelte.d.ts +7 -7
  305. package/dist/plot/histogram/HistogramControls.svelte +30 -28
  306. package/dist/plot/histogram/histogram.d.ts +31 -0
  307. package/dist/plot/histogram/histogram.js +70 -0
  308. package/dist/plot/histogram/index.d.ts +1 -0
  309. package/dist/plot/histogram/index.js +1 -0
  310. package/dist/plot/index.d.ts +1 -0
  311. package/dist/plot/index.js +1 -0
  312. package/dist/plot/sankey/Sankey.svelte +78 -69
  313. package/dist/plot/sankey/Sankey.svelte.d.ts +2 -2
  314. package/dist/plot/sankey/SankeyControls.svelte +22 -16
  315. package/dist/plot/sankey/sankey.js +13 -9
  316. package/dist/plot/scatter/BinnedScatterPlot.svelte +311 -141
  317. package/dist/plot/scatter/BinnedScatterPlot.svelte.d.ts +7 -0
  318. package/dist/plot/scatter/ElementScatter.svelte +4 -1
  319. package/dist/plot/scatter/ScatterPlot.svelte +517 -410
  320. package/dist/plot/scatter/ScatterPlot.svelte.d.ts +2 -0
  321. package/dist/plot/scatter/ScatterPlotControls.svelte +18 -19
  322. package/dist/plot/scatter/ScatterPlotControls.svelte.d.ts +1 -1
  323. package/dist/plot/scatter/ScatterPoint.svelte +16 -9
  324. package/dist/plot/scatter/adaptive-density.d.ts +1 -1
  325. package/dist/plot/scatter/adaptive-density.js +36 -20
  326. package/dist/plot/scatter/binned-scatter-types.d.ts +3 -2
  327. package/dist/plot/scatter/binned-scatter-types.js +6 -1
  328. package/dist/plot/scatter/scatter-data.d.ts +1 -1
  329. package/dist/plot/scatter/scatter-data.js +8 -7
  330. package/dist/plot/scatter-3d/ScatterPlot3D.svelte +25 -34
  331. package/dist/plot/scatter-3d/ScatterPlot3D.svelte.d.ts +2 -2
  332. package/dist/plot/scatter-3d/ScatterPlot3DControls.svelte +8 -5
  333. package/dist/plot/scatter-3d/ScatterPlot3DScene.svelte +113 -116
  334. package/dist/plot/scatter-3d/ScatterPlot3DScene.svelte.d.ts +2 -2
  335. package/dist/plot/scatter-3d/Surface3D.svelte +4 -13
  336. package/dist/plot/sunburst/Sunburst.svelte +269 -347
  337. package/dist/plot/sunburst/Sunburst.svelte.d.ts +2 -2
  338. package/dist/plot/sunburst/index.d.ts +1 -1
  339. package/dist/plot/sunburst/index.js +2 -1
  340. package/dist/plot/sunburst/render.d.ts +2 -2
  341. package/dist/plot/sunburst/render.js +47 -22
  342. package/dist/plot/sunburst/sunburst.d.ts +5 -1
  343. package/dist/plot/sunburst/sunburst.js +10 -3
  344. package/dist/plot/treemap/Treemap.svelte +1022 -0
  345. package/dist/plot/treemap/Treemap.svelte.d.ts +90 -0
  346. package/dist/plot/treemap/index.d.ts +4 -0
  347. package/dist/plot/treemap/index.js +4 -0
  348. package/dist/plot/treemap/labels.d.ts +38 -0
  349. package/dist/plot/treemap/labels.js +80 -0
  350. package/dist/plot/treemap/treemap.d.ts +28 -0
  351. package/dist/plot/treemap/treemap.js +102 -0
  352. package/dist/rdf/RdfPlot.svelte +37 -59
  353. package/dist/rdf/RdfPlot.svelte.d.ts +1 -1
  354. package/dist/rdf/calc-rdf.js +63 -52
  355. package/dist/rdf/index.d.ts +0 -1
  356. package/dist/sanitize.js +85 -27
  357. package/dist/scene/SceneCamera.svelte +1 -1
  358. package/dist/scene/SceneCamera.svelte.d.ts +1 -1
  359. package/dist/scene/bind-renderer.svelte.js +14 -6
  360. package/dist/scene/index.d.ts +1 -2
  361. package/dist/scene/index.js +1 -1
  362. package/dist/scene/{props.js → props.svelte.js} +15 -1
  363. package/dist/settings.d.ts +19 -9
  364. package/dist/settings.js +229 -525
  365. package/dist/spectral/Bands.svelte +207 -221
  366. package/dist/spectral/BandsAndDos.svelte +11 -9
  367. package/dist/spectral/BrillouinBandsDos.svelte +19 -42
  368. package/dist/spectral/Dos.svelte +92 -93
  369. package/dist/spectral/helpers.d.ts +3 -3
  370. package/dist/spectral/helpers.js +65 -140
  371. package/dist/state.svelte.js +5 -18
  372. package/dist/structure/Arrow.svelte +5 -18
  373. package/dist/structure/ArrowInstances.svelte +160 -0
  374. package/dist/structure/ArrowInstances.svelte.d.ts +16 -0
  375. package/dist/structure/AtomLegend.svelte +120 -85
  376. package/dist/structure/AtomLegend.svelte.d.ts +2 -3
  377. package/dist/structure/Bond.svelte +31 -23
  378. package/dist/structure/CanvasTooltip.svelte +15 -3
  379. package/dist/structure/CellSelect.svelte +45 -35
  380. package/dist/structure/Cylinder.svelte +24 -40
  381. package/dist/structure/InstancedAtoms.svelte +114 -0
  382. package/dist/structure/InstancedAtoms.svelte.d.ts +15 -0
  383. package/dist/structure/Lattice.svelte +85 -149
  384. package/dist/structure/SiteLabels.svelte +122 -0
  385. package/dist/structure/SiteLabels.svelte.d.ts +18 -0
  386. package/dist/structure/Structure.svelte +636 -504
  387. package/dist/structure/Structure.svelte.d.ts +4 -2
  388. package/dist/structure/StructureCarousel.svelte +637 -0
  389. package/dist/structure/StructureCarousel.svelte.d.ts +19 -0
  390. package/dist/structure/StructureControls.svelte +165 -425
  391. package/dist/structure/StructureControls.svelte.d.ts +1 -1
  392. package/dist/structure/StructureExportPane.svelte +17 -21
  393. package/dist/structure/StructureInfoPane.svelte +128 -133
  394. package/dist/structure/StructureInfoPane.svelte.d.ts +1 -1
  395. package/dist/structure/StructureScene.svelte +535 -578
  396. package/dist/structure/StructureScene.svelte.d.ts +6 -2
  397. package/dist/structure/StructureViewport.svelte +451 -0
  398. package/dist/structure/StructureViewport.svelte.d.ts +65 -0
  399. package/dist/structure/atom-label-placement.d.ts +16 -12
  400. package/dist/structure/atom-label-placement.js +70 -37
  401. package/dist/structure/atom-properties.d.ts +2 -0
  402. package/dist/structure/atom-properties.js +105 -38
  403. package/dist/structure/bond-order-perception.js +3 -8
  404. package/dist/structure/bonding.d.ts +9 -3
  405. package/dist/structure/bonding.js +95 -46
  406. package/dist/structure/edit-history.d.ts +6 -0
  407. package/dist/structure/edit-history.js +27 -0
  408. package/dist/structure/export.d.ts +1 -0
  409. package/dist/structure/export.js +89 -105
  410. package/dist/structure/format-detect.d.ts +1 -0
  411. package/dist/structure/format-detect.js +20 -0
  412. package/dist/structure/geometry.d.ts +9 -0
  413. package/dist/structure/geometry.js +27 -0
  414. package/dist/structure/index.d.ts +16 -1
  415. package/dist/structure/index.js +15 -10
  416. package/dist/structure/measure.d.ts +1 -1
  417. package/dist/structure/measure.js +6 -12
  418. package/dist/structure/parse.d.ts +2 -1
  419. package/dist/structure/parse.js +272 -313
  420. package/dist/structure/partial-occupancy.js +10 -5
  421. package/dist/structure/pbc.js +85 -107
  422. package/dist/structure/polyhedra.d.ts +0 -1
  423. package/dist/structure/polyhedra.js +7 -21
  424. package/dist/structure/prop-groups.d.ts +85 -0
  425. package/dist/structure/prop-groups.js +18 -0
  426. package/dist/structure/supercell.d.ts +1 -2
  427. package/dist/structure/supercell.js +7 -13
  428. package/dist/symmetry/SymmetryElements.svelte +11 -15
  429. package/dist/symmetry/SymmetryStats.svelte +55 -71
  430. package/dist/symmetry/WyckoffTable.svelte +10 -28
  431. package/dist/symmetry/cell-transform.js +6 -14
  432. package/dist/symmetry/index.d.ts +1 -0
  433. package/dist/symmetry/index.js +13 -10
  434. package/dist/symmetry/spacegroups.js +3 -2
  435. package/dist/table/HeatmapTable.svelte +1142 -447
  436. package/dist/table/HeatmapTable.svelte.d.ts +12 -2
  437. package/dist/table/ToggleMenu.svelte +168 -53
  438. package/dist/table/ToggleMenu.svelte.d.ts +1 -1
  439. package/dist/table/index.d.ts +21 -6
  440. package/dist/table/index.js +34 -21
  441. package/dist/theme/ThemeControl.svelte +16 -8
  442. package/dist/theme/embedded.d.ts +18 -0
  443. package/dist/theme/embedded.js +206 -0
  444. package/dist/theme/index.d.ts +5 -5
  445. package/dist/theme/index.js +5 -12
  446. package/dist/theme/themes.mjs +44 -66
  447. package/dist/tooltip/KCoords.svelte +4 -1
  448. package/dist/tooltip/TooltipContent.svelte +3 -6
  449. package/dist/tooltip/TooltipContent.svelte.d.ts +1 -1
  450. package/dist/tooltip/index.d.ts +8 -1
  451. package/dist/trajectory/Trajectory.svelte +613 -386
  452. package/dist/trajectory/Trajectory.svelte.d.ts +1 -1
  453. package/dist/trajectory/TrajectoryError.svelte +12 -74
  454. package/dist/trajectory/TrajectoryExportPane.svelte +14 -32
  455. package/dist/trajectory/TrajectoryInfoPane.svelte +127 -164
  456. package/dist/trajectory/TrajectoryInfoPane.svelte.d.ts +2 -1
  457. package/dist/trajectory/extract.js +61 -49
  458. package/dist/trajectory/format-detect.d.ts +2 -0
  459. package/dist/trajectory/format-detect.js +17 -13
  460. package/dist/trajectory/frame-reader.d.ts +2 -0
  461. package/dist/trajectory/frame-reader.js +35 -32
  462. package/dist/trajectory/helpers.d.ts +2 -0
  463. package/dist/trajectory/helpers.js +34 -56
  464. package/dist/trajectory/index.d.ts +1 -0
  465. package/dist/trajectory/index.js +5 -8
  466. package/dist/trajectory/parse/ase.js +1 -1
  467. package/dist/trajectory/parse/h5-utils.d.ts +13 -0
  468. package/dist/trajectory/parse/h5-utils.js +109 -0
  469. package/dist/trajectory/parse/hdf5.d.ts +1 -1
  470. package/dist/trajectory/parse/hdf5.js +116 -106
  471. package/dist/trajectory/parse/index.d.ts +6 -6
  472. package/dist/trajectory/parse/index.js +25 -33
  473. package/dist/trajectory/parse/lammps.js +8 -12
  474. package/dist/trajectory/parse/vasp.js +10 -7
  475. package/dist/trajectory/parse/vaspout-electronic.d.ts +13 -0
  476. package/dist/trajectory/parse/vaspout-electronic.js +207 -0
  477. package/dist/trajectory/parse/vaspout-h5.d.ts +4 -0
  478. package/dist/trajectory/parse/vaspout-h5.js +281 -0
  479. package/dist/trajectory/parse/xyz.js +59 -9
  480. package/dist/trajectory/plotting.d.ts +8 -9
  481. package/dist/trajectory/plotting.js +113 -64
  482. package/dist/utils.d.ts +3 -0
  483. package/dist/utils.js +7 -0
  484. package/dist/xrd/XrdPlot.svelte +79 -118
  485. package/dist/xrd/broadening.js +2 -1
  486. package/dist/xrd/calc-xrd.js +24 -62
  487. package/dist/xrd/parse.d.ts +0 -1
  488. package/dist/xrd/parse.js +69 -95
  489. package/package.json +94 -34
  490. package/readme.md +6 -5
  491. package/dist/api/mp.d.ts +0 -6
  492. package/dist/api/mp.js +0 -22
  493. package/dist/plot/sunburst/SunburstControls.svelte +0 -200
  494. package/dist/scene/types.d.ts +0 -26
  495. package/dist/tooltip/types.d.ts +0 -8
  496. package/dist/trajectory/constants.d.ts +0 -6
  497. package/dist/trajectory/constants.js +0 -11
  498. /package/dist/{scene/types.js → file-viewer/host-protocol.js} +0 -0
  499. /package/dist/{tooltip/types.js → isosurface/geometry-worker-types.js} +0 -0
@@ -1,7 +1,6 @@
1
1
  <script lang="ts">
2
2
  import type { D3InterpolateName } from '../colors'
3
3
  import { get_electro_neg_formula } from '../composition/format'
4
- import { extract_formula_elements } from '../composition/parse'
5
4
  import TemperatureSlider from '../convex-hull/TemperatureSlider.svelte'
6
5
  import type { PhaseData } from '../convex-hull/types'
7
6
  import Spinner from '../feedback/Spinner.svelte'
@@ -12,9 +11,8 @@
12
11
  import { constrain_tooltip_position } from '../plot/core/layout'
13
12
  import type { DataSeries, UserContentProps } from '../plot/core/types'
14
13
  import { sanitize_html } from '../sanitize'
15
- import { SvelteMap } from 'svelte/reactivity'
16
14
  import { compute_chempot_async } from './async-compute.svelte'
17
- import { get_chempot_color_bar_config, make_chempot_color_scale } from './color'
15
+ import { ARITY_COLORS, get_chempot_color_bar_config, get_domain_color_data } from './color'
18
16
  import {
19
17
  CHEMPOT_COLOR_MODE_OPTIONS,
20
18
  CHEMPOT_COLOR_SCALE_OPTIONS,
@@ -22,10 +20,8 @@
22
20
  } from './controls-state.svelte'
23
21
  import {
24
22
  apply_element_padding,
25
- best_form_energy_for_formula,
26
23
  build_axis_ranges,
27
- formula_key_from_composition,
28
- get_energy_per_atom,
24
+ get_energy_stats_by_formula,
29
25
  get_min_entries_and_el_refs,
30
26
  orthonormal_2d,
31
27
  pad_domain_points,
@@ -33,12 +29,7 @@
33
29
  import { export_json_file, get_json_string } from './export'
34
30
  import { with_hover_pointer } from './pointer'
35
31
  import { get_temp_filter_payload, get_valid_temperature } from './temperature'
36
- import type {
37
- ChemPotColorMode,
38
- ChemPotDiagramConfig,
39
- ChemPotDiagramData,
40
- ChemPotHoverInfo,
41
- } from './types'
32
+ import type { ChemPotDiagramConfig, ChemPotDiagramData, ChemPotHoverInfo } from './types'
42
33
  import { CHEMPOT_DEFAULTS } from './types'
43
34
 
44
35
  let {
@@ -78,15 +69,18 @@
78
69
  const render_height = $derived(Math.round(render_width * base_aspect_ratio))
79
70
 
80
71
  // === Control overrides (override ?? config ?? default, cleared by Reset) ===
81
- const overrides = create_chempot_overrides(() => config, [
82
- `formal_chempots`,
83
- `label_stable`,
84
- `element_padding`,
85
- `default_min_limit`,
86
- `color_mode`,
87
- `color_scale`,
88
- `reverse_color_scale`,
89
- ])
72
+ const overrides = create_chempot_overrides(
73
+ () => config,
74
+ [
75
+ `formal_chempots`,
76
+ `label_stable`,
77
+ `element_padding`,
78
+ `default_min_limit`,
79
+ `color_mode`,
80
+ `color_scale`,
81
+ `reverse_color_scale`,
82
+ ],
83
+ )
90
84
  const formal_chempots = $derived(overrides.resolve(`formal_chempots`))
91
85
  const label_stable = $derived(overrides.resolve(`label_stable`))
92
86
  const element_padding = $derived(overrides.resolve(`element_padding`))
@@ -94,7 +88,6 @@
94
88
  const color_mode = $derived(overrides.resolve(`color_mode`))
95
89
  const color_scale = $derived(overrides.resolve(`color_scale`))
96
90
  const reverse_color_scale = $derived(overrides.resolve(`reverse_color_scale`))
97
- const arity_colors = [`#3498db`, `#2ecc71`, `#e67e22`, `#9b59b6`] as const
98
91
  const show_tooltip = $derived(config.show_tooltip ?? CHEMPOT_DEFAULTS.show_tooltip)
99
92
  const effective_config = $derived({
100
93
  ...config,
@@ -120,10 +113,7 @@
120
113
  if (next_temperature !== temperature) temperature = next_temperature
121
114
  })
122
115
 
123
- const show_temperature_slider = $derived(
124
- has_temp_data && available_temperatures.length > 0,
125
- )
126
-
116
+ const show_temperature_slider = $derived(has_temp_data && available_temperatures.length > 0)
127
117
 
128
118
  // === Diagram computation (off main thread via Web Worker) ===
129
119
  let diagram_data = $state<ChemPotDiagramData | null>(null)
@@ -148,12 +138,12 @@
148
138
  diagram_data = null
149
139
  diagram_computing = false
150
140
  })
151
- return () => { cancelled = true }
141
+ return () => {
142
+ cancelled = true
143
+ }
152
144
  })
153
145
 
154
- const plot_elements = $derived(
155
- (diagram_data?.elements ?? config.elements ?? []).slice(0, 2),
156
- )
146
+ const plot_elements = $derived((diagram_data?.elements ?? config.elements ?? []).slice(0, 2))
157
147
 
158
148
  const draw_domains = $derived.by(() => {
159
149
  if (!diagram_data || plot_elements.length < 2) return {}
@@ -183,115 +173,21 @@
183
173
  return result
184
174
  })
185
175
  const domain_entries = $derived(Object.entries(draw_domains))
186
- const domain_formulas = $derived(Object.keys(draw_domains))
187
-
188
- interface FormulaEnergyStats {
189
- matching_entry_count: number
190
- min_energy_per_atom: number | null
191
- }
192
- type NumericColorMode = Exclude<ChemPotColorMode, `none` | `arity`>
193
176
 
194
- const raw_el_refs = $derived(
195
- get_min_entries_and_el_refs(temp_filtered_entries).el_refs,
196
- )
197
- const entry_energy_stats_by_formula = $derived.by(
198
- (): SvelteMap<string, FormulaEnergyStats> => {
199
- const stats = new SvelteMap<string, FormulaEnergyStats>()
200
- for (const entry of temp_filtered_entries) {
201
- const formula_key = formula_key_from_composition(entry.composition)
202
- const epa = get_energy_per_atom(entry)
203
- const prev_stats = stats.get(formula_key)
204
- if (!prev_stats) {
205
- stats.set(formula_key, {
206
- matching_entry_count: 1,
207
- min_energy_per_atom: epa,
208
- })
209
- continue
210
- }
211
- stats.set(formula_key, {
212
- matching_entry_count: prev_stats.matching_entry_count + 1,
213
- min_energy_per_atom: Math.min(prev_stats.min_energy_per_atom ?? epa, epa),
214
- })
215
- }
216
- return stats
217
- },
218
- )
219
- const color_mode_labels: Record<NumericColorMode, string> = {
220
- energy: `Energy per atom (eV)`,
221
- formation_energy: `Formation energy (eV/atom)`,
222
- entries: `Entry count`,
223
- }
224
- function get_numeric_color_value(
225
- formula: string,
226
- active_color_mode: NumericColorMode,
227
- ): number | null {
228
- if (active_color_mode === `energy`) {
229
- return entry_energy_stats_by_formula.get(formula)?.min_energy_per_atom ?? null
230
- }
231
- if (active_color_mode === `formation_energy`) {
232
- return best_form_energy_for_formula(
233
- temp_filtered_entries,
234
- formula,
235
- raw_el_refs,
236
- ) ?? null
237
- }
238
- return entry_energy_stats_by_formula.get(formula)?.matching_entry_count ?? 0
239
- }
240
- const domain_color_values = $derived.by(
241
- (): { value_by_formula: SvelteMap<string, number>; values: number[] } | null => {
242
- if (color_mode === `none` || color_mode === `arity`) return null
243
- const active_color_mode = color_mode as NumericColorMode
244
- const value_by_formula = new SvelteMap<string, number>()
245
- const values: number[] = []
246
- for (const formula of domain_formulas) {
247
- const value = get_numeric_color_value(formula, active_color_mode)
248
- if (value == null || !Number.isFinite(value)) continue
249
- values.push(value)
250
- value_by_formula.set(formula, value)
251
- }
252
- return { value_by_formula, values }
253
- },
254
- )
255
- const domain_colors = $derived.by((): SvelteMap<string, string> => {
256
- const colors = new SvelteMap<string, string>()
257
- if (color_mode === `none`) return colors
258
- if (color_mode === `arity`) {
259
- for (const formula of domain_formulas) {
260
- const n_elements = extract_formula_elements(formula).length
261
- const color_idx = Math.min(n_elements, arity_colors.length) - 1
262
- colors.set(formula, arity_colors[Math.max(0, color_idx)])
263
- }
264
- return colors
265
- }
266
- const values_payload = domain_color_values
267
- const scale = make_chempot_color_scale(
268
- values_payload?.values ?? [],
177
+ // Raw (non-renormalized) elemental refs for true formation energies
178
+ const raw_el_refs = $derived(get_min_entries_and_el_refs(temp_filtered_entries).el_refs)
179
+ // Memoize separately so color-control toggles don't re-scan all entries
180
+ const energy_stats = $derived(get_energy_stats_by_formula(temp_filtered_entries))
181
+ const { colors: domain_colors, color_range } = $derived(
182
+ get_domain_color_data({
183
+ formulas: Object.keys(draw_domains),
184
+ color_mode,
269
185
  color_scale,
270
186
  reverse_color_scale,
271
- )
272
- for (const formula of domain_formulas) {
273
- const color_val = values_payload?.value_by_formula.get(formula)
274
- colors.set(formula, color_val != null && scale ? scale(color_val) : `#999`)
275
- }
276
- return colors
277
- })
278
- const color_range = $derived.by(
279
- (): { min: number; max: number; label: string } | null => {
280
- const values = domain_color_values?.values ?? []
281
- if (values.length === 0) return null
282
- let min_val = values[0], max_val = values[0]
283
- for (let idx = 1; idx < values.length; idx++) {
284
- if (values[idx] < min_val) min_val = values[idx]
285
- if (values[idx] > max_val) max_val = values[idx]
286
- }
287
- return {
288
- min: min_val,
289
- max: Math.max(max_val, min_val + 1e-6),
290
- label: color_mode === `none` || color_mode === `arity`
291
- ? ``
292
- : color_mode_labels[color_mode],
293
- }
294
- },
187
+ entries: temp_filtered_entries,
188
+ el_refs: raw_el_refs,
189
+ energy_stats,
190
+ }),
295
191
  )
296
192
 
297
193
  // === Convert domains to ScatterPlot DataSeries ===
@@ -350,11 +246,7 @@
350
246
  // === Hover info for external consumers ===
351
247
  let locked_hover_formula = $state<string | null>(null)
352
248
 
353
- function set_hover_info(
354
- formula: string,
355
- pts: number[][],
356
- event: MouseEvent,
357
- ): void {
249
+ function set_hover_info(formula: string, pts: number[][], event: MouseEvent): void {
358
250
  const bounds = wrapper?.getBoundingClientRect()
359
251
  hover_info = with_hover_pointer<ChemPotHoverInfo>(
360
252
  {
@@ -387,9 +279,7 @@
387
279
  set_hover_info(formula, pts, data.event)
388
280
  }
389
281
 
390
- function handle_click(
391
- data: { point: { series_idx: number }; event: MouseEvent },
392
- ): void {
282
+ function handle_click(data: { point: { series_idx: number }; event: MouseEvent }): void {
393
283
  const entry = domain_entries[data.point.series_idx]
394
284
  if (!entry) return
395
285
  const [formula, pts] = entry
@@ -406,10 +296,12 @@
406
296
  const pointer = hover_info?.pointer
407
297
  if (!pointer) return { x: 4, y: 4 }
408
298
  return constrain_tooltip_position(
409
- pointer.x, pointer.y,
299
+ pointer.x,
300
+ pointer.y,
410
301
  tooltip_el?.offsetWidth ?? 150,
411
302
  tooltip_el?.offsetHeight ?? 40,
412
- render_width, render_height,
303
+ render_width,
304
+ render_height,
413
305
  { offset: 0 },
414
306
  )
415
307
  })
@@ -447,11 +339,13 @@
447
339
  },
448
340
  {
449
341
  title: `Export Data`,
450
- items: [{
451
- label: `JSON`,
452
- on_download: () => export_json_file(json_payload, export_basename),
453
- copy_text: () => get_json_string(json_payload),
454
- }],
342
+ items: [
343
+ {
344
+ label: `JSON`,
345
+ on_download: () => export_json_file(json_payload, export_basename),
346
+ copy_text: () => get_json_string(json_payload),
347
+ },
348
+ ],
455
349
  },
456
350
  ])
457
351
  </script>
@@ -477,8 +371,7 @@
477
371
  toggle_props={{
478
372
  class: `chempot-export-toggle`,
479
373
  title: `Export chemical potential diagram`,
480
- style:
481
- `position: absolute; top: var(--ctrl-btn-top, 5pt); right: 36px; z-index: 10`,
374
+ style: `position: absolute; top: var(--ctrl-btn-top, 5pt); right: 36px; z-index: 10`,
482
375
  }}
483
376
  />
484
377
  {/snippet}
@@ -509,7 +402,7 @@
509
402
  step="0.1"
510
403
  value={element_padding}
511
404
  oninput={(event) =>
512
- overrides.set(`element_padding`, Number(event.currentTarget.value) || 0)}
405
+ overrides.set(`element_padding`, Number(event.currentTarget.value) || 0)}
513
406
  />
514
407
  </label>
515
408
  <label>
@@ -534,7 +427,7 @@
534
427
  <select
535
428
  value={color_mode}
536
429
  onchange={(event) =>
537
- overrides.set(`color_mode`, event.currentTarget.value as typeof color_mode)}
430
+ overrides.set(`color_mode`, event.currentTarget.value as typeof color_mode)}
538
431
  >
539
432
  {#each CHEMPOT_COLOR_MODE_OPTIONS as [value, label] (value)}
540
433
  <option {value}>{label}</option>
@@ -547,7 +440,7 @@
547
440
  <select
548
441
  value={color_scale}
549
442
  onchange={(event) =>
550
- overrides.set(`color_scale`, event.currentTarget.value as D3InterpolateName)}
443
+ overrides.set(`color_scale`, event.currentTarget.value as D3InterpolateName)}
551
444
  >
552
445
  {#each CHEMPOT_COLOR_SCALE_OPTIONS as [value, label] (value)}
553
446
  <option {value}>{label}</option>
@@ -589,9 +482,9 @@
589
482
  onpointerdown={(event) => {
590
483
  const target = event.target
591
484
  if (!locked_hover_formula) return
592
- const is_background_click = target === wrapper ||
593
- (target instanceof SVGElement &&
594
- target.closest(`g[data-series-id]`) === null)
485
+ const is_background_click =
486
+ target === wrapper ||
487
+ (target instanceof SVGElement && target.closest(`g[data-series-id]`) === null)
595
488
  if (is_background_click) {
596
489
  clear_hover_lock()
597
490
  }
@@ -612,11 +505,11 @@
612
505
  on_point_click={handle_click}
613
506
  style="--scatter-width: 100%; --scatter-height: {render_height}px; --fullscreen-btn-offset: 68px"
614
507
  />
615
- {#if color_mode !== `none` && color_mode !== `arity` && color_range}
508
+ {#if color_range}
616
509
  {@const color_bar_config = get_chempot_color_bar_config(
617
- color_scale,
618
- reverse_color_scale,
619
- )}
510
+ color_scale,
511
+ reverse_color_scale,
512
+ )}
620
513
  <ColorBar
621
514
  title={color_range.label}
622
515
  range={[color_range.min, color_range.max]}
@@ -631,7 +524,7 @@
631
524
  <div class="arity-legend">
632
525
  {#each [`Unary`, `Binary`, `Ternary`, `4+`] as label_text, color_idx (label_text)}
633
526
  <span>
634
- <span style:background={arity_colors[color_idx]}></span>
527
+ <span style:background={ARITY_COLORS[color_idx]}></span>
635
528
  {label_text}
636
529
  </span>
637
530
  {/each}
@@ -669,7 +562,9 @@
669
562
  }
670
563
  .chempot-diagram-2d > :global(.pane-toggle) {
671
564
  opacity: 0;
672
- transition: opacity 0.2s, background-color 0.2s;
565
+ transition:
566
+ opacity 0.2s,
567
+ background-color 0.2s;
673
568
  }
674
569
  .chempot-diagram-2d:hover > :global(.pane-toggle),
675
570
  .chempot-diagram-2d > :global(.pane-toggle:focus-visible),
@@ -716,10 +611,7 @@
716
611
  }
717
612
  .tooltip {
718
613
  position: absolute;
719
- background: var(
720
- --tooltip-bg,
721
- light-dark(rgba(255, 255, 255, 0.95), rgba(0, 0, 0, 0.9))
722
- );
614
+ background: var(--tooltip-bg, light-dark(rgba(255, 255, 255, 0.95), rgba(0, 0, 0, 0.9)));
723
615
  color: var(--tooltip-text, var(--text-color, #fff));
724
616
  padding: 4px 8px;
725
617
  border-radius: 4px;
@@ -14,6 +14,6 @@ type $$ComponentProps = {
14
14
  fullscreen?: boolean;
15
15
  export_pane_open?: boolean;
16
16
  };
17
- declare const ChemPotDiagram2D: import("svelte").Component<$$ComponentProps, {}, "height" | "width" | "temperature" | "fullscreen" | "wrapper" | "export_pane_open" | "hover_info">;
17
+ declare const ChemPotDiagram2D: import("svelte").Component<$$ComponentProps, {}, "height" | "width" | "fullscreen" | "wrapper" | "export_pane_open" | "temperature" | "hover_info">;
18
18
  type ChemPotDiagram2D = ReturnType<typeof ChemPotDiagram2D>;
19
19
  export default ChemPotDiagram2D;