react-science 19.11.0 → 20.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.
- package/lib/components/accordion/accordion.d.ts +2 -2
- package/lib/components/accordion/accordion.d.ts.map +1 -1
- package/lib/components/accordion/accordion_context_provider.d.ts +1 -1
- package/lib/components/accordion/accordion_context_provider.d.ts.map +1 -1
- package/lib/components/activity_bar/activity_bar.d.ts +2 -2
- package/lib/components/activity_bar/activity_bar.d.ts.map +1 -1
- package/lib/components/activity_bar/activity_bar.js +5 -1
- package/lib/components/activity_bar/activity_bar.js.map +1 -1
- package/lib/components/activity_panel/activity_panel.d.ts +2 -2
- package/lib/components/activity_panel/activity_panel.d.ts.map +1 -1
- package/lib/components/button/Button.d.ts +1 -1
- package/lib/components/button/Button.d.ts.map +1 -1
- package/lib/components/button/Button.js +30 -22
- package/lib/components/button/Button.js.map +1 -1
- package/lib/components/color-picker/color-picker-dropdown/ColorPickerDropdown.d.ts +3 -3
- package/lib/components/color-picker/color-picker-dropdown/ColorPickerDropdown.d.ts.map +1 -1
- package/lib/components/color-picker/color-picker-dropdown/ColorPickerDropdown.js +2 -2
- package/lib/components/color-picker/color-picker-dropdown/ColorPickerDropdown.js.map +1 -1
- package/lib/components/color-picker/gradient_select/gradient_select.d.ts +1 -1
- package/lib/components/color-picker/gradient_select/gradient_select.d.ts.map +1 -1
- package/lib/components/color-picker/gradient_select/gradient_select.js +1 -1
- package/lib/components/color-picker/gradient_select/gradient_select.js.map +1 -1
- package/lib/components/color-picker/preview/ColorPreview.d.ts +1 -1
- package/lib/components/color-picker/preview/ColorPreview.d.ts.map +1 -1
- package/lib/components/color-picker/preview/FixedColorPreview.d.ts +1 -1
- package/lib/components/color-picker/preview/FixedColorPreview.d.ts.map +1 -1
- package/lib/components/color-picker/preview/FixedGradientPreview.d.ts +1 -1
- package/lib/components/color-picker/preview/FixedGradientPreview.d.ts.map +1 -1
- package/lib/components/color-picker/react-color/ColorPicker.d.ts +1 -1
- package/lib/components/color-picker/react-color/ColorPicker.d.ts.map +1 -1
- package/lib/components/color-picker/react-color/ColorPicker.js +2 -2
- package/lib/components/color-picker/react-color/ColorPicker.js.map +1 -1
- package/lib/components/color-picker/react-color/common/Alpha.d.ts +1 -1
- package/lib/components/color-picker/react-color/common/Alpha.d.ts.map +1 -1
- package/lib/components/color-picker/react-color/common/CheckBoard.d.ts +1 -1
- package/lib/components/color-picker/react-color/common/CheckBoard.d.ts.map +1 -1
- package/lib/components/color-picker/react-color/common/EditableInput.d.ts +1 -1
- package/lib/components/color-picker/react-color/common/EditableInput.d.ts.map +1 -1
- package/lib/components/color-picker/react-color/common/Hue.d.ts +1 -1
- package/lib/components/color-picker/react-color/common/Hue.d.ts.map +1 -1
- package/lib/components/color-picker/react-color/common/Saturation.d.ts +1 -1
- package/lib/components/color-picker/react-color/common/Saturation.d.ts.map +1 -1
- package/lib/components/color-picker/react-color/sketch/SketchFields.d.ts +2 -2
- package/lib/components/color-picker/react-color/sketch/SketchFields.d.ts.map +1 -1
- package/lib/components/color-picker/react-color/sketch/SketchPresetColors.d.ts +1 -1
- package/lib/components/color-picker/react-color/sketch/SketchPresetColors.d.ts.map +1 -1
- package/lib/components/dialog/ConfirmDialog.d.ts +1 -1
- package/lib/components/dialog/ConfirmDialog.d.ts.map +1 -1
- package/lib/components/doi/doi.d.ts +1 -1
- package/lib/components/doi/doi.d.ts.map +1 -1
- package/lib/components/doi/doi_logo.d.ts +1 -1
- package/lib/components/doi/doi_logo.d.ts.map +1 -1
- package/lib/components/drop-zone/DropZone.d.ts +2 -2
- package/lib/components/drop-zone/DropZone.d.ts.map +1 -1
- package/lib/components/form/components/input/checkbox.d.ts +1 -1
- package/lib/components/form/components/input/checkbox.d.ts.map +1 -1
- package/lib/components/form/components/input/color_picker.d.ts +1 -1
- package/lib/components/form/components/input/color_picker.d.ts.map +1 -1
- package/lib/components/form/components/input/input.d.ts +1 -1
- package/lib/components/form/components/input/input.d.ts.map +1 -1
- package/lib/components/form/components/input/numeric_input.d.ts +1 -1
- package/lib/components/form/components/input/numeric_input.d.ts.map +1 -1
- package/lib/components/form/components/input/radio_group.d.ts +1 -1
- package/lib/components/form/components/input/radio_group.d.ts.map +1 -1
- package/lib/components/form/components/input/radio_group.js.map +1 -1
- package/lib/components/form/components/input/reset_button.d.ts +1 -1
- package/lib/components/form/components/input/reset_button.d.ts.map +1 -1
- package/lib/components/form/components/input/select.d.ts +1 -1
- package/lib/components/form/components/input/select.d.ts.map +1 -1
- package/lib/components/form/components/input/submit_button.d.ts +1 -1
- package/lib/components/form/components/input/submit_button.d.ts.map +1 -1
- package/lib/components/form/components/input/switch.d.ts +1 -1
- package/lib/components/form/components/input/switch.d.ts.map +1 -1
- package/lib/components/form/components/input_groups/form.d.ts +1 -1
- package/lib/components/form/components/input_groups/form.d.ts.map +1 -1
- package/lib/components/form/components/input_groups/form_group.d.ts +1 -1
- package/lib/components/form/components/input_groups/form_group.d.ts.map +1 -1
- package/lib/components/form/components/layout/Section.d.ts +1 -1
- package/lib/components/form/components/layout/Section.d.ts.map +1 -1
- package/lib/components/fullscreen/fullscreen_context.provider.d.ts +3 -3
- package/lib/components/fullscreen/fullscreen_context.provider.d.ts.map +1 -1
- package/lib/components/fullscreen/fullscreen_toolbar_button.d.ts +1 -1
- package/lib/components/fullscreen/fullscreen_toolbar_button.d.ts.map +1 -1
- package/lib/components/header/Header.d.ts +1 -1
- package/lib/components/header/Header.d.ts.map +1 -1
- package/lib/components/header/PanelHeader.d.ts +1 -1
- package/lib/components/header/PanelHeader.d.ts.map +1 -1
- package/lib/components/icon.d.ts +1 -1
- package/lib/components/icon.d.ts.map +1 -1
- package/lib/components/info-panel/InfoPanel.d.ts +1 -1
- package/lib/components/info-panel/InfoPanel.d.ts.map +1 -1
- package/lib/components/info-panel/InfoPanel.js +13 -10
- package/lib/components/info-panel/InfoPanel.js.map +1 -1
- package/lib/components/inline_editable_renderer/inline_editable_renderer.d.ts +1 -1
- package/lib/components/inline_editable_renderer/inline_editable_renderer.d.ts.map +1 -1
- package/lib/components/input/radio-button-group/RadioButton.d.ts +1 -1
- package/lib/components/input/radio-button-group/RadioButton.d.ts.map +1 -1
- package/lib/components/input/radio-button-group/RadioButtonGroup.d.ts +1 -1
- package/lib/components/input/radio-button-group/RadioButtonGroup.d.ts.map +1 -1
- package/lib/components/input/radio-button-group/RadioButtonGroup.js +5 -4
- package/lib/components/input/radio-button-group/RadioButtonGroup.js.map +1 -1
- package/lib/components/input/utils/SubText.d.ts +1 -1
- package/lib/components/input/utils/SubText.d.ts.map +1 -1
- package/lib/components/logger/FifoLoggerDialog.d.ts +1 -1
- package/lib/components/logger/FifoLoggerDialog.d.ts.map +1 -1
- package/lib/components/logger/FifoLoggerProvider.d.ts +1 -1
- package/lib/components/logger/FifoLoggerProvider.d.ts.map +1 -1
- package/lib/components/logger/FifoLoggerToolbarItem.d.ts +1 -1
- package/lib/components/logger/FifoLoggerToolbarItem.d.ts.map +1 -1
- package/lib/components/root-layout/root_layout.d.ts +1 -1
- package/lib/components/root-layout/root_layout.d.ts.map +1 -1
- package/lib/components/root-layout/root_layout.js +1 -2
- package/lib/components/root-layout/root_layout.js.map +1 -1
- package/lib/components/root-layout/root_layout_context.provider.d.ts +1 -1
- package/lib/components/root-layout/root_layout_context.provider.d.ts.map +1 -1
- package/lib/components/selected-total/SelectedTotal.d.ts +1 -1
- package/lib/components/selected-total/SelectedTotal.d.ts.map +1 -1
- package/lib/components/split_pane/split_pane.d.ts +1 -1
- package/lib/components/split_pane/split_pane.d.ts.map +1 -1
- package/lib/components/split_pane/use_split_pane_size.d.ts +1 -1
- package/lib/components/split_pane/use_split_pane_size.d.ts.map +1 -1
- package/lib/components/svg/styled/svg_styled_line.d.ts +1 -1
- package/lib/components/svg/styled/svg_styled_line.d.ts.map +1 -1
- package/lib/components/svg/styled/svg_styled_path.d.ts +1 -1
- package/lib/components/svg/styled/svg_styled_path.d.ts.map +1 -1
- package/lib/components/svg/styled/svg_styled_text.d.ts +1 -1
- package/lib/components/svg/styled/svg_styled_text.d.ts.map +1 -1
- package/lib/components/table/default_table_cell.d.ts +1 -1
- package/lib/components/table/default_table_cell.d.ts.map +1 -1
- package/lib/components/table/flash_row/flashed_row_provider.d.ts +1 -1
- package/lib/components/table/flash_row/flashed_row_provider.d.ts.map +1 -1
- package/lib/components/table/flash_row/use_flash_row_effect.d.ts +1 -1
- package/lib/components/table/flash_row/use_flash_row_effect.d.ts.map +1 -1
- package/lib/components/table/flash_row/use_flash_row_effect.js.map +1 -1
- package/lib/components/table/preview_table.d.ts +1 -1
- package/lib/components/table/preview_table.d.ts.map +1 -1
- package/lib/components/table/reorder_rows/draggable_row_context.d.ts +1 -1
- package/lib/components/table/reorder_rows/draggable_row_context.d.ts.map +1 -1
- package/lib/components/table/reorder_rows/draggable_row_tr.d.ts +1 -1
- package/lib/components/table/reorder_rows/draggable_row_tr.d.ts.map +1 -1
- package/lib/components/table/reorder_rows/draggable_row_tr.js.map +1 -1
- package/lib/components/table/reorder_rows/item_data.d.ts +1 -1
- package/lib/components/table/reorder_rows/item_data.d.ts.map +1 -1
- package/lib/components/table/reorder_rows/item_data.js.map +1 -1
- package/lib/components/table/reorder_rows/item_order_provider.d.ts +1 -1
- package/lib/components/table/reorder_rows/item_order_provider.d.ts.map +1 -1
- package/lib/components/table/reorder_rows/item_order_provider.js +10 -5
- package/lib/components/table/reorder_rows/item_order_provider.js.map +1 -1
- package/lib/components/table/reorder_rows/table_drag_row_handler.d.ts +1 -1
- package/lib/components/table/reorder_rows/table_drag_row_handler.d.ts.map +1 -1
- package/lib/components/table/reorder_rows/use_drop_monitor.d.ts +1 -1
- package/lib/components/table/reorder_rows/use_drop_monitor.d.ts.map +1 -1
- package/lib/components/table/reorder_rows/use_drop_monitor.js.map +1 -1
- package/lib/components/table/table_body.d.ts +1 -1
- package/lib/components/table/table_body.d.ts.map +1 -1
- package/lib/components/table/table_header.d.ts +1 -1
- package/lib/components/table/table_header.d.ts.map +1 -1
- package/lib/components/table/table_header_cell.d.ts +1 -1
- package/lib/components/table/table_header_cell.d.ts.map +1 -1
- package/lib/components/table/table_root.d.ts +2 -2
- package/lib/components/table/table_root.d.ts.map +1 -1
- package/lib/components/table/table_row.d.ts +3 -3
- package/lib/components/table/table_row.d.ts.map +1 -1
- package/lib/components/table/table_row.js.map +1 -1
- package/lib/components/table/table_row_cell.d.ts +1 -1
- package/lib/components/table/table_row_cell.d.ts.map +1 -1
- package/lib/components/table/table_scroll_container.d.ts +2 -2
- package/lib/components/table/table_scroll_container.d.ts.map +1 -1
- package/lib/components/table/use_table_scroll.d.ts +1 -1
- package/lib/components/table/use_table_scroll.d.ts.map +1 -1
- package/lib/components/toolbar/OverflowButton.d.ts +3 -3
- package/lib/components/toolbar/OverflowButton.d.ts.map +1 -1
- package/lib/components/toolbar/OverflowButton.js +2 -4
- package/lib/components/toolbar/OverflowButton.js.map +1 -1
- package/lib/components/toolbar/PanelPreferencesToolbar.d.ts +1 -1
- package/lib/components/toolbar/PanelPreferencesToolbar.d.ts.map +1 -1
- package/lib/components/toolbar/Toolbar.d.ts +8 -301
- package/lib/components/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/components/toolbar/Toolbar.js +13 -13
- package/lib/components/toolbar/Toolbar.js.map +1 -1
- package/lib/components/toolbar/TooltipHelpContent.d.ts +1 -1
- package/lib/components/toolbar/TooltipHelpContent.d.ts.map +1 -1
- package/lib/components/toolbar/useCheckOverflow.d.ts +2 -1
- package/lib/components/toolbar/useCheckOverflow.d.ts.map +1 -1
- package/lib/components/toolbar/useCheckOverflow.js.map +1 -1
- package/lib/components/value-renderers/Boolean.d.ts +1 -1
- package/lib/components/value-renderers/Boolean.d.ts.map +1 -1
- package/lib/components/value-renderers/Color.d.ts +1 -1
- package/lib/components/value-renderers/Color.d.ts.map +1 -1
- package/lib/components/value-renderers/Component.d.ts +1 -1
- package/lib/components/value-renderers/Component.d.ts.map +1 -1
- package/lib/components/value-renderers/Number.d.ts +1 -1
- package/lib/components/value-renderers/Number.d.ts.map +1 -1
- package/lib/components/value-renderers/ObjectRenderer.d.ts +1 -1
- package/lib/components/value-renderers/ObjectRenderer.d.ts.map +1 -1
- package/lib/components/value-renderers/Text.d.ts +1 -1
- package/lib/components/value-renderers/Text.d.ts.map +1 -1
- package/lib/components/value-renderers/Title.d.ts +1 -1
- package/lib/components/value-renderers/Title.d.ts.map +1 -1
- package/package.json +48 -51
- package/src/components/activity_bar/activity_bar.tsx +5 -1
- package/src/components/button/Button.tsx +39 -42
- package/src/components/color-picker/color-picker-dropdown/ColorPickerDropdown.tsx +8 -6
- package/src/components/color-picker/gradient_select/gradient_select.tsx +1 -1
- package/src/components/color-picker/react-color/ColorPicker.tsx +8 -4
- package/src/components/color-picker/react-color/sketch/SketchFields.tsx +1 -1
- package/src/components/form/components/input/radio_group.tsx +2 -2
- package/src/components/fullscreen/fullscreen_context.provider.tsx +2 -2
- package/src/components/info-panel/InfoPanel.tsx +13 -12
- package/src/components/input/radio-button-group/RadioButtonGroup.tsx +9 -4
- package/src/components/root-layout/root_layout.tsx +2 -4
- package/src/components/split_pane/split_pane.tsx +1 -1
- package/src/components/split_pane/use_split_pane_size.tsx +1 -1
- package/src/components/table/flash_row/use_flash_row_effect.ts +1 -1
- package/src/components/table/reorder_rows/draggable_row_context.ts +1 -1
- package/src/components/table/reorder_rows/draggable_row_tr.tsx +1 -1
- package/src/components/table/reorder_rows/item_data.ts +4 -1
- package/src/components/table/reorder_rows/item_order_provider.tsx +8 -6
- package/src/components/table/reorder_rows/use_drop_monitor.ts +1 -1
- package/src/components/table/table_root.tsx +1 -1
- package/src/components/table/table_row.tsx +3 -3
- package/src/components/table/table_scroll_container.tsx +3 -3
- package/src/components/table/use_table_scroll.ts +1 -1
- package/src/components/toolbar/OverflowButton.tsx +9 -10
- package/src/components/toolbar/Toolbar.tsx +36 -29
- package/src/components/toolbar/useCheckOverflow.tsx +2 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-science",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "20.0.0",
|
|
4
4
|
"description": "React components to build scientific applications UI",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"createData": "npm run prepack && node scripts/createData",
|
|
24
24
|
"dev": "echo Use npm run dev-app or npm run storybook && exit 1",
|
|
25
25
|
"dev-app": "vite --open /pages/demo.html",
|
|
26
|
-
"eslint": "eslint . --cache --max-warnings=
|
|
26
|
+
"eslint": "eslint . --cache --max-warnings=39",
|
|
27
27
|
"eslint-fix": "npm run eslint -- --fix",
|
|
28
28
|
"playwright": "npm run playwright-ct -- --project chromium && npm run playwright-e2e -- --project chromium",
|
|
29
29
|
"playwright-ct": "playwright test -c playwright-ct.config.mts",
|
|
@@ -48,22 +48,22 @@
|
|
|
48
48
|
},
|
|
49
49
|
"homepage": "https://github.com/zakodium-oss/react-science#readme",
|
|
50
50
|
"peerDependencies": {
|
|
51
|
-
"@blueprintjs/core": "^6.
|
|
52
|
-
"@blueprintjs/icons": "^6.
|
|
53
|
-
"@blueprintjs/select": "^6.
|
|
54
|
-
"fifo-logger": "^
|
|
55
|
-
"react": "
|
|
56
|
-
"react-dom": "
|
|
51
|
+
"@blueprintjs/core": "^6.16.0",
|
|
52
|
+
"@blueprintjs/icons": "^6.11.0",
|
|
53
|
+
"@blueprintjs/select": "^6.3.0",
|
|
54
|
+
"fifo-logger": "^2.0.1",
|
|
55
|
+
"react": "^19.2.7",
|
|
56
|
+
"react-dom": "^19.2.7"
|
|
57
57
|
},
|
|
58
58
|
"dependencies": {
|
|
59
|
-
"@atlaskit/pragmatic-drag-and-drop": "^1.8.
|
|
59
|
+
"@atlaskit/pragmatic-drag-and-drop": "^1.8.1",
|
|
60
60
|
"@atlaskit/pragmatic-drag-and-drop-auto-scroll": "^2.1.5",
|
|
61
|
-
"@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.
|
|
61
|
+
"@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.2.0",
|
|
62
62
|
"@emotion/styled": "^11.14.1",
|
|
63
|
-
"@radix-ui/react-use-controllable-state": "^1.2.
|
|
64
|
-
"@tanstack/react-form": "^1.
|
|
63
|
+
"@radix-ui/react-use-controllable-state": "^1.2.3",
|
|
64
|
+
"@tanstack/react-form": "^1.33.0",
|
|
65
65
|
"@tanstack/react-table": "^8.21.3",
|
|
66
|
-
"@tanstack/react-virtual": "^3.
|
|
66
|
+
"@tanstack/react-virtual": "^3.14.2",
|
|
67
67
|
"@zakodium/pdnd-esm": "^1.0.2",
|
|
68
68
|
"d3-scale-chromatic": "^3.1.0",
|
|
69
69
|
"react-d3-utils": "^3.1.2",
|
|
@@ -73,66 +73,63 @@
|
|
|
73
73
|
"react-inspector": "^9.0.0",
|
|
74
74
|
"tinycolor2": "^1.6.0",
|
|
75
75
|
"ts-pattern": "^5.9.0",
|
|
76
|
-
"zod": "^4.3
|
|
76
|
+
"zod": "^4.4.3"
|
|
77
77
|
},
|
|
78
78
|
"devDependencies": {
|
|
79
|
-
"@blueprintjs/core": "6.
|
|
80
|
-
"@blueprintjs/icons": "6.
|
|
81
|
-
"@blueprintjs/select": "6.
|
|
79
|
+
"@blueprintjs/core": "6.16.0",
|
|
80
|
+
"@blueprintjs/icons": "6.11.0",
|
|
81
|
+
"@blueprintjs/select": "6.3.0",
|
|
82
82
|
"@floating-ui/react": "^0.27.19",
|
|
83
|
-
"@playwright/experimental-ct-react": "^1.
|
|
84
|
-
"@playwright/test": "^1.
|
|
85
|
-
"@storybook/addon-docs": "^10.3
|
|
86
|
-
"@storybook/react-vite": "^10.3
|
|
87
|
-
"@tanstack/react-query": "^5.
|
|
83
|
+
"@playwright/experimental-ct-react": "^1.60.0",
|
|
84
|
+
"@playwright/test": "^1.60.0",
|
|
85
|
+
"@storybook/addon-docs": "^10.4.3",
|
|
86
|
+
"@storybook/react-vite": "^10.4.3",
|
|
87
|
+
"@tanstack/react-query": "^5.101.0",
|
|
88
88
|
"@types/babel__core": "^7.20.5",
|
|
89
89
|
"@types/d3-scale-chromatic": "^3.1.0",
|
|
90
|
-
"@types/node": "^24.
|
|
91
|
-
"@types/react": "^
|
|
92
|
-
"@types/react-dom": "^
|
|
90
|
+
"@types/node": "^24.13.1",
|
|
91
|
+
"@types/react": "^19.2.17",
|
|
92
|
+
"@types/react-dom": "^19.2.3",
|
|
93
93
|
"@types/tinycolor2": "^1.4.6",
|
|
94
|
-
"@vitejs/plugin-react": "^6.0.
|
|
95
|
-
"@vitest/coverage-v8": "^4.1.
|
|
94
|
+
"@vitejs/plugin-react": "^6.0.2",
|
|
95
|
+
"@vitest/coverage-v8": "^4.1.8",
|
|
96
96
|
"@zakodium/tsconfig": "^1.0.5",
|
|
97
97
|
"biologic-converter": "^1.0.0",
|
|
98
|
-
"cheminfo-font": "^1.
|
|
98
|
+
"cheminfo-font": "^1.27.0",
|
|
99
99
|
"cheminfo-types": "^1.15.0",
|
|
100
100
|
"cross-env": "^10.1.0",
|
|
101
|
-
"eslint": "^9.39.
|
|
101
|
+
"eslint": "^9.39.4",
|
|
102
102
|
"eslint-config-zakodium": "^20.0.0",
|
|
103
|
-
"eslint-plugin-storybook": "^10.3
|
|
104
|
-
"fifo-logger": "
|
|
103
|
+
"eslint-plugin-storybook": "^10.4.3",
|
|
104
|
+
"fifo-logger": "2.0.1",
|
|
105
105
|
"filelist-utils": "^1.11.3",
|
|
106
|
-
"immer": "^11.1.
|
|
107
|
-
"jcampconverter": "^12.
|
|
108
|
-
"ml-gsd": "^
|
|
109
|
-
"ml-peak-shape-generator": "^
|
|
110
|
-
"ml-signal-processing": "^2.2.
|
|
111
|
-
"ml-spectra-processing": "^14.
|
|
112
|
-
"ms-spectrum": "^3.10.
|
|
106
|
+
"immer": "^11.1.8",
|
|
107
|
+
"jcampconverter": "^12.3.3",
|
|
108
|
+
"ml-gsd": "^14.1.0",
|
|
109
|
+
"ml-peak-shape-generator": "^5.1.0",
|
|
110
|
+
"ml-signal-processing": "^2.2.1",
|
|
111
|
+
"ml-spectra-processing": "^14.29.0",
|
|
112
|
+
"ms-spectrum": "^3.10.1",
|
|
113
113
|
"netcdfjs": "^4.0.0",
|
|
114
114
|
"postcss-styled-syntax": "^0.7.1",
|
|
115
|
-
"prettier": "^3.8.
|
|
116
|
-
"react": "
|
|
117
|
-
"react-dom": "
|
|
118
|
-
"react-error-boundary": "^6.1.
|
|
115
|
+
"prettier": "^3.8.4",
|
|
116
|
+
"react": "19.2.7",
|
|
117
|
+
"react-dom": "19.2.7",
|
|
118
|
+
"react-error-boundary": "^6.1.2",
|
|
119
119
|
"react-kbs": "^3.1.0",
|
|
120
|
-
"react-ocl": "^8.7.
|
|
120
|
+
"react-ocl": "^8.7.1",
|
|
121
121
|
"react-plot": "^3.1.2",
|
|
122
122
|
"rimraf": "^6.1.3",
|
|
123
123
|
"spc-parser": "^2.0.0",
|
|
124
|
-
"storybook": "^10.3
|
|
125
|
-
"stylelint": "^17.
|
|
124
|
+
"storybook": "^10.4.3",
|
|
125
|
+
"stylelint": "^17.13.0",
|
|
126
126
|
"stylelint-config-standard": "^40.0.0",
|
|
127
127
|
"typescript": "^6.0.3",
|
|
128
|
-
"vite": "^8.0.
|
|
129
|
-
"vitest": "^4.1.
|
|
128
|
+
"vite": "^8.0.16",
|
|
129
|
+
"vitest": "^4.1.8",
|
|
130
130
|
"wdf-parser": "^1.0.0"
|
|
131
131
|
},
|
|
132
132
|
"volta": {
|
|
133
|
-
"node": "24.
|
|
134
|
-
},
|
|
135
|
-
"overrides": {
|
|
136
|
-
"storybook": "$storybook"
|
|
133
|
+
"node": "24.16.0"
|
|
137
134
|
}
|
|
138
135
|
}
|
|
@@ -43,8 +43,12 @@ export function ActivityBar(props: ActivityBarProps) {
|
|
|
43
43
|
const ActivityButton = styled(Button)`
|
|
44
44
|
font-size: 1.125em;
|
|
45
45
|
width: fit-content;
|
|
46
|
+
|
|
47
|
+
/* Override the padding set by the large button group */
|
|
48
|
+
padding: var(--bp-surface-spacing) calc(var(--bp-surface-spacing) * 2) !important;
|
|
49
|
+
|
|
46
50
|
.${Classes.ICON} {
|
|
47
|
-
color: ${Colors.DARK_GRAY3};
|
|
51
|
+
color: ${Colors.DARK_GRAY3} !important;
|
|
48
52
|
}
|
|
49
53
|
|
|
50
54
|
.${Classes.TAG} {
|
|
@@ -7,11 +7,10 @@ import type {
|
|
|
7
7
|
import {
|
|
8
8
|
AnchorButton,
|
|
9
9
|
Button as BlueprintButton,
|
|
10
|
-
|
|
10
|
+
Classes,
|
|
11
11
|
Tag,
|
|
12
12
|
Tooltip,
|
|
13
13
|
} from '@blueprintjs/core';
|
|
14
|
-
import type { CSSObject } from '@emotion/styled';
|
|
15
14
|
import styled from '@emotion/styled';
|
|
16
15
|
import type { ReactNode } from 'react';
|
|
17
16
|
|
|
@@ -41,21 +40,40 @@ const ButtonTag = styled(Tag)`
|
|
|
41
40
|
z-index: 20;
|
|
42
41
|
`;
|
|
43
42
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
43
|
+
interface InnerButtonProps {
|
|
44
|
+
isIconButton: boolean;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/*
|
|
48
|
+
Setting the line-height makes sure that when passing regular text in icons instead of an svg, they are vertically centered
|
|
49
|
+
max-width makes sure buttons with tag or hoverability indicator (both implying absolutely positioned elements) keep their intended width
|
|
50
|
+
When a button just has an icon, we override BP styles and remove the margin-right, because if it also has tag prop this is required to keep the layout correct.
|
|
51
|
+
*/
|
|
52
|
+
const buttonStyles = ({ isIconButton }: InnerButtonProps) => `
|
|
53
|
+
line-height: 1em;
|
|
54
|
+
position: relative;
|
|
55
|
+
max-width: ${isIconButton ? '30px' : 'none'};
|
|
56
|
+
|
|
57
|
+
& .${Classes.ICON} {
|
|
58
|
+
${isIconButton ? 'margin-right: 0px;' : ''}
|
|
59
|
+
}
|
|
60
|
+
`;
|
|
51
61
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
62
|
+
function shouldForwardButtonProp(propName: string) {
|
|
63
|
+
return propName !== 'isIconButton';
|
|
64
|
+
}
|
|
55
65
|
|
|
56
|
-
const
|
|
57
|
-
|
|
58
|
-
)
|
|
66
|
+
const TooltipAnchorButton = styled(AnchorButton, {
|
|
67
|
+
shouldForwardProp: shouldForwardButtonProp,
|
|
68
|
+
})<InnerButtonProps>`
|
|
69
|
+
${(props) => buttonStyles(props)}
|
|
70
|
+
`;
|
|
71
|
+
|
|
72
|
+
const TooltipButton = styled(BlueprintButton, {
|
|
73
|
+
shouldForwardProp: shouldForwardButtonProp,
|
|
74
|
+
})<InnerButtonProps>`
|
|
75
|
+
${(props) => buttonStyles(props)}
|
|
76
|
+
`;
|
|
59
77
|
|
|
60
78
|
export function Button(props: ButtonProps) {
|
|
61
79
|
const { tooltipProps = {}, children, tag, tagProps, ...buttonProps } = props;
|
|
@@ -80,34 +98,13 @@ export function Button(props: ButtonProps) {
|
|
|
80
98
|
<InnerButton
|
|
81
99
|
{...targetProps}
|
|
82
100
|
{...buttonProps}
|
|
83
|
-
|
|
84
|
-
/*
|
|
85
|
-
icon and children will be children of the same node.
|
|
86
|
-
Blueprintjs' stylesheet treats the presence of multiple child elements
|
|
87
|
-
as there being icon and text, styling the icon with a right margin
|
|
88
|
-
so that the text is not right next to it.
|
|
89
|
-
In blueprint alone, this only happens when the button has children.
|
|
90
|
-
Here, we need to handle the case when the button has a tag, which
|
|
91
|
-
adds a sibling but should not affect the margin on its own.
|
|
92
|
-
*/
|
|
93
|
-
tag ? (
|
|
94
|
-
<>
|
|
95
|
-
{children ? (
|
|
96
|
-
<Icon icon={buttonProps.icon} />
|
|
97
|
-
) : (
|
|
98
|
-
<div style={{ display: 'contents' }}>
|
|
99
|
-
<Icon icon={buttonProps.icon} />
|
|
100
|
-
</div>
|
|
101
|
-
)}
|
|
102
|
-
<ButtonTag round intent="success" {...tagProps}>
|
|
103
|
-
{tag}
|
|
104
|
-
</ButtonTag>
|
|
105
|
-
</>
|
|
106
|
-
) : (
|
|
107
|
-
buttonProps.icon
|
|
108
|
-
)
|
|
109
|
-
}
|
|
101
|
+
isIconButton={!children && !buttonProps.text}
|
|
110
102
|
>
|
|
103
|
+
{tag && (
|
|
104
|
+
<ButtonTag round intent="success" {...tagProps}>
|
|
105
|
+
{tag}
|
|
106
|
+
</ButtonTag>
|
|
107
|
+
)}
|
|
111
108
|
{children}
|
|
112
109
|
</InnerButton>
|
|
113
110
|
)}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { PopoverNextProps } from '@blueprintjs/core';
|
|
2
|
+
import { PopoverNext } from '@blueprintjs/core';
|
|
3
3
|
import styled from '@emotion/styled';
|
|
4
4
|
|
|
5
5
|
import FixedColorPreview from '../preview/FixedColorPreview.js';
|
|
@@ -16,7 +16,7 @@ export interface ColorPickerDropdownProps extends Pick<
|
|
|
16
16
|
| 'onChangeComplete'
|
|
17
17
|
| 'onBlur'
|
|
18
18
|
> {
|
|
19
|
-
popoverProps?: Omit<
|
|
19
|
+
popoverProps?: Omit<PopoverNextProps, 'content'>;
|
|
20
20
|
|
|
21
21
|
/**
|
|
22
22
|
* To link with label
|
|
@@ -45,10 +45,12 @@ export function ColorPickerDropdown(props: ColorPickerDropdownProps) {
|
|
|
45
45
|
const { hex } = colorHelper.toState(color || 'white');
|
|
46
46
|
|
|
47
47
|
return (
|
|
48
|
-
<
|
|
48
|
+
<PopoverNext
|
|
49
49
|
targetProps={{ style: { width: '100%' } }}
|
|
50
50
|
content={<ColorPicker color={color} {...otherProps} />}
|
|
51
|
-
|
|
51
|
+
shouldReturnFocusOnClose={false}
|
|
52
|
+
animation="minimal"
|
|
53
|
+
arrow={false}
|
|
52
54
|
{...popoverProps}
|
|
53
55
|
>
|
|
54
56
|
<ColorPickerRoot type="button" id={id}>
|
|
@@ -56,6 +58,6 @@ export function ColorPickerDropdown(props: ColorPickerDropdownProps) {
|
|
|
56
58
|
<FixedColorPreview color={hex} />
|
|
57
59
|
</ColorPickerPreview>
|
|
58
60
|
</ColorPickerRoot>
|
|
59
|
-
</
|
|
61
|
+
</PopoverNext>
|
|
60
62
|
);
|
|
61
63
|
}
|
|
@@ -6,6 +6,7 @@ import { defaultColorPalette } from '../palette.js';
|
|
|
6
6
|
|
|
7
7
|
import { Alpha, CheckBoard, Hue, Saturation } from './common/index.js';
|
|
8
8
|
import * as colorHelper from './helpers/color.js';
|
|
9
|
+
import type { SketchFieldsProps } from './sketch/SketchFields.js';
|
|
9
10
|
import SketchFields from './sketch/SketchFields.js';
|
|
10
11
|
import SketchPresetColors from './sketch/SketchPresetColors.js';
|
|
11
12
|
|
|
@@ -168,11 +169,14 @@ export function ColorPicker(props: ColorPickerProps) {
|
|
|
168
169
|
setState(colorHelper.toState(color, 0));
|
|
169
170
|
}
|
|
170
171
|
|
|
171
|
-
const handleChange = useCallback(
|
|
172
|
-
(data
|
|
172
|
+
const handleChange = useCallback<SketchFieldsProps['onChange']>(
|
|
173
|
+
(data, event) => {
|
|
173
174
|
const isValidColor = colorHelper.simpleCheckForValidColor(data);
|
|
174
175
|
if (isValidColor) {
|
|
175
|
-
const colors = colorHelper.toState(
|
|
176
|
+
const colors = colorHelper.toState(
|
|
177
|
+
data,
|
|
178
|
+
('h' in data && data.h) || state.oldHue,
|
|
179
|
+
);
|
|
176
180
|
setState(colors);
|
|
177
181
|
if (onChangeComplete) {
|
|
178
182
|
debounceRef.current(onChangeComplete, colors, event);
|
|
@@ -245,7 +249,7 @@ export function ColorPicker(props: ColorPickerProps) {
|
|
|
245
249
|
/>
|
|
246
250
|
<SketchPresetColors
|
|
247
251
|
colors={presetColors}
|
|
248
|
-
onClick={(data, e) => handleChange
|
|
252
|
+
onClick={(data, e) => handleChange(data, e)}
|
|
249
253
|
onSwatchHover={handleSwatchHover}
|
|
250
254
|
/>
|
|
251
255
|
</div>
|
|
@@ -5,7 +5,7 @@ import type { HSL, RGB } from '../ColorPicker.js';
|
|
|
5
5
|
import { EditableInput } from '../common/index.js';
|
|
6
6
|
import * as color from '../helpers/color.js';
|
|
7
7
|
|
|
8
|
-
interface SketchFieldsProps {
|
|
8
|
+
export interface SketchFieldsProps {
|
|
9
9
|
onChange: (
|
|
10
10
|
data: (RGB | HSL | { hex: string }) & { source: string },
|
|
11
11
|
e: Event,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { RadioGroupProps as BPRadioGroupProps } from '@blueprintjs/core';
|
|
2
2
|
import { RadioGroup as BPRadioGroup } from '@blueprintjs/core';
|
|
3
|
-
import type {
|
|
3
|
+
import type { ChangeEvent } from 'react';
|
|
4
4
|
|
|
5
5
|
import { useFieldContext } from '../../context/use_ts_form.ts';
|
|
6
6
|
import { useFormContext } from '../input_groups/form_context.ts';
|
|
@@ -41,7 +41,7 @@ export function RadioGroup(props: RadioGroupProps) {
|
|
|
41
41
|
.errors.map((e) => e.message)
|
|
42
42
|
.at(0);
|
|
43
43
|
|
|
44
|
-
function onChange(event:
|
|
44
|
+
function onChange(event: ChangeEvent<HTMLInputElement>) {
|
|
45
45
|
return field.handleChange(event.currentTarget.value);
|
|
46
46
|
}
|
|
47
47
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ReactNode, RefObject } from 'react';
|
|
2
2
|
import { useMemo } from 'react';
|
|
3
3
|
import { useFullScreenHandle } from 'react-full-screen';
|
|
4
4
|
|
|
@@ -9,7 +9,7 @@ export interface FullscreenProviderProps {
|
|
|
9
9
|
* Callback providing the ref which should be passed to the element that can be displayed fullscreen.
|
|
10
10
|
* @param ref
|
|
11
11
|
*/
|
|
12
|
-
children: (ref:
|
|
12
|
+
children: (ref: RefObject<HTMLDivElement | null>) => ReactNode;
|
|
13
13
|
/**
|
|
14
14
|
* Callback which will be called in case toggling results in an error.
|
|
15
15
|
* @param error - The error that happened. Value is not necessarily an instance of `Error` and may even be `undefined`.
|
|
@@ -277,19 +277,20 @@ function valueSearch(
|
|
|
277
277
|
search: string,
|
|
278
278
|
lowerCase = true,
|
|
279
279
|
): boolean {
|
|
280
|
+
let stringValue = match(value)
|
|
281
|
+
.with(P.boolean, String)
|
|
282
|
+
.with(P.number, String)
|
|
283
|
+
.with(P.string, (value) => {
|
|
284
|
+
return value === 'true' ? 'yes' : value === 'false' ? 'no' : value;
|
|
285
|
+
})
|
|
286
|
+
.with({}, (value) => JSON.stringify(value))
|
|
287
|
+
.otherwise(() => null);
|
|
288
|
+
if (stringValue === null) {
|
|
289
|
+
return true;
|
|
290
|
+
}
|
|
280
291
|
if (lowerCase) {
|
|
281
|
-
|
|
292
|
+
stringValue = stringValue.toLowerCase();
|
|
282
293
|
search = search.toLowerCase();
|
|
283
294
|
}
|
|
284
|
-
return
|
|
285
|
-
.with(P.boolean, (value) => String(value).includes(search))
|
|
286
|
-
.with(P.number, (value) => String(value).includes(search))
|
|
287
|
-
.with(P.string, (value) => {
|
|
288
|
-
const newValue =
|
|
289
|
-
value === 'true' ? 'yes' : value === 'false' ? 'no' : value;
|
|
290
|
-
|
|
291
|
-
return newValue.includes(search);
|
|
292
|
-
})
|
|
293
|
-
.with({}, (value) => JSON.stringify(value).includes(search))
|
|
294
|
-
.otherwise(() => true);
|
|
295
|
+
return stringValue.includes(search);
|
|
295
296
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { RadioGroupProps, RadioProps } from '@blueprintjs/core';
|
|
2
2
|
import { RadioGroup } from '@blueprintjs/core';
|
|
3
3
|
import styled from '@emotion/styled';
|
|
4
|
+
import type { ReactElement } from 'react';
|
|
4
5
|
import { Children, cloneElement } from 'react';
|
|
5
6
|
|
|
6
7
|
import { RadioButton } from './RadioButton.js';
|
|
@@ -68,13 +69,17 @@ export function RadioButtonGroup(props: RadioButtonGroupProps) {
|
|
|
68
69
|
return child;
|
|
69
70
|
}
|
|
70
71
|
if (child.type === RadioButton) {
|
|
71
|
-
|
|
72
|
-
|
|
72
|
+
const radioChild = child as ReactElement<
|
|
73
|
+
RadioProps,
|
|
74
|
+
typeof RadioButton
|
|
75
|
+
>;
|
|
76
|
+
return cloneElement(radioChild, {
|
|
77
|
+
...radioChild.props,
|
|
73
78
|
size,
|
|
74
79
|
name,
|
|
75
80
|
onChange,
|
|
76
|
-
checked:
|
|
77
|
-
disabled: groupDisabled ||
|
|
81
|
+
checked: radioChild.props.value === selectedValue,
|
|
82
|
+
disabled: groupDisabled || radioChild.props.disabled,
|
|
78
83
|
});
|
|
79
84
|
}
|
|
80
85
|
return child;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BlueprintProvider, FocusStyleManager } from '@blueprintjs/core';
|
|
2
|
-
import type { CSSProperties,
|
|
2
|
+
import type { CSSProperties, ReactNode } from 'react';
|
|
3
3
|
import { useCallback, useState } from 'react';
|
|
4
4
|
|
|
5
5
|
import { AccordionProvider } from '../accordion/index.js';
|
|
@@ -43,9 +43,7 @@ export function RootLayout(props: RootLayoutProps) {
|
|
|
43
43
|
id="root-layout"
|
|
44
44
|
ref={(node) => {
|
|
45
45
|
if (node) {
|
|
46
|
-
|
|
47
|
-
fullscreenRef as MutableRefObject<HTMLDivElement>;
|
|
48
|
-
mutableRef.current = node;
|
|
46
|
+
fullscreenRef.current = node;
|
|
49
47
|
refCallback(node);
|
|
50
48
|
}
|
|
51
49
|
}}
|
|
@@ -223,7 +223,7 @@ interface SplitterProps {
|
|
|
223
223
|
direction: SplitPaneDirection;
|
|
224
224
|
isOpen: boolean;
|
|
225
225
|
isResizing: boolean;
|
|
226
|
-
splitterRef: RefObject<HTMLDivElement>;
|
|
226
|
+
splitterRef: RefObject<HTMLDivElement | null>;
|
|
227
227
|
}
|
|
228
228
|
|
|
229
229
|
function Splitter(props: SplitterProps) {
|
|
@@ -12,7 +12,7 @@ import { serializeSize } from './split_pane_helpers.js';
|
|
|
12
12
|
interface UseSplitPaneSizeOptions {
|
|
13
13
|
controlledSide: SplitPaneSide;
|
|
14
14
|
direction: SplitPaneDirection;
|
|
15
|
-
splitterRef: RefObject<HTMLDivElement>;
|
|
15
|
+
splitterRef: RefObject<HTMLDivElement | null>;
|
|
16
16
|
sizeType: SplitPaneType;
|
|
17
17
|
onSizeChange: (newSize: ParsedSplitPaneSize) => void;
|
|
18
18
|
onResize?: (newSize: SplitPaneSize) => void;
|
|
@@ -6,7 +6,7 @@ import { useFlashedRowContext } from './flashed_row_context.js';
|
|
|
6
6
|
|
|
7
7
|
export function useFlashRowEffect(
|
|
8
8
|
id: string,
|
|
9
|
-
tableRowRef: RefObject<HTMLTableRowElement>,
|
|
9
|
+
tableRowRef: RefObject<HTMLTableRowElement | null>,
|
|
10
10
|
) {
|
|
11
11
|
const [flashedItemId, setFlashedItemId] = useFlashedRowContext();
|
|
12
12
|
useEffect(() => {
|
|
@@ -5,7 +5,7 @@ import type { DraggableItemState } from './item_data.js';
|
|
|
5
5
|
|
|
6
6
|
export interface DraggableRowContext {
|
|
7
7
|
state: DraggableItemState;
|
|
8
|
-
dragHandleRef: RefObject<HTMLButtonElement>;
|
|
8
|
+
dragHandleRef: RefObject<HTMLButtonElement | null>;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
export const draggableRowContext = createContext<DraggableRowContext | null>(
|
|
@@ -11,7 +11,10 @@ export interface ItemData {
|
|
|
11
11
|
[key: symbol]: unknown;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
export function getItemData(
|
|
14
|
+
export function getItemData<RowType>(
|
|
15
|
+
row: Row<RowType>,
|
|
16
|
+
instanceId: symbol,
|
|
17
|
+
): ItemData {
|
|
15
18
|
return {
|
|
16
19
|
[itemKey]: true,
|
|
17
20
|
id: row.id,
|
|
@@ -43,14 +43,16 @@ export function ItemOrderProvider<T = unknown>(
|
|
|
43
43
|
[items, onOrderChanged],
|
|
44
44
|
);
|
|
45
45
|
|
|
46
|
-
const value = useMemo(
|
|
47
|
-
|
|
46
|
+
const value = useMemo(() => {
|
|
47
|
+
// This assertion is necessary because the provider cannot contain the
|
|
48
|
+
// T type instantiated by this component.
|
|
49
|
+
const contextItems = items as Array<Row<unknown>>;
|
|
50
|
+
return {
|
|
48
51
|
reorderItem,
|
|
49
|
-
items:
|
|
52
|
+
items: contextItems,
|
|
50
53
|
instanceId,
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
);
|
|
54
|
+
};
|
|
55
|
+
}, [reorderItem, items, instanceId]);
|
|
54
56
|
|
|
55
57
|
return (
|
|
56
58
|
<itemOrderContext.Provider value={value}>
|
|
@@ -21,7 +21,7 @@ import { useItemOrder } from './item_order_context.js';
|
|
|
21
21
|
* @param enabled Enable or disable the monitoring.
|
|
22
22
|
*/
|
|
23
23
|
export function useDropMonitor(
|
|
24
|
-
scrollElementRef: RefObject<Element>,
|
|
24
|
+
scrollElementRef: RefObject<Element | null>,
|
|
25
25
|
enabled: boolean,
|
|
26
26
|
) {
|
|
27
27
|
const { reorderItem, items } = useItemOrder();
|
|
@@ -215,7 +215,7 @@ interface RegularTableProps<
|
|
|
215
215
|
* By default, the table itself is used as the scrollable element, but
|
|
216
216
|
* you must style it to make it scrollable.
|
|
217
217
|
*/
|
|
218
|
-
scrollableElementRef?: RefObject<Element>;
|
|
218
|
+
scrollableElementRef?: RefObject<Element | null>;
|
|
219
219
|
}
|
|
220
220
|
|
|
221
221
|
interface VirtualizedTableProps<
|
|
@@ -4,12 +4,12 @@ import { useRef } from 'react';
|
|
|
4
4
|
|
|
5
5
|
import { useFlashRowEffect } from './flash_row/use_flash_row_effect.js';
|
|
6
6
|
|
|
7
|
-
export interface TableRowTrProps {
|
|
8
|
-
row: Row<
|
|
7
|
+
export interface TableRowTrProps<RowType> {
|
|
8
|
+
row: Row<RowType>;
|
|
9
9
|
trProps: JSX.IntrinsicElements['tr'];
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
export function TableRowTr(props: TableRowTrProps) {
|
|
12
|
+
export function TableRowTr<RowType>(props: TableRowTrProps<RowType>) {
|
|
13
13
|
const { row, trProps } = props;
|
|
14
14
|
const tableRowRef = useRef<HTMLTableRowElement>(null);
|
|
15
15
|
useFlashRowEffect(row.id, tableRowRef);
|
|
@@ -28,7 +28,7 @@ interface ScrollContainerProps {
|
|
|
28
28
|
/**
|
|
29
29
|
* A ref to the effective scroll container.
|
|
30
30
|
*/
|
|
31
|
-
scrollRef: RefObject<Element>;
|
|
31
|
+
scrollRef: RefObject<Element | null>;
|
|
32
32
|
/**
|
|
33
33
|
* The user provided ref to attach the scroll callbacks to.
|
|
34
34
|
* It is set by the ScrollContainer component if the table is virtualized.
|
|
@@ -74,7 +74,7 @@ export function ScrollContainer(props: ScrollContainerProps) {
|
|
|
74
74
|
}
|
|
75
75
|
|
|
76
76
|
interface ContainerWithReorderingProps {
|
|
77
|
-
scrollElementRef: RefObject<Element>;
|
|
77
|
+
scrollElementRef: RefObject<Element | null>;
|
|
78
78
|
isReorderingEnabled: boolean;
|
|
79
79
|
children: ReactNode;
|
|
80
80
|
}
|
|
@@ -91,7 +91,7 @@ function ContainerVirtual(props: ContainerWithReorderingProps) {
|
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
interface NoContainerProps {
|
|
94
|
-
scrollElementRef: RefObject<Element>;
|
|
94
|
+
scrollElementRef: RefObject<Element | null>;
|
|
95
95
|
enabled: boolean;
|
|
96
96
|
children: ReactNode;
|
|
97
97
|
}
|