react-science 4.1.2 → 5.0.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 (570) hide show
  1. package/lib/app/about/AboutDialogToolbarButton.d.ts +2 -2
  2. package/lib/app/about/AboutDialogToolbarButton.d.ts.map +1 -1
  3. package/lib/app/about/AboutDialogToolbarButton.js +1 -2
  4. package/lib/app/about/AboutDialogToolbarButton.js.map +1 -1
  5. package/lib/app/explorer/ExplorerPlotView.js +1 -2
  6. package/lib/app/explorer/ExplorerPlotView.js.map +1 -1
  7. package/lib/app/explorer/MeasurementExplorer.js +1 -2
  8. package/lib/app/explorer/MeasurementExplorer.js.map +1 -1
  9. package/lib/app/explorer/MeasurementExplorerWithState.js +1 -1
  10. package/lib/app/explorer/MeasurementExplorerWithState.js.map +1 -1
  11. package/lib/app/helpers/MeasurementPlot.js +1 -2
  12. package/lib/app/helpers/MeasurementPlot.js.map +1 -1
  13. package/lib/app/helpers/MeasurementVariableSelect.js +1 -2
  14. package/lib/app/helpers/MeasurementVariableSelect.js.map +1 -1
  15. package/lib/app/helpers/getColorFromConfig.js +1 -2
  16. package/lib/app/helpers/getColorFromConfig.js.map +1 -1
  17. package/lib/app/helpers/react-plot.js +1 -2
  18. package/lib/app/helpers/react-plot.js.map +1 -1
  19. package/lib/app/helpers/splitEntries.js +1 -2
  20. package/lib/app/helpers/splitEntries.js.map +1 -1
  21. package/lib/app/hooks/file-loading.js +2 -3
  22. package/lib/app/hooks/file-loading.js.map +1 -1
  23. package/lib/app/kinds/ir/IrPeaksPanel.d.ts.map +1 -1
  24. package/lib/app/kinds/ir/IrPeaksPanel.js +8 -20
  25. package/lib/app/kinds/ir/IrPeaksPanel.js.map +1 -1
  26. package/lib/app/kinds/iv/plot-view/IvMeasurementsPlot.d.ts.map +1 -1
  27. package/lib/app/kinds/iv/plot-view/IvMeasurementsPlot.js +1 -1
  28. package/lib/app/kinds/iv/plot-view/IvMeasurementsPlot.js.map +1 -1
  29. package/lib/app/kinds/iv/plot-view/IvPlotVariablesSelector.js +1 -1
  30. package/lib/app/kinds/iv/plot-view/IvPlotVariablesSelector.js.map +1 -1
  31. package/lib/app/kinds/iv/plot-view/IvPlotView.js +1 -2
  32. package/lib/app/kinds/iv/plot-view/IvPlotView.js.map +1 -1
  33. package/lib/app/kinds/iv/plot-view/IvSeries.js +1 -1
  34. package/lib/app/kinds/iv/plot-view/IvSeries.js.map +1 -1
  35. package/lib/app/kinds/mass/MassPlotView.js +1 -2
  36. package/lib/app/kinds/mass/MassPlotView.js.map +1 -1
  37. package/lib/app/kinds/mass/MeasurementMassPlot.d.ts.map +1 -1
  38. package/lib/app/kinds/mass/MeasurementMassPlot.js +3 -5
  39. package/lib/app/kinds/mass/MeasurementMassPlot.js.map +1 -1
  40. package/lib/app/panels/SignalProcessingPanel.d.ts.map +1 -1
  41. package/lib/app/panels/SignalProcessingPanel.js +53 -29
  42. package/lib/app/panels/SignalProcessingPanel.js.map +1 -1
  43. package/lib/app/panels/measurement-config/MeasurementConfigPanel.js +1 -2
  44. package/lib/app/panels/measurement-config/MeasurementConfigPanel.js.map +1 -1
  45. package/lib/app/panels/measurement-config/MeasurementConfigPanelAccordion.js +1 -2
  46. package/lib/app/panels/measurement-config/MeasurementConfigPanelAccordion.js.map +1 -1
  47. package/lib/app/panels/measurement-info/MeasurementInfoPanel.js +1 -2
  48. package/lib/app/panels/measurement-info/MeasurementInfoPanel.js.map +1 -1
  49. package/lib/app/panels/measurement-info/MeasurementInfoPanelAccordion.js +1 -2
  50. package/lib/app/panels/measurement-info/MeasurementInfoPanelAccordion.js.map +1 -1
  51. package/lib/app/panels/measurements/MeasurementCheckbox.js +1 -2
  52. package/lib/app/panels/measurements/MeasurementCheckbox.js.map +1 -1
  53. package/lib/app/panels/measurements/MeasurementColorPreview.js +1 -2
  54. package/lib/app/panels/measurements/MeasurementColorPreview.js.map +1 -1
  55. package/lib/app/panels/measurements/MeasurementVisibilityToggle.js +2 -3
  56. package/lib/app/panels/measurements/MeasurementVisibilityToggle.js.map +1 -1
  57. package/lib/app/panels/measurements/MeasurementsPanel.js +1 -2
  58. package/lib/app/panels/measurements/MeasurementsPanel.js.map +1 -1
  59. package/lib/app/panels/measurements/MeasurementsPanelAccordion.js +1 -2
  60. package/lib/app/panels/measurements/MeasurementsPanelAccordion.js.map +1 -1
  61. package/lib/app/panels/measurements/MeasurementsTable.d.ts.map +1 -1
  62. package/lib/app/panels/measurements/MeasurementsTable.js +7 -8
  63. package/lib/app/panels/measurements/MeasurementsTable.js.map +1 -1
  64. package/lib/app/panels/measurements/measurementPanelContext.d.ts +2 -2
  65. package/lib/app/panels/measurements/measurementPanelContext.d.ts.map +1 -1
  66. package/lib/app/panels/measurements/measurementPanelContext.js +2 -3
  67. package/lib/app/panels/measurements/measurementPanelContext.js.map +1 -1
  68. package/lib/app-data/enhancers/enhance.js +1 -2
  69. package/lib/app-data/enhancers/enhance.js.map +1 -1
  70. package/lib/app-data/helpers/variables.js +3 -4
  71. package/lib/app-data/helpers/variables.js.map +1 -1
  72. package/lib/app-data/kinds/ir/irAutoPeakPickingEnhancer.js +2 -3
  73. package/lib/app-data/kinds/ir/irAutoPeakPickingEnhancer.js.map +1 -1
  74. package/lib/app-data/kinds/ir/irMeasurementEnhancer.js +1 -2
  75. package/lib/app-data/kinds/ir/irMeasurementEnhancer.js.map +1 -1
  76. package/lib/app-data/loaders/biologicLoader.js +1 -2
  77. package/lib/app-data/loaders/biologicLoader.js.map +1 -1
  78. package/lib/app-data/loaders/cdfLoader.js +1 -2
  79. package/lib/app-data/loaders/cdfLoader.js.map +1 -1
  80. package/lib/app-data/loaders/jcampLoader.js +1 -2
  81. package/lib/app-data/loaders/jcampLoader.js.map +1 -1
  82. package/lib/app-data/loaders/loadMeasurements.js +1 -2
  83. package/lib/app-data/loaders/loadMeasurements.js.map +1 -1
  84. package/lib/app-data/loaders/proprietary/agilent/cary500Loader.js +2 -3
  85. package/lib/app-data/loaders/proprietary/agilent/cary500Loader.js.map +1 -1
  86. package/lib/app-data/loaders/spcLoader.js +1 -2
  87. package/lib/app-data/loaders/spcLoader.js.map +1 -1
  88. package/lib/app-data/loaders/utility/getMeasurementInfoFromFile.js +1 -2
  89. package/lib/app-data/loaders/utility/getMeasurementInfoFromFile.js.map +1 -1
  90. package/lib/app-data/loaders/utility/measurementLoader.js +1 -2
  91. package/lib/app-data/loaders/utility/measurementLoader.js.map +1 -1
  92. package/lib/app-data/loaders/utility/parserLog.js +1 -2
  93. package/lib/app-data/loaders/utility/parserLog.js.map +1 -1
  94. package/lib/app-data/loaders/wdfLoader.js +1 -2
  95. package/lib/app-data/loaders/wdfLoader.js.map +1 -1
  96. package/lib/app-data/state/appState.js +6 -7
  97. package/lib/app-data/state/appState.js.map +1 -1
  98. package/lib/app-data/state/data/data.helpers.d.ts +1 -1
  99. package/lib/app-data/state/data/data.helpers.d.ts.map +1 -1
  100. package/lib/app-data/state/data/data.helpers.js +14 -15
  101. package/lib/app-data/state/data/data.helpers.js.map +1 -1
  102. package/lib/app-data/state/data/getEmptyAppData.js +1 -2
  103. package/lib/app-data/state/data/getEmptyAppData.js.map +1 -1
  104. package/lib/app-data/state/data/kinds.d.ts +1 -1
  105. package/lib/app-data/state/data/kinds.d.ts.map +1 -1
  106. package/lib/app-data/state/producers/appStateProducer.js +2 -2
  107. package/lib/app-data/state/producers/appStateProducer.js.map +1 -1
  108. package/lib/app-data/state/producers/plot-view/helpers/zoom.js +3 -4
  109. package/lib/app-data/state/producers/plot-view/helpers/zoom.js.map +1 -1
  110. package/lib/app-data/state/settings/getEmptyAppSettings.js +1 -2
  111. package/lib/app-data/state/settings/getEmptyAppSettings.js.map +1 -1
  112. package/lib/app-data/state/view/getEmptyAppView.js +1 -2
  113. package/lib/app-data/state/view/getEmptyAppView.js.map +1 -1
  114. package/lib/app-data/utils.js +1 -2
  115. package/lib/app-data/utils.js.map +1 -1
  116. package/lib/components/accordion/Accordion.d.ts +2 -2
  117. package/lib/components/accordion/Accordion.d.ts.map +1 -1
  118. package/lib/components/accordion/Accordion.js +2 -3
  119. package/lib/components/accordion/Accordion.js.map +1 -1
  120. package/lib/components/accordion/AccordionContext.js +3 -4
  121. package/lib/components/accordion/AccordionContext.js.map +1 -1
  122. package/lib/components/button/Button.js +1 -2
  123. package/lib/components/button/Button.js.map +1 -1
  124. package/lib/components/color-picker/color-picker-dropdown/ColorPickerDropdown.js +1 -2
  125. package/lib/components/color-picker/color-picker-dropdown/ColorPickerDropdown.js.map +1 -1
  126. package/lib/components/color-picker/gradient-select/GradientSelect.js +2 -2
  127. package/lib/components/color-picker/gradient-select/GradientSelect.js.map +1 -1
  128. package/lib/components/color-picker/preview/ColorPreview.js +1 -2
  129. package/lib/components/color-picker/preview/ColorPreview.js.map +1 -1
  130. package/lib/components/color-picker/preview/FixedColorPreview.js +1 -1
  131. package/lib/components/color-picker/preview/FixedColorPreview.js.map +1 -1
  132. package/lib/components/color-picker/preview/FixedGradientPreview.js +1 -1
  133. package/lib/components/color-picker/preview/FixedGradientPreview.js.map +1 -1
  134. package/lib/components/color-picker/react-color/ColorPicker.js +1 -2
  135. package/lib/components/color-picker/react-color/ColorPicker.js.map +1 -1
  136. package/lib/components/color-picker/react-color/common/useOnChange.js +1 -2
  137. package/lib/components/color-picker/react-color/common/useOnChange.js.map +1 -1
  138. package/lib/components/color-picker/react-color/helpers/alpha.js +1 -2
  139. package/lib/components/color-picker/react-color/helpers/alpha.js.map +1 -1
  140. package/lib/components/color-picker/react-color/helpers/checkBoard.js +2 -3
  141. package/lib/components/color-picker/react-color/helpers/checkBoard.js.map +1 -1
  142. package/lib/components/color-picker/react-color/helpers/color.js +6 -6
  143. package/lib/components/color-picker/react-color/helpers/color.js.map +1 -1
  144. package/lib/components/color-picker/react-color/helpers/hue.js +1 -2
  145. package/lib/components/color-picker/react-color/helpers/hue.js.map +1 -1
  146. package/lib/components/color-picker/react-color/helpers/saturation.js +1 -2
  147. package/lib/components/color-picker/react-color/helpers/saturation.js.map +1 -1
  148. package/lib/components/dialog/ConfirmDialog.js +4 -5
  149. package/lib/components/dialog/ConfirmDialog.js.map +1 -1
  150. package/lib/components/drop-zone/DropZone.d.ts +2 -2
  151. package/lib/components/drop-zone/DropZone.d.ts.map +1 -1
  152. package/lib/components/drop-zone/DropZone.js +2 -3
  153. package/lib/components/drop-zone/DropZone.js.map +1 -1
  154. package/lib/components/forms/radio-group/ButtonRadioItem.js +1 -2
  155. package/lib/components/forms/radio-group/ButtonRadioItem.js.map +1 -1
  156. package/lib/components/forms/radio-group/RadioGroup.js +1 -2
  157. package/lib/components/forms/radio-group/RadioGroup.js.map +1 -1
  158. package/lib/components/forms/utils/SubText.js +1 -2
  159. package/lib/components/forms/utils/SubText.js.map +1 -1
  160. package/lib/components/fullscreen/fullscreen_context.d.ts +10 -0
  161. package/lib/components/fullscreen/fullscreen_context.d.ts.map +1 -0
  162. package/lib/components/fullscreen/fullscreen_context.js +16 -0
  163. package/lib/components/fullscreen/fullscreen_context.js.map +1 -0
  164. package/lib/components/fullscreen/fullscreen_context.provider.d.ts +7 -0
  165. package/lib/components/fullscreen/fullscreen_context.provider.d.ts.map +1 -0
  166. package/lib/components/fullscreen/{FullscreenContext.js → fullscreen_context.provider.js} +5 -16
  167. package/lib/components/fullscreen/fullscreen_context.provider.js.map +1 -0
  168. package/lib/components/fullscreen/{FullscreenToolbarButton.d.ts → fullscreen_toolbar_button.d.ts} +1 -1
  169. package/lib/components/fullscreen/fullscreen_toolbar_button.d.ts.map +1 -0
  170. package/lib/components/fullscreen/{FullscreenToolbarButton.js → fullscreen_toolbar_button.js} +4 -5
  171. package/lib/components/fullscreen/fullscreen_toolbar_button.js.map +1 -0
  172. package/lib/components/fullscreen/index.d.ts +3 -2
  173. package/lib/components/fullscreen/index.d.ts.map +1 -1
  174. package/lib/components/fullscreen/index.js +3 -2
  175. package/lib/components/fullscreen/index.js.map +1 -1
  176. package/lib/components/header/Header.js +1 -2
  177. package/lib/components/header/Header.js.map +1 -1
  178. package/lib/components/header/PanelHeader.js +1 -2
  179. package/lib/components/header/PanelHeader.js.map +1 -1
  180. package/lib/components/hooks/useDoubleClick.js +1 -2
  181. package/lib/components/hooks/useDoubleClick.js.map +1 -1
  182. package/lib/components/hooks/useHashSearchParams.js +1 -2
  183. package/lib/components/hooks/useHashSearchParams.js.map +1 -1
  184. package/lib/components/hooks/useModifiedPopper.js +1 -2
  185. package/lib/components/hooks/useModifiedPopper.js.map +1 -1
  186. package/lib/components/hooks/useOnClickOutside.js +3 -4
  187. package/lib/components/hooks/useOnClickOutside.js.map +1 -1
  188. package/lib/components/hooks/useOnOff.js +1 -2
  189. package/lib/components/hooks/useOnOff.js.map +1 -1
  190. package/lib/components/hooks/useSelect.d.ts +5 -5
  191. package/lib/components/hooks/useSelect.d.ts.map +1 -1
  192. package/lib/components/hooks/useSelect.js +1 -2
  193. package/lib/components/hooks/useSelect.js.map +1 -1
  194. package/lib/components/hooks/useToggle.js +1 -2
  195. package/lib/components/hooks/useToggle.js.map +1 -1
  196. package/lib/components/info-panel/InfoPanel.d.ts.map +1 -1
  197. package/lib/components/info-panel/InfoPanel.js +25 -21
  198. package/lib/components/info-panel/InfoPanel.js.map +1 -1
  199. package/lib/components/logger/FifoLoggerDialog.d.ts.map +1 -1
  200. package/lib/components/logger/FifoLoggerDialog.js +38 -11
  201. package/lib/components/logger/FifoLoggerDialog.js.map +1 -1
  202. package/lib/components/logger/FifoLoggerProvider.js +1 -2
  203. package/lib/components/logger/FifoLoggerProvider.js.map +1 -1
  204. package/lib/components/logger/FifoLoggerToolbarItem.js +1 -2
  205. package/lib/components/logger/FifoLoggerToolbarItem.js.map +1 -1
  206. package/lib/components/logger/loggerContext.d.ts +0 -1
  207. package/lib/components/logger/loggerContext.d.ts.map +1 -1
  208. package/lib/components/logger/useFifoLogger.js +2 -3
  209. package/lib/components/logger/useFifoLogger.js.map +1 -1
  210. package/lib/components/root-layout/css-reset/customPreflight.d.ts +2 -3
  211. package/lib/components/root-layout/css-reset/customPreflight.d.ts.map +1 -1
  212. package/lib/components/root-layout/index.d.ts +1 -1
  213. package/lib/components/root-layout/index.d.ts.map +1 -1
  214. package/lib/components/root-layout/index.js +1 -1
  215. package/lib/components/root-layout/index.js.map +1 -1
  216. package/lib/components/root-layout/{queryClient.d.ts → query_client.d.ts} +1 -1
  217. package/lib/components/root-layout/query_client.d.ts.map +1 -0
  218. package/lib/components/root-layout/{queryClient.js → query_client.js} +1 -1
  219. package/lib/components/root-layout/query_client.js.map +1 -0
  220. package/lib/components/root-layout/{RootLayout.d.ts → root_layout.d.ts} +1 -1
  221. package/lib/components/root-layout/root_layout.d.ts.map +1 -0
  222. package/lib/components/root-layout/{RootLayout.js → root_layout.js} +5 -6
  223. package/lib/components/root-layout/root_layout.js.map +1 -0
  224. package/lib/components/root-layout/root_layout_context.d.ts +3 -0
  225. package/lib/components/root-layout/root_layout_context.d.ts.map +1 -0
  226. package/lib/components/root-layout/root_layout_context.js +11 -0
  227. package/lib/components/root-layout/root_layout_context.js.map +1 -0
  228. package/{lib-esm/components/root-layout/RootLayoutContext.d.ts → lib/components/root-layout/root_layout_context.provider.d.ts} +1 -2
  229. package/lib/components/root-layout/root_layout_context.provider.d.ts.map +1 -0
  230. package/lib/components/root-layout/root_layout_context.provider.js +9 -0
  231. package/lib/components/root-layout/root_layout_context.provider.js.map +1 -0
  232. package/lib/components/split-pane/SplitPane.d.ts +0 -1
  233. package/lib/components/split-pane/SplitPane.d.ts.map +1 -1
  234. package/lib/components/split-pane/SplitPane.js +1 -7
  235. package/lib/components/split-pane/SplitPane.js.map +1 -1
  236. package/lib/components/split-pane/useSplitPaneSize.js +1 -2
  237. package/lib/components/split-pane/useSplitPaneSize.js.map +1 -1
  238. package/lib/components/table/default_table_cell.d.ts +3 -0
  239. package/lib/components/table/default_table_cell.d.ts.map +1 -0
  240. package/lib/components/table/default_table_cell.js +46 -0
  241. package/lib/components/table/default_table_cell.js.map +1 -0
  242. package/lib/components/table/index.d.ts +2 -1
  243. package/lib/components/table/index.d.ts.map +1 -1
  244. package/lib/components/table/index.js +2 -1
  245. package/lib/components/table/index.js.map +1 -1
  246. package/lib/components/table/table_body.d.ts +11 -0
  247. package/lib/components/table/table_body.d.ts.map +1 -0
  248. package/lib/components/table/table_body.js +11 -0
  249. package/lib/components/table/table_body.js.map +1 -0
  250. package/lib/components/table/table_header.d.ts +8 -0
  251. package/lib/components/table/table_header.d.ts.map +1 -0
  252. package/lib/components/table/table_header.js +17 -0
  253. package/lib/components/table/table_header.js.map +1 -0
  254. package/lib/components/table/table_header_cell.d.ts +7 -0
  255. package/lib/components/table/table_header_cell.d.ts.map +1 -0
  256. package/lib/components/table/table_header_cell.js +22 -0
  257. package/lib/components/table/table_header_cell.js.map +1 -0
  258. package/lib/components/table/table_root.d.ts +18 -0
  259. package/lib/components/table/table_root.d.ts.map +1 -0
  260. package/lib/components/table/table_root.js +23 -0
  261. package/lib/components/table/table_root.js.map +1 -0
  262. package/lib/components/table/table_row.d.ts +8 -0
  263. package/lib/components/table/table_row.d.ts.map +1 -0
  264. package/lib/components/table/table_row.js +9 -0
  265. package/lib/components/table/table_row.js.map +1 -0
  266. package/lib/components/table/table_row_cell.d.ts +7 -0
  267. package/lib/components/table/table_row_cell.d.ts.map +1 -0
  268. package/lib/components/table/table_row_cell.js +10 -0
  269. package/lib/components/table/table_row_cell.js.map +1 -0
  270. package/lib/components/table/table_utils.d.ts +6 -0
  271. package/lib/components/table/table_utils.d.ts.map +1 -0
  272. package/lib/components/table/table_utils.js +8 -0
  273. package/lib/components/table/table_utils.js.map +1 -0
  274. package/lib/components/table/use_table_columns.d.ts +4 -0
  275. package/lib/components/table/use_table_columns.d.ts.map +1 -0
  276. package/lib/components/table/use_table_columns.js +17 -0
  277. package/lib/components/table/use_table_columns.js.map +1 -0
  278. package/lib/components/toolbar/PanelPreferencesToolbar.d.ts +2 -2
  279. package/lib/components/toolbar/PanelPreferencesToolbar.d.ts.map +1 -1
  280. package/lib/components/toolbar/PanelPreferencesToolbar.js +1 -2
  281. package/lib/components/toolbar/PanelPreferencesToolbar.js.map +1 -1
  282. package/lib/components/toolbar/Toolbar.d.ts +2 -2
  283. package/lib/components/toolbar/Toolbar.d.ts.map +1 -1
  284. package/lib/components/toolbar/Toolbar.js +3 -4
  285. package/lib/components/toolbar/Toolbar.js.map +1 -1
  286. package/lib/components/toolbar/TooltipHelpContent.js +1 -2
  287. package/lib/components/toolbar/TooltipHelpContent.js.map +1 -1
  288. package/lib/components/toolbar/toolbarContext.d.ts +0 -1
  289. package/lib/components/toolbar/toolbarContext.d.ts.map +1 -1
  290. package/lib/components/toolbar/toolbarContext.js +2 -2
  291. package/lib/components/toolbar/toolbarContext.js.map +1 -1
  292. package/lib/components/utils/assert.js +3 -4
  293. package/lib/components/utils/assert.js.map +1 -1
  294. package/lib/components/value-renderers/Boolean.js +1 -2
  295. package/lib/components/value-renderers/Boolean.js.map +1 -1
  296. package/lib/components/value-renderers/Color.js +1 -2
  297. package/lib/components/value-renderers/Color.js.map +1 -1
  298. package/lib/components/value-renderers/Component.js +1 -2
  299. package/lib/components/value-renderers/Component.js.map +1 -1
  300. package/lib/components/value-renderers/Number.js +1 -2
  301. package/lib/components/value-renderers/Number.js.map +1 -1
  302. package/lib/components/value-renderers/ObjectRenderer.js +1 -2
  303. package/lib/components/value-renderers/ObjectRenderer.js.map +1 -1
  304. package/lib/components/value-renderers/Text.js +1 -2
  305. package/lib/components/value-renderers/Text.js.map +1 -1
  306. package/lib/components/value-renderers/Title.js +1 -2
  307. package/lib/components/value-renderers/Title.js.map +1 -1
  308. package/lib/components/value-renderers/index.d.ts +0 -1
  309. package/lib/components/value-renderers/index.d.ts.map +1 -1
  310. package/lib/components/value-renderers/index.js +1 -3
  311. package/lib/components/value-renderers/index.js.map +1 -1
  312. package/lib-esm/app/about/AboutDialogToolbarButton.d.ts +2 -2
  313. package/lib-esm/app/about/AboutDialogToolbarButton.d.ts.map +1 -1
  314. package/lib-esm/app/kinds/ir/IrPeaksPanel.d.ts.map +1 -1
  315. package/lib-esm/app/kinds/ir/IrPeaksPanel.js +9 -20
  316. package/lib-esm/app/kinds/ir/IrPeaksPanel.js.map +1 -1
  317. package/lib-esm/app/kinds/iv/plot-view/IvMeasurementsPlot.d.ts.map +1 -1
  318. package/lib-esm/app/kinds/iv/plot-view/IvMeasurementsPlot.js.map +1 -1
  319. package/lib-esm/app/kinds/mass/MeasurementMassPlot.d.ts.map +1 -1
  320. package/lib-esm/app/kinds/mass/MeasurementMassPlot.js +2 -3
  321. package/lib-esm/app/kinds/mass/MeasurementMassPlot.js.map +1 -1
  322. package/lib-esm/app/panels/SignalProcessingPanel.d.ts.map +1 -1
  323. package/lib-esm/app/panels/SignalProcessingPanel.js +54 -29
  324. package/lib-esm/app/panels/SignalProcessingPanel.js.map +1 -1
  325. package/lib-esm/app/panels/measurements/MeasurementsTable.d.ts.map +1 -1
  326. package/lib-esm/app/panels/measurements/MeasurementsTable.js +7 -7
  327. package/lib-esm/app/panels/measurements/MeasurementsTable.js.map +1 -1
  328. package/lib-esm/app/panels/measurements/measurementPanelContext.d.ts +2 -2
  329. package/lib-esm/app/panels/measurements/measurementPanelContext.d.ts.map +1 -1
  330. package/lib-esm/app/panels/measurements/measurementPanelContext.js.map +1 -1
  331. package/lib-esm/app-data/loaders/proprietary/agilent/cary500Loader.js +1 -1
  332. package/lib-esm/app-data/loaders/proprietary/agilent/cary500Loader.js.map +1 -1
  333. package/lib-esm/app-data/state/data/data.helpers.d.ts +1 -1
  334. package/lib-esm/app-data/state/data/data.helpers.d.ts.map +1 -1
  335. package/lib-esm/app-data/state/data/kinds.d.ts +1 -1
  336. package/lib-esm/app-data/state/data/kinds.d.ts.map +1 -1
  337. package/lib-esm/components/accordion/Accordion.d.ts +2 -2
  338. package/lib-esm/components/accordion/Accordion.d.ts.map +1 -1
  339. package/lib-esm/components/accordion/Accordion.js +1 -1
  340. package/lib-esm/components/accordion/Accordion.js.map +1 -1
  341. package/lib-esm/components/dialog/ConfirmDialog.js +1 -1
  342. package/lib-esm/components/dialog/ConfirmDialog.js.map +1 -1
  343. package/lib-esm/components/drop-zone/DropZone.d.ts +2 -2
  344. package/lib-esm/components/drop-zone/DropZone.d.ts.map +1 -1
  345. package/lib-esm/components/fullscreen/fullscreen_context.d.ts +10 -0
  346. package/lib-esm/components/fullscreen/fullscreen_context.d.ts.map +1 -0
  347. package/lib-esm/components/fullscreen/fullscreen_context.js +12 -0
  348. package/lib-esm/components/fullscreen/fullscreen_context.js.map +1 -0
  349. package/lib-esm/components/fullscreen/fullscreen_context.provider.d.ts +7 -0
  350. package/lib-esm/components/fullscreen/fullscreen_context.provider.d.ts.map +1 -0
  351. package/lib-esm/components/fullscreen/{FullscreenContext.js → fullscreen_context.provider.js} +4 -13
  352. package/lib-esm/components/fullscreen/fullscreen_context.provider.js.map +1 -0
  353. package/lib-esm/components/fullscreen/{FullscreenToolbarButton.d.ts → fullscreen_toolbar_button.d.ts} +1 -1
  354. package/lib-esm/components/fullscreen/fullscreen_toolbar_button.d.ts.map +1 -0
  355. package/lib-esm/components/fullscreen/{FullscreenToolbarButton.js → fullscreen_toolbar_button.js} +2 -2
  356. package/lib-esm/components/fullscreen/fullscreen_toolbar_button.js.map +1 -0
  357. package/lib-esm/components/fullscreen/index.d.ts +3 -2
  358. package/lib-esm/components/fullscreen/index.d.ts.map +1 -1
  359. package/lib-esm/components/fullscreen/index.js +3 -2
  360. package/lib-esm/components/fullscreen/index.js.map +1 -1
  361. package/lib-esm/components/hooks/useOnClickOutside.js +1 -1
  362. package/lib-esm/components/hooks/useOnClickOutside.js.map +1 -1
  363. package/lib-esm/components/hooks/useSelect.d.ts +5 -5
  364. package/lib-esm/components/hooks/useSelect.d.ts.map +1 -1
  365. package/lib-esm/components/hooks/useSelect.js.map +1 -1
  366. package/lib-esm/components/info-panel/InfoPanel.d.ts.map +1 -1
  367. package/lib-esm/components/info-panel/InfoPanel.js +19 -14
  368. package/lib-esm/components/info-panel/InfoPanel.js.map +1 -1
  369. package/lib-esm/components/logger/FifoLoggerDialog.d.ts.map +1 -1
  370. package/lib-esm/components/logger/FifoLoggerDialog.js +36 -8
  371. package/lib-esm/components/logger/FifoLoggerDialog.js.map +1 -1
  372. package/lib-esm/components/logger/loggerContext.d.ts +0 -1
  373. package/lib-esm/components/logger/loggerContext.d.ts.map +1 -1
  374. package/lib-esm/components/root-layout/css-reset/customPreflight.d.ts +2 -3
  375. package/lib-esm/components/root-layout/css-reset/customPreflight.d.ts.map +1 -1
  376. package/lib-esm/components/root-layout/index.d.ts +1 -1
  377. package/lib-esm/components/root-layout/index.d.ts.map +1 -1
  378. package/lib-esm/components/root-layout/index.js +1 -1
  379. package/lib-esm/components/root-layout/index.js.map +1 -1
  380. package/lib-esm/components/root-layout/{queryClient.d.ts → query_client.d.ts} +1 -1
  381. package/lib-esm/components/root-layout/query_client.d.ts.map +1 -0
  382. package/lib-esm/components/root-layout/{queryClient.js → query_client.js} +1 -1
  383. package/lib-esm/components/root-layout/query_client.js.map +1 -0
  384. package/lib-esm/components/root-layout/{RootLayout.d.ts → root_layout.d.ts} +1 -1
  385. package/lib-esm/components/root-layout/root_layout.d.ts.map +1 -0
  386. package/lib-esm/components/root-layout/{RootLayout.js → root_layout.js} +3 -3
  387. package/lib-esm/components/root-layout/root_layout.js.map +1 -0
  388. package/lib-esm/components/root-layout/root_layout_context.d.ts +3 -0
  389. package/lib-esm/components/root-layout/root_layout_context.d.ts.map +1 -0
  390. package/lib-esm/components/root-layout/root_layout_context.js +7 -0
  391. package/lib-esm/components/root-layout/root_layout_context.js.map +1 -0
  392. package/{lib/components/root-layout/RootLayoutContext.d.ts → lib-esm/components/root-layout/root_layout_context.provider.d.ts} +1 -2
  393. package/lib-esm/components/root-layout/root_layout_context.provider.d.ts.map +1 -0
  394. package/lib-esm/components/root-layout/root_layout_context.provider.js +6 -0
  395. package/lib-esm/components/root-layout/root_layout_context.provider.js.map +1 -0
  396. package/lib-esm/components/split-pane/SplitPane.d.ts +0 -1
  397. package/lib-esm/components/split-pane/SplitPane.d.ts.map +1 -1
  398. package/lib-esm/components/split-pane/SplitPane.js +1 -5
  399. package/lib-esm/components/split-pane/SplitPane.js.map +1 -1
  400. package/lib-esm/components/table/default_table_cell.d.ts +3 -0
  401. package/lib-esm/components/table/default_table_cell.d.ts.map +1 -0
  402. package/lib-esm/components/table/default_table_cell.js +20 -0
  403. package/lib-esm/components/table/default_table_cell.js.map +1 -0
  404. package/lib-esm/components/table/index.d.ts +2 -1
  405. package/lib-esm/components/table/index.d.ts.map +1 -1
  406. package/lib-esm/components/table/index.js +2 -1
  407. package/lib-esm/components/table/index.js.map +1 -1
  408. package/lib-esm/components/table/table_body.d.ts +11 -0
  409. package/lib-esm/components/table/table_body.d.ts.map +1 -0
  410. package/lib-esm/components/table/table_body.js +8 -0
  411. package/lib-esm/components/table/table_body.js.map +1 -0
  412. package/lib-esm/components/table/table_header.d.ts +8 -0
  413. package/lib-esm/components/table/table_header.d.ts.map +1 -0
  414. package/lib-esm/components/table/table_header.js +14 -0
  415. package/lib-esm/components/table/table_header.js.map +1 -0
  416. package/lib-esm/components/table/table_header_cell.d.ts +7 -0
  417. package/lib-esm/components/table/table_header_cell.d.ts.map +1 -0
  418. package/lib-esm/components/table/table_header_cell.js +19 -0
  419. package/lib-esm/components/table/table_header_cell.js.map +1 -0
  420. package/lib-esm/components/table/table_root.d.ts +18 -0
  421. package/lib-esm/components/table/table_root.d.ts.map +1 -0
  422. package/lib-esm/components/table/table_root.js +20 -0
  423. package/lib-esm/components/table/table_root.js.map +1 -0
  424. package/lib-esm/components/table/table_row.d.ts +8 -0
  425. package/lib-esm/components/table/table_row.d.ts.map +1 -0
  426. package/lib-esm/components/table/table_row.js +6 -0
  427. package/lib-esm/components/table/table_row.js.map +1 -0
  428. package/lib-esm/components/table/table_row_cell.d.ts +7 -0
  429. package/lib-esm/components/table/table_row_cell.d.ts.map +1 -0
  430. package/lib-esm/components/table/table_row_cell.js +7 -0
  431. package/lib-esm/components/table/table_row_cell.js.map +1 -0
  432. package/lib-esm/components/table/table_utils.d.ts +6 -0
  433. package/lib-esm/components/table/table_utils.d.ts.map +1 -0
  434. package/lib-esm/components/table/table_utils.js +5 -0
  435. package/lib-esm/components/table/table_utils.js.map +1 -0
  436. package/lib-esm/components/table/use_table_columns.d.ts +4 -0
  437. package/lib-esm/components/table/use_table_columns.d.ts.map +1 -0
  438. package/lib-esm/components/table/use_table_columns.js +14 -0
  439. package/lib-esm/components/table/use_table_columns.js.map +1 -0
  440. package/lib-esm/components/toolbar/PanelPreferencesToolbar.d.ts +2 -2
  441. package/lib-esm/components/toolbar/PanelPreferencesToolbar.d.ts.map +1 -1
  442. package/lib-esm/components/toolbar/PanelPreferencesToolbar.js.map +1 -1
  443. package/lib-esm/components/toolbar/Toolbar.d.ts +2 -2
  444. package/lib-esm/components/toolbar/Toolbar.d.ts.map +1 -1
  445. package/lib-esm/components/toolbar/Toolbar.js +2 -2
  446. package/lib-esm/components/toolbar/Toolbar.js.map +1 -1
  447. package/lib-esm/components/toolbar/toolbarContext.d.ts +0 -1
  448. package/lib-esm/components/toolbar/toolbarContext.d.ts.map +1 -1
  449. package/lib-esm/components/value-renderers/index.d.ts +0 -1
  450. package/lib-esm/components/value-renderers/index.d.ts.map +1 -1
  451. package/lib-esm/components/value-renderers/index.js +0 -1
  452. package/lib-esm/components/value-renderers/index.js.map +1 -1
  453. package/package.json +31 -31
  454. package/src/app/about/AboutDialogToolbarButton.tsx +2 -2
  455. package/src/app/kinds/ir/IrPeaksPanel.tsx +15 -51
  456. package/src/app/kinds/iv/plot-view/IvMeasurementsPlot.tsx +2 -1
  457. package/src/app/kinds/mass/MeasurementMassPlot.tsx +2 -3
  458. package/src/app/panels/SignalProcessingPanel.tsx +99 -82
  459. package/src/app/panels/measurements/MeasurementsTable.tsx +19 -21
  460. package/src/app/panels/measurements/measurementPanelContext.tsx +2 -2
  461. package/src/app-data/loaders/proprietary/agilent/cary500Loader.ts +1 -1
  462. package/src/components/accordion/Accordion.tsx +4 -6
  463. package/src/components/dialog/ConfirmDialog.tsx +1 -1
  464. package/src/components/drop-zone/DropZone.tsx +3 -3
  465. package/src/components/fullscreen/{FullscreenContext.tsx → fullscreen_context.provider.tsx} +5 -28
  466. package/src/components/fullscreen/fullscreen_context.ts +23 -0
  467. package/src/components/fullscreen/{FullscreenToolbarButton.tsx → fullscreen_toolbar_button.tsx} +1 -1
  468. package/src/components/fullscreen/index.ts +3 -2
  469. package/src/components/hooks/useOnClickOutside.ts +1 -1
  470. package/src/components/hooks/useSelect.tsx +11 -9
  471. package/src/components/info-panel/InfoPanel.tsx +34 -34
  472. package/src/components/logger/FifoLoggerDialog.tsx +60 -38
  473. package/src/components/root-layout/index.ts +1 -1
  474. package/src/components/root-layout/{RootLayout.tsx → root_layout.tsx} +2 -2
  475. package/src/components/root-layout/root_layout_context.provider.tsx +14 -0
  476. package/src/components/root-layout/root_layout_context.ts +12 -0
  477. package/src/components/split-pane/SplitPane.tsx +0 -8
  478. package/src/components/table/default_table_cell.tsx +20 -0
  479. package/src/components/table/index.ts +2 -1
  480. package/src/components/table/table_body.tsx +31 -0
  481. package/src/components/table/table_header.tsx +32 -0
  482. package/src/components/table/table_header_cell.tsx +38 -0
  483. package/src/components/table/table_root.tsx +77 -0
  484. package/src/components/table/table_row.tsx +14 -0
  485. package/src/components/table/table_row_cell.tsx +17 -0
  486. package/src/components/table/table_utils.ts +21 -0
  487. package/src/components/table/use_table_columns.ts +19 -0
  488. package/src/components/toolbar/PanelPreferencesToolbar.tsx +2 -1
  489. package/src/components/toolbar/Toolbar.tsx +6 -7
  490. package/src/components/value-renderers/index.ts +0 -2
  491. package/lib/components/fullscreen/FullscreenContext.d.ts +0 -14
  492. package/lib/components/fullscreen/FullscreenContext.d.ts.map +0 -1
  493. package/lib/components/fullscreen/FullscreenContext.js.map +0 -1
  494. package/lib/components/fullscreen/FullscreenToolbarButton.d.ts.map +0 -1
  495. package/lib/components/fullscreen/FullscreenToolbarButton.js.map +0 -1
  496. package/lib/components/root-layout/Portal.d.ts +0 -7
  497. package/lib/components/root-layout/Portal.d.ts.map +0 -1
  498. package/lib/components/root-layout/Portal.js +0 -14
  499. package/lib/components/root-layout/Portal.js.map +0 -1
  500. package/lib/components/root-layout/RootLayout.d.ts.map +0 -1
  501. package/lib/components/root-layout/RootLayout.js.map +0 -1
  502. package/lib/components/root-layout/RootLayoutContext.d.ts.map +0 -1
  503. package/lib/components/root-layout/RootLayoutContext.js +0 -17
  504. package/lib/components/root-layout/RootLayoutContext.js.map +0 -1
  505. package/lib/components/root-layout/queryClient.d.ts.map +0 -1
  506. package/lib/components/root-layout/queryClient.js.map +0 -1
  507. package/lib/components/table/Table.d.ts +0 -17
  508. package/lib/components/table/Table.d.ts.map +0 -1
  509. package/lib/components/table/Table.js +0 -39
  510. package/lib/components/table/Table.js.map +0 -1
  511. package/lib/components/table/TableHeader.d.ts +0 -5
  512. package/lib/components/table/TableHeader.d.ts.map +0 -1
  513. package/lib/components/table/TableHeader.js +0 -16
  514. package/lib/components/table/TableHeader.js.map +0 -1
  515. package/lib/components/table/TableRow.d.ts +0 -5
  516. package/lib/components/table/TableRow.d.ts.map +0 -1
  517. package/lib/components/table/TableRow.js +0 -44
  518. package/lib/components/table/TableRow.js.map +0 -1
  519. package/lib/components/table/tableContext.d.ts +0 -8
  520. package/lib/components/table/tableContext.d.ts.map +0 -1
  521. package/lib/components/table/tableContext.js +0 -11
  522. package/lib/components/table/tableContext.js.map +0 -1
  523. package/lib/components/value-renderers/Header.d.ts +0 -7
  524. package/lib/components/value-renderers/Header.d.ts.map +0 -1
  525. package/lib/components/value-renderers/Header.js +0 -15
  526. package/lib/components/value-renderers/Header.js.map +0 -1
  527. package/lib-esm/components/fullscreen/FullscreenContext.d.ts +0 -14
  528. package/lib-esm/components/fullscreen/FullscreenContext.d.ts.map +0 -1
  529. package/lib-esm/components/fullscreen/FullscreenContext.js.map +0 -1
  530. package/lib-esm/components/fullscreen/FullscreenToolbarButton.d.ts.map +0 -1
  531. package/lib-esm/components/fullscreen/FullscreenToolbarButton.js.map +0 -1
  532. package/lib-esm/components/root-layout/Portal.d.ts +0 -7
  533. package/lib-esm/components/root-layout/Portal.d.ts.map +0 -1
  534. package/lib-esm/components/root-layout/Portal.js +0 -10
  535. package/lib-esm/components/root-layout/Portal.js.map +0 -1
  536. package/lib-esm/components/root-layout/RootLayout.d.ts.map +0 -1
  537. package/lib-esm/components/root-layout/RootLayout.js.map +0 -1
  538. package/lib-esm/components/root-layout/RootLayoutContext.d.ts.map +0 -1
  539. package/lib-esm/components/root-layout/RootLayoutContext.js +0 -12
  540. package/lib-esm/components/root-layout/RootLayoutContext.js.map +0 -1
  541. package/lib-esm/components/root-layout/queryClient.d.ts.map +0 -1
  542. package/lib-esm/components/root-layout/queryClient.js.map +0 -1
  543. package/lib-esm/components/table/Table.d.ts +0 -17
  544. package/lib-esm/components/table/Table.d.ts.map +0 -1
  545. package/lib-esm/components/table/Table.js +0 -35
  546. package/lib-esm/components/table/Table.js.map +0 -1
  547. package/lib-esm/components/table/TableHeader.d.ts +0 -5
  548. package/lib-esm/components/table/TableHeader.d.ts.map +0 -1
  549. package/lib-esm/components/table/TableHeader.js +0 -12
  550. package/lib-esm/components/table/TableHeader.js.map +0 -1
  551. package/lib-esm/components/table/TableRow.d.ts +0 -5
  552. package/lib-esm/components/table/TableRow.d.ts.map +0 -1
  553. package/lib-esm/components/table/TableRow.js +0 -40
  554. package/lib-esm/components/table/TableRow.js.map +0 -1
  555. package/lib-esm/components/table/tableContext.d.ts +0 -8
  556. package/lib-esm/components/table/tableContext.d.ts.map +0 -1
  557. package/lib-esm/components/table/tableContext.js +0 -7
  558. package/lib-esm/components/table/tableContext.js.map +0 -1
  559. package/lib-esm/components/value-renderers/Header.d.ts +0 -7
  560. package/lib-esm/components/value-renderers/Header.d.ts.map +0 -1
  561. package/lib-esm/components/value-renderers/Header.js +0 -11
  562. package/lib-esm/components/value-renderers/Header.js.map +0 -1
  563. package/src/components/root-layout/Portal.tsx +0 -16
  564. package/src/components/root-layout/RootLayoutContext.tsx +0 -24
  565. package/src/components/table/Table.tsx +0 -70
  566. package/src/components/table/TableHeader.tsx +0 -24
  567. package/src/components/table/TableRow.tsx +0 -82
  568. package/src/components/table/tableContext.ts +0 -7
  569. package/src/components/value-renderers/Header.tsx +0 -18
  570. /package/src/components/root-layout/{queryClient.ts → query_client.ts} +0 -0
@@ -3,7 +3,6 @@ import { css } from '@emotion/react';
3
3
  import type {
4
4
  ReactElement,
5
5
  ReactNode,
6
- ReactFragment,
7
6
  MouseEvent as ReactMouseEvent,
8
7
  } from 'react';
9
8
  import { useCallback } from 'react';
@@ -14,7 +13,6 @@ export interface AccordionProps {
14
13
  children?:
15
14
  | Array<ReactElement<AccordionItemProps>>
16
15
  | ReactElement<AccordionItemProps>
17
- | ReactFragment
18
16
  | boolean
19
17
  | null;
20
18
  }
@@ -67,7 +65,7 @@ Accordion.Item = function AccordionItem(props: AccordionItemProps) {
67
65
  const { item, utils } = useAccordionContext(title, defaultOpened);
68
66
 
69
67
  const onClickHandle = useCallback(
70
- (event: ReactMouseEvent<HTMLButtonElement>) => {
68
+ (event: ReactMouseEvent<HTMLDivElement>) => {
71
69
  if (event.shiftKey) {
72
70
  utils.clear();
73
71
  } else {
@@ -85,9 +83,9 @@ Accordion.Item = function AccordionItem(props: AccordionItemProps) {
85
83
  flexDirection: 'column',
86
84
  }}
87
85
  >
88
- <button
86
+ <div
89
87
  onClick={onClickHandle}
90
- type="button"
88
+ role="button"
91
89
  style={{
92
90
  display: 'flex',
93
91
  alignItems: 'center',
@@ -106,7 +104,7 @@ Accordion.Item = function AccordionItem(props: AccordionItemProps) {
106
104
  {title}
107
105
  </div>
108
106
  {toolbar}
109
- </button>
107
+ </div>
110
108
  <div
111
109
  style={{
112
110
  display: item?.isOpen ? 'flex' : 'none',
@@ -7,7 +7,7 @@ import {
7
7
  } from '@blueprintjs/core';
8
8
  import { css } from '@emotion/react';
9
9
 
10
- import { Button } from '..';
10
+ import { Button } from '../button';
11
11
 
12
12
  interface ConfirmDialogProps extends Omit<DialogProps, 'isCloseButtonShown'> {
13
13
  onConfirm: () => void;
@@ -1,7 +1,7 @@
1
1
  import { Button, Colors, NonIdealState } from '@blueprintjs/core';
2
2
  import type { IconName } from '@blueprintjs/icons';
3
3
  import styled from '@emotion/styled';
4
- import { CSSProperties, MouseEventHandler } from 'react';
4
+ import { CSSProperties, MouseEventHandler, ReactElement } from 'react';
5
5
  import { DropzoneOptions, useDropzone } from 'react-dropzone';
6
6
  import tinycolor from 'tinycolor2';
7
7
 
@@ -59,7 +59,7 @@ export function DropZone(props: DropZoneProps) {
59
59
  }
60
60
 
61
61
  export interface DropZoneContainerProps extends DropZoneProps {
62
- children: JSX.Element | null;
62
+ children: ReactElement | null;
63
63
  }
64
64
 
65
65
  export function DropZoneContainer(props: DropZoneContainerProps) {
@@ -68,7 +68,7 @@ export function DropZoneContainer(props: DropZoneContainerProps) {
68
68
 
69
69
  function DropZoneContent(
70
70
  props: DropZoneProps & {
71
- children?: JSX.Element | null;
71
+ children?: ReactElement | null;
72
72
  onClick?: MouseEventHandler<HTMLDivElement>;
73
73
  emptyIcon?: IconName;
74
74
  emptyTitle?: string;
@@ -1,13 +1,7 @@
1
1
  /* eslint-disable no-alert */
2
- import {
3
- createContext,
4
- ReactNode,
5
- useContext,
6
- useEffect,
7
- useMemo,
8
- useReducer,
9
- useRef,
10
- } from 'react';
2
+ import { ReactNode, useEffect, useMemo, useReducer, useRef } from 'react';
3
+
4
+ import { fullscreenContext, useFullscreen } from './fullscreen_context';
11
5
 
12
6
  type ElementType = HTMLDivElement & {
13
7
  webkitRequestFullscreen(): Promise<void>;
@@ -20,24 +14,7 @@ type DocumentType = Document & {
20
14
  interface FullscreenProps {
21
15
  children: ReactNode;
22
16
  }
23
- interface FullscreenState {
24
- isFullScreen: boolean;
25
- }
26
-
27
- interface ContextType extends FullscreenState {
28
- toggle: () => void;
29
- }
30
- const fullscreenContextInit = {
31
- isFullScreen: false,
32
- toggle: () => {
33
- // empty
34
- },
35
- };
36
- const FullscreenContext = createContext<ContextType>(fullscreenContextInit);
37
17
 
38
- export function useFullscreen() {
39
- return useContext(FullscreenContext);
40
- }
41
18
  export function FullScreenProvider(props: FullscreenProps) {
42
19
  const [isFullScreen, toggle] = useReducer((value: boolean) => !value, false);
43
20
 
@@ -46,9 +23,9 @@ export function FullScreenProvider(props: FullscreenProps) {
46
23
  [isFullScreen, toggle],
47
24
  );
48
25
  return (
49
- <FullscreenContext.Provider value={value}>
26
+ <fullscreenContext.Provider value={value}>
50
27
  <FullscreenInner {...props} />
51
- </FullscreenContext.Provider>
28
+ </fullscreenContext.Provider>
52
29
  );
53
30
  }
54
31
  function FullscreenInner(props: FullscreenProps) {
@@ -0,0 +1,23 @@
1
+ import { createContext, useContext } from 'react';
2
+
3
+ interface FullscreenState {
4
+ isFullScreen: boolean;
5
+ }
6
+
7
+ interface ContextType extends FullscreenState {
8
+ toggle: () => void;
9
+ }
10
+ const fullscreenContextInit = {
11
+ isFullScreen: false,
12
+ toggle: () => {
13
+ // empty
14
+ },
15
+ };
16
+
17
+ export const fullscreenContext = createContext<ContextType>(
18
+ fullscreenContextInit,
19
+ );
20
+
21
+ export function useFullscreen() {
22
+ return useContext(fullscreenContext);
23
+ }
@@ -1,6 +1,6 @@
1
1
  import { Toolbar } from '../toolbar';
2
2
 
3
- import { useFullscreen } from './FullscreenContext';
3
+ import { useFullscreen } from './fullscreen_context';
4
4
 
5
5
  export function FullscreenToolbarButton() {
6
6
  const { toggle } = useFullscreen();
@@ -1,2 +1,3 @@
1
- export * from './FullscreenContext';
2
- export * from './FullscreenToolbarButton';
1
+ export * from './fullscreen_context';
2
+ export * from './fullscreen_context.provider';
3
+ export * from './fullscreen_toolbar_button';
@@ -1,6 +1,6 @@
1
1
  import { useEffect, RefObject } from 'react';
2
2
 
3
- import { useRootLayoutContext } from '../root-layout/RootLayoutContext';
3
+ import { useRootLayoutContext } from '../root-layout/root_layout_context';
4
4
 
5
5
  export function useOnClickOutside<T extends Node = Node>(
6
6
  ref: RefObject<T>,
@@ -9,28 +9,30 @@ type FilterType<SourceType, Type> = Pick<
9
9
  }[keyof SourceType]
10
10
  >;
11
11
 
12
- interface ItemOptions<T> {
12
+ interface UseSelectCommonOptions<T> {
13
13
  renderItem?: (item: T) => ReactNode;
14
14
  defaultSelectedItem?: T;
15
15
  }
16
16
 
17
- interface BaseOptions<T> extends ItemOptions<T> {
17
+ interface UseSelectBaseOptions<T> extends UseSelectCommonOptions<T> {
18
18
  itemTextKey: keyof FilterType<T, string>;
19
19
  }
20
20
 
21
- interface RenderOptions<T> extends ItemOptions<T> {
21
+ interface UseSelectRenderOptions<T> extends UseSelectCommonOptions<T> {
22
22
  getItemText: (item: T) => string;
23
23
  }
24
24
 
25
- type SelectOptions<T> = BaseOptions<T> | RenderOptions<T>;
25
+ export type UseSelectOptions<T> =
26
+ | UseSelectBaseOptions<T>
27
+ | UseSelectRenderOptions<T>;
26
28
 
27
29
  function isAccessLabelByKey<T>(
28
- options: SelectOptions<T>,
29
- ): options is BaseOptions<T> {
30
+ options: UseSelectOptions<T>,
31
+ ): options is UseSelectBaseOptions<T> {
30
32
  return 'itemTextKey' in options;
31
33
  }
32
34
 
33
- function getLabel<T>(item: T, options: SelectOptions<T>) {
35
+ function getLabel<T>(item: T, options: UseSelectOptions<T>) {
34
36
  const isAccessLByLabelKey = isAccessLabelByKey(options);
35
37
 
36
38
  if (!item || (isAccessLByLabelKey && !options.itemTextKey)) {
@@ -44,7 +46,7 @@ function getLabel<T>(item: T, options: SelectOptions<T>) {
44
46
  return options.getItemText(item);
45
47
  }
46
48
 
47
- export function useSelect<T>(options: SelectOptions<T>) {
49
+ export function useSelect<T>(options: UseSelectOptions<T>) {
48
50
  const { defaultSelectedItem = null } = options;
49
51
 
50
52
  const [value, setValue] = useState<T | null>(defaultSelectedItem);
@@ -86,7 +88,7 @@ export function useSelect<T>(options: SelectOptions<T>) {
86
88
  };
87
89
  }
88
90
 
89
- function getItemRenderer<T>(value: T, options: SelectOptions<T>) {
91
+ function getItemRenderer<T>(value: T, options: UseSelectOptions<T>) {
90
92
  const selectedLabel = getLabel(value, options);
91
93
 
92
94
  const render: ItemRenderer<T> = (
@@ -4,11 +4,12 @@ import { css } from '@emotion/react';
4
4
  import * as Collapsible from '@radix-ui/react-collapsible';
5
5
  import { CSSProperties, useCallback, useMemo, useState } from 'react';
6
6
 
7
- import { ValueRenderers } from '../index';
8
- import { Table } from '../table/Table';
7
+ import { createTableColumnHelper, Table } from '../table';
8
+ import * as ValueRenderers from '../value-renderers';
9
9
 
10
10
  export interface InfoPanelData {
11
11
  description: string;
12
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
12
13
  data: Record<string, string | number | object | boolean | any>;
13
14
  }
14
15
 
@@ -70,35 +71,51 @@ const style = {
70
71
  }),
71
72
  };
72
73
 
74
+ interface InfoPanelDatum {
75
+ parameter: string;
76
+ value: string | number | object;
77
+ }
78
+
79
+ const columnHelper = createTableColumnHelper<InfoPanelDatum>();
80
+ const columns = [
81
+ columnHelper.accessor('parameter', {
82
+ header: 'Parameter',
83
+ }),
84
+ columnHelper.accessor('value', {
85
+ header: 'Value',
86
+ cell: ({ getValue }) => valueCell(getValue()),
87
+ }),
88
+ ];
89
+
73
90
  export function InfoPanel(props: InfoPanelProps) {
74
91
  const [search, setSearch] = useState('');
75
92
  const { title = 'Information', data = [], titleStyle, inputStyle } = props;
76
93
  const viewData = useCallback(
77
94
  (data: Record<string, string | number | object>) => {
78
- const exactMatch: Array<[string, string | number | object]> = [];
79
- const startsWith: Array<[string, string | number | object]> = [];
80
- const includes: Array<[string, string | number | object]> = [];
81
- const valueContains: Array<[string, string | number | object]> = [];
95
+ const exactMatch: InfoPanelDatum[] = [];
96
+ const startsWith: InfoPanelDatum[] = [];
97
+ const includes: InfoPanelDatum[] = [];
98
+ const valueContains: InfoPanelDatum[] = [];
82
99
 
83
- for (const [key, value] of Object.entries(data).sort(([a], [b]) =>
100
+ for (const [parameter, value] of Object.entries(data).sort(([a], [b]) =>
84
101
  a.localeCompare(b),
85
102
  )) {
86
- const lowerKey = key.toLowerCase();
103
+ const lowerKey = parameter.toLowerCase();
87
104
  const lowerSearch = search.toLowerCase();
88
105
  if (lowerKey === lowerSearch) {
89
- exactMatch.push([key, value]);
106
+ exactMatch.push({ parameter, value });
90
107
  continue;
91
108
  }
92
109
  if (lowerKey.startsWith(lowerSearch)) {
93
- startsWith.push([key, value]);
110
+ startsWith.push({ parameter, value });
94
111
  continue;
95
112
  }
96
113
  if (lowerKey.includes(lowerSearch)) {
97
- includes.push([key, value]);
114
+ includes.push({ parameter, value });
98
115
  continue;
99
116
  }
100
117
  if (valueSearch(value, search)) {
101
- valueContains.push([key, value]);
118
+ valueContains.push({ parameter, value });
102
119
  continue;
103
120
  }
104
121
  }
@@ -109,7 +126,7 @@ export function InfoPanel(props: InfoPanelProps) {
109
126
  const { filteredData, total, count } = useMemo(() => {
110
127
  const filteredData: Array<
111
128
  Omit<InfoPanelData, 'data'> & {
112
- data: Array<[string, string | number | object]>;
129
+ data: InfoPanelDatum[];
113
130
  }
114
131
  > = [];
115
132
  let total = 0;
@@ -189,29 +206,12 @@ export function InfoPanel(props: InfoPanelProps) {
189
206
  </Collapsible.Trigger>
190
207
  <Collapsible.Content css={style.content}>
191
208
  <Table
209
+ data={data}
210
+ columns={columns}
192
211
  striped
193
- css={css({
194
- width: '100%',
195
- })}
212
+ tableProps={{ style: { width: '100%' } }}
196
213
  compact
197
- >
198
- <Table.Header>
199
- <ValueRenderers.Header value="Parameter" />
200
- <ValueRenderers.Header value="Value" />
201
- </Table.Header>
202
- {data.map(([key, value]) => (
203
- <Table.Row
204
- key={key}
205
- style={{
206
- height: '10px',
207
- padding: '0 !imporant',
208
- }}
209
- >
210
- <ValueRenderers.Text value={key} />
211
- {valueCell(value)}
212
- </Table.Row>
213
- ))}
214
- </Table>
214
+ />
215
215
  </Collapsible.Content>
216
216
  </Collapsible.Root>
217
217
  );
@@ -4,9 +4,16 @@ import { Dialog, DialogBody, DialogFooter } from '@blueprintjs/core';
4
4
  import { css } from '@emotion/react';
5
5
  import styled from '@emotion/styled';
6
6
  import type { LogEntry } from 'fifo-logger';
7
- import { CSSProperties } from 'react';
7
+ import { CSSProperties, useMemo } from 'react';
8
8
 
9
- import { Button, Table, useFifoLogger, ValueRenderers } from '../index';
9
+ import { Button } from '../button';
10
+ import {
11
+ createTableColumnHelper,
12
+ Table,
13
+ type TableRowTrPropsGetter,
14
+ } from '../table';
15
+
16
+ import { useFifoLogger } from './useFifoLogger';
10
17
 
11
18
  const ActionsFooter = styled.div`
12
19
  display: flex;
@@ -37,8 +44,54 @@ export interface FifoLoggerDialogProps {
37
44
  unseen: number;
38
45
  }
39
46
 
47
+ const columnHelper = createTableColumnHelper<LogEntry>();
48
+ function useColumns(unseen: number) {
49
+ return useMemo(
50
+ () => [
51
+ columnHelper.display({
52
+ header: '#',
53
+ cell: ({ row }) => {
54
+ return (
55
+ <RowIndexCell
56
+ pillColor={
57
+ row.index >= unseen
58
+ ? 'transparent'
59
+ : rowBackgroundColor[row.original.levelLabel]
60
+ }
61
+ >
62
+ {String(row.index + 1)}
63
+ </RowIndexCell>
64
+ );
65
+ },
66
+ }),
67
+ columnHelper.accessor('time', {
68
+ header: 'Time',
69
+ cell: ({ getValue }) => new Date(getValue()).toLocaleTimeString(),
70
+ }),
71
+ columnHelper.accessor('levelLabel', {
72
+ header: 'Level',
73
+ }),
74
+ columnHelper.accessor('message', {
75
+ header: 'Message',
76
+ }),
77
+ ],
78
+ [unseen],
79
+ );
80
+ }
81
+
82
+ const getRowTrProps: TableRowTrPropsGetter<LogEntry> = (row) => {
83
+ return {
84
+ style: {
85
+ backgroundColor: rowBackgroundColor[row.original.levelLabel],
86
+ },
87
+ };
88
+ };
89
+
40
90
  export function FifoLoggerDialog(props: FifoLoggerDialogProps) {
41
91
  const logger = useFifoLogger();
92
+
93
+ const columns = useColumns(props.unseen);
94
+
42
95
  return (
43
96
  <Dialog
44
97
  shouldReturnFocusOnClose={false}
@@ -55,44 +108,13 @@ export function FifoLoggerDialog(props: FifoLoggerDialogProps) {
55
108
  >
56
109
  <DialogBody>
57
110
  <Table
111
+ data={props.logs}
112
+ columns={columns}
58
113
  compact
59
114
  bordered
60
- css={css`
61
- width: 100%;
62
- `}
63
- >
64
- <Table.Header>
65
- <ValueRenderers.Header value="#" />
66
- <ValueRenderers.Header value="Time" />
67
- <ValueRenderers.Header value="Level" />
68
- <ValueRenderers.Header value="Message" />
69
- </Table.Header>
70
- {props.logs.map((logEntry, idx) => (
71
- <Table.Row
72
- key={logEntry.id}
73
- style={{
74
- backgroundColor: rowBackgroundColor[logEntry.levelLabel],
75
- }}
76
- >
77
- <ValueRenderers.Component>
78
- <RowIndexCell
79
- pillColor={
80
- idx >= props.unseen
81
- ? 'transparent'
82
- : rowBackgroundColor[logEntry.levelLabel]
83
- }
84
- >
85
- {String(idx + 1)}
86
- </RowIndexCell>
87
- </ValueRenderers.Component>
88
- <ValueRenderers.Text
89
- value={new Date(logEntry.time).toLocaleTimeString()}
90
- />
91
- <ValueRenderers.Text value={logEntry.levelLabel} />
92
- <ValueRenderers.Text value={logEntry.message} />
93
- </Table.Row>
94
- ))}
95
- </Table>
115
+ tableProps={{ style: { width: '100%' } }}
116
+ getRowTrProps={getRowTrProps}
117
+ />
96
118
  </DialogBody>
97
119
  <DialogFooter
98
120
  actions={
@@ -1 +1 @@
1
- export * from './RootLayout';
1
+ export * from './root_layout';
@@ -4,9 +4,9 @@ import { CSSProperties, ReactNode, useCallback, useState } from 'react';
4
4
 
5
5
  import { AccordionProvider } from '../accordion';
6
6
 
7
- import { RootLayoutProvider } from './RootLayoutContext';
8
7
  import { CustomDivPreflight } from './css-reset/customPreflight';
9
- import { queryClient } from './queryClient';
8
+ import { queryClient } from './query_client';
9
+ import { RootLayoutProvider } from './root_layout_context.provider';
10
10
 
11
11
  FocusStyleManager.onlyShowFocusOnTabs();
12
12
 
@@ -0,0 +1,14 @@
1
+ import { ReactNode } from 'react';
2
+
3
+ import { rootLayoutContext } from './root_layout_context';
4
+
5
+ export function RootLayoutProvider(props: {
6
+ children: ReactNode;
7
+ innerRef: HTMLElement | null;
8
+ }) {
9
+ return (
10
+ <rootLayoutContext.Provider value={props.innerRef}>
11
+ {props.children}
12
+ </rootLayoutContext.Provider>
13
+ );
14
+ }
@@ -0,0 +1,12 @@
1
+ import { createContext, useContext } from 'react';
2
+
3
+ const defaultPortalContext =
4
+ typeof document === 'undefined' ? null : document.body;
5
+
6
+ export const rootLayoutContext = createContext<HTMLElement | null>(
7
+ defaultPortalContext,
8
+ );
9
+
10
+ export function useRootLayoutContext() {
11
+ return useContext(rootLayoutContext);
12
+ }
@@ -2,10 +2,8 @@
2
2
  import { css } from '@emotion/react';
3
3
  import {
4
4
  PointerEvent as ReactPointerEvent,
5
- createContext,
6
5
  CSSProperties,
7
6
  ReactNode,
8
- useContext,
9
7
  useRef,
10
8
  useState,
11
9
  RefObject,
@@ -69,12 +67,6 @@ export interface SplitPaneProps {
69
67
  children: [ReactNode, ReactNode];
70
68
  }
71
69
 
72
- const splitPaneContext = createContext<boolean>(false);
73
-
74
- export function useSplitPaneContext() {
75
- return useContext(splitPaneContext);
76
- }
77
-
78
70
  export function SplitPane(props: SplitPaneProps) {
79
71
  const {
80
72
  direction = 'horizontal',
@@ -0,0 +1,20 @@
1
+ import type { CellContext, RowData } from '@tanstack/react-table';
2
+
3
+ import * as ValueRenderers from '../value-renderers';
4
+
5
+ // TODO: support Date
6
+ export function defaultTableCell<TData extends RowData, TValue = unknown>(
7
+ context: CellContext<TData, TValue>,
8
+ ) {
9
+ const value = context.getValue();
10
+ if (typeof value === 'string') {
11
+ return <ValueRenderers.Text value={value} />;
12
+ } else if (typeof value === 'number') {
13
+ return <ValueRenderers.Number value={value} />;
14
+ } else if (typeof value === 'boolean') {
15
+ return <ValueRenderers.Boolean value={value} />;
16
+ } else {
17
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
18
+ return <ValueRenderers.Text value={`${value}`} />;
19
+ }
20
+ }
@@ -1 +1,2 @@
1
- export * from './Table';
1
+ export * from './table_root';
2
+ export * from './table_utils';
@@ -0,0 +1,31 @@
1
+ import type { Row, RowData } from '@tanstack/react-table';
2
+ import type { HTMLAttributes } from 'react';
3
+
4
+ import { TableRow } from './table_row';
5
+ import { TableRowCell } from './table_row_cell';
6
+ import type { TableRowTrPropsGetter } from './table_utils';
7
+
8
+ export type TrPropsGetter = Omit<
9
+ HTMLAttributes<HTMLTableRowElement>,
10
+ 'children'
11
+ >;
12
+
13
+ interface TableBodyProps<TData extends RowData> {
14
+ rows: Array<Row<TData>>;
15
+ getRowTrProps?: TableRowTrPropsGetter<TData>;
16
+ }
17
+
18
+ export function TableBody<TData extends RowData>(props: TableBodyProps<TData>) {
19
+ const { rows, getRowTrProps } = props;
20
+ return (
21
+ <tbody>
22
+ {rows.map((row) => (
23
+ <TableRow key={row.id} trProps={getRowTrProps?.(row)}>
24
+ {row.getVisibleCells().map((cell) => (
25
+ <TableRowCell key={cell.id} cell={cell} />
26
+ ))}
27
+ </TableRow>
28
+ ))}
29
+ </tbody>
30
+ );
31
+ }
@@ -0,0 +1,32 @@
1
+ import type { Header, RowData } from '@tanstack/react-table';
2
+ import { CSSProperties } from 'react';
3
+
4
+ import { TableHeaderCell } from './table_header_cell';
5
+ import { TableRow } from './table_row';
6
+
7
+ const headerStyle: CSSProperties = {
8
+ position: 'sticky',
9
+ top: 0,
10
+ zIndex: 10,
11
+ backgroundColor: 'white',
12
+ };
13
+
14
+ interface TableHeaderProps<TData extends RowData> {
15
+ headers: Array<Header<TData, unknown>>;
16
+ sticky: boolean;
17
+ }
18
+
19
+ export function TableHeader<TData extends RowData>(
20
+ props: TableHeaderProps<TData>,
21
+ ) {
22
+ const { headers, sticky } = props;
23
+ return (
24
+ <thead style={sticky ? headerStyle : undefined}>
25
+ <TableRow>
26
+ {headers.map((header) => (
27
+ <TableHeaderCell key={header.id} header={header} />
28
+ ))}
29
+ </TableRow>
30
+ </thead>
31
+ );
32
+ }