Commit 4e487c2
committed
refactor(jobmonitor)!: virtualized DataTable split, SearchBar decomposition, context split, SWR tuning
Rework the Job Monitor stack end to end:
- split the monolithic shared/DataTable.tsx into a DataTable/ module
(DataTable, DataTableHeader, DataTableToolbar, SplitActionButton)
virtualized with @tanstack/react-virtual instead of react-virtuoso;
react-virtuoso is dropped from dependencies
- extract a reusable shared/PieChart component (with stories and a11y
legend tests) and a shared visuallyHidden helper
- decompose the SearchBar: state moves into a useSearchBarReducer,
URL/filter synchronisation into useFilterSync, and suggestion
fetching into useSearchSuggestions; equations gain stable ids and
the Operators.EGUALS typo becomes Operators.EQUALS
- restructure the Job Monitor: column definitions move to
jobColumns.tsx, per-application persistence to
useJobMonitorPersistence, and shared state to a JobMonitorContext;
jobDataService migrates to the services/fetcher client with SWR
keys tuned to avoid refetch storms
- finish the fetcher migration: hooks/utils.tsx loses the legacy
tuple-based fetcher (now services/client with named options and
abort support), hooks/metadata.tsx and the gubbins OwnerMonitor
consume the new client, and the package root exports the explicit
final API surface
- jest config/setup updated for react-virtual (structured-clone
ponyfill, layout mocks); e2e specs updated and a mobile viewport
spec added; next.config gains a services alias for dev HMR and the
app a test:headless script
BREAKING CHANGE: the tuple-based fetcher export is gone from
@dirac-grid/diracx-web-components/hooks; use the object-based fetcher
from @dirac-grid/diracx-web-components/services instead.
Operators.EGUALS is renamed Operators.EQUALS, and the DataTable API
changed with the module split.1 parent 8e25460 commit 4e487c2
60 files changed
Lines changed: 5019 additions & 2249 deletions
File tree
- packages
- diracx-web-components
- src
- components
- JobMonitor
- hooks
- types
- stories
- mocks
- test
- diracx-web
- test/e2e
- extensions
- src/gubbins/components/OwnerMonitor
- test/e2e
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
13 | 23 | | |
14 | 24 | | |
15 | 25 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
1 | 2 | | |
2 | 3 | | |
3 | | - | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
4 | 10 | | |
5 | | - | |
6 | | - | |
| 11 | + | |
| 12 | + | |
7 | 13 | | |
8 | 14 | | |
9 | 15 | | |
| |||
20 | 26 | | |
21 | 27 | | |
22 | 28 | | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
23 | 77 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
38 | | - | |
39 | | - | |
| 38 | + | |
| 39 | + | |
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
| |||
0 commit comments