Skip to content

feat: DH-21757: WidgetPlugin support in deephaven.ui#1326

Draft
mofojed wants to merge 15 commits intodeephaven:mainfrom
mofojed:DH-21757-resolve-fixes
Draft

feat: DH-21757: WidgetPlugin support in deephaven.ui#1326
mofojed wants to merge 15 commits intodeephaven:mainfrom
mofojed:DH-21757-resolve-fixes

Conversation

@mofojed
Copy link
Copy Markdown
Member

@mofojed mofojed commented Mar 30, 2026

  • Needs fix: Fixes for nested dashboards/deephaven.ui web-client-ui#2648
  • WidgetPlugin just registers directly
    • Allows for nested ui.resolve deephaven.ui components
  • Still maintain DashboardPlugin to handle legacy behaviour
  • Works with the ui_home_screen, nested dashboards, etc
  • Styling a little bit different (ui.panel is automatically wrapped in a nested dashboard rather than opening up panels in the existing dashboard like before)
  • Dashboard now has a show_headers option that can be set to False to not show headers on a dashboard. Useful if you're doing a homescreen type dashboard

@mofojed mofojed requested a review from a team March 30, 2026 19:42
@mofojed mofojed self-assigned this Mar 30, 2026
@mofojed mofojed requested review from vbabich and removed request for a team March 30, 2026 19:42
@github-actions
Copy link
Copy Markdown

ui docs preview (Available for 14 days)

2 similar comments
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 2, 2026

ui docs preview (Available for 14 days)

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 2, 2026

ui docs preview (Available for 14 days)

@mofojed mofojed force-pushed the DH-21757-resolve-fixes branch from c2c29c8 to aa7c200 Compare April 6, 2026 17:09
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 6, 2026

ui docs preview (Available for 14 days)

2 similar comments
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 6, 2026

ui docs preview (Available for 14 days)

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 7, 2026

ui docs preview (Available for 14 days)

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 7, 2026

plotly-express docs preview (Available for 14 days)

1 similar comment
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 8, 2026

plotly-express docs preview (Available for 14 days)

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 8, 2026

ui docs preview (Available for 14 days)

@mofojed mofojed force-pushed the DH-21757-resolve-fixes branch from 24d99fc to f235a92 Compare April 9, 2026 14:07
@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 9, 2026

ui docs preview (Available for 14 days)

mofojed added 7 commits April 10, 2026 14:12
- Needs deephaven/web-client-ui#2648
- WidgetPlugin just registers directly
  - Allows for nested ui.resolve deephaven.ui components
- Still maintain DashboardPlugin to handle legacy behaviour
- Works with the ui_home_screen, nested dashboards, etc
- Styling a little bit different (ui.panel is automatically wrapped in a nested dashboard rather than opening up panels in the existing dashboard like before)
- Dashboard now has a `show_headers` option that can be set to False to not show headers on a dashboard. Useful if you're doing a homescreen type dashboard
- Add moduleNameMapper in jest.config.cjs to resolve React 18 from the
  plugin's local node_modules, fixing dual-React-instance errors
- Mock usePersistentState in @deephaven/plugin mock to avoid FiberProvider
  dependency in tests
- Update DocumentHandler test to reflect new behavior where non-layout
  children are rendered directly without ReactPanel wrapping
@mofojed mofojed force-pushed the DH-21757-resolve-fixes branch from f235a92 to d6cfcab Compare April 13, 2026 15:12
@github-actions
Copy link
Copy Markdown

ui docs preview (Available for 14 days)

@github-actions
Copy link
Copy Markdown

plotly-express docs preview (Available for 14 days)

@github-actions
Copy link
Copy Markdown

plotly-express docs preview (Available for 14 days)

@github-actions
Copy link
Copy Markdown

ui docs preview (Available for 14 days)

mofojed added 3 commits April 13, 2026 13:48
The UI plugin uses React 18 / @types/react@18 while the root workspace
uses React 17 / @types/react@17. When root tsc type-checks UI plugin
files, dependencies at root node_modules resolve react to @types/react@17,
causing type mismatch errors. Excluding the UI plugin from root tsc
resolves this. The UI plugin still gets type checking via Jest.
@github-actions
Copy link
Copy Markdown

ui docs preview (Available for 14 days)

mofojed added 2 commits April 13, 2026 15:35
The root tsconfig.json excludes ui plugin files to avoid React type
conflicts during tsc. ESLint needs those files included for type-aware
linting, so point it to a tsconfig.eslint.json that re-includes them.
@github-actions
Copy link
Copy Markdown

ui docs preview (Available for 14 days)

@github-actions
Copy link
Copy Markdown

ui docs preview (Available for 14 days)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant