You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: TODO_SPADAY.md
+14-2Lines changed: 14 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,8 +7,8 @@
7
7
The `<perspective-panel>` theme path currently:
8
8
9
9
1. calls `restore({theme})` for the element chrome and active panel;
10
-
2. calls `saveWorkspace()` to enumerate panels;
11
-
3. loops over every panel and awaits `restore({theme}, {panel})` sequentially.
10
+
1. calls `saveWorkspace()` to enumerate panels;
11
+
1. loops over every panel and awaits `restore({theme}, {panel})` sequentially.
12
12
13
13
Each restore restyles a Perspective plugin, so total latency grows with the number of tabs. Browser profiling against Perspective 5.2 showed a visibly delayed transition with eight panels. In one run, sequential completion took about 300 ms; issuing the panel restores with `Promise.all()` reduced it to about 150 ms. Exact timings vary with panel contents and render state.
14
14
@@ -18,3 +18,15 @@ Upstream action:
18
18
- After `saveWorkspace()`, restore background panel themes concurrently with `Promise.all()` rather than a serial `for ... of` loop.
19
19
- Verify concurrent restores remain safe while live tables update and while a layout replacement is queued.
20
20
- Add a multi-panel browser test that checks all saved panel themes after toggling the global theme.
21
+
22
+
## Bundle Perspective chart plugins
23
+
24
+
`spaday-perspective` 0.4.3 registers only the Datagrid plugin. A whole-element layout containing chart plugins such as `X Bar` or `Treemap` restores its geometry, but Perspective falls back to Datagrid for those panels because the requested plugins are unavailable.
25
+
26
+
csp-gateway temporarily works around this by building `spaday-charts.js` from `@perspective-dev/viewer-charts` and loading it as an additional Spaday component package. Remove that bundle and package registration once `spaday-perspective` provides chart plugins itself.
27
+
28
+
Upstream action:
29
+
30
+
- Bundle and register `@perspective-dev/viewer-charts` with `<perspective-panel>`, or expose a documented package/option that does so.
31
+
- Add a browser test that restores a multi-panel workspace containing Datagrid, `X Bar`, and `Treemap`, then verifies `saveWorkspace()` retains each requested plugin.
32
+
- Keep chart and Perspective viewer versions aligned so plugin registration uses the same Perspective runtime.
0 commit comments