Skip to content

feat(viewer): Enhance detail drawer with FK/IX pills, navigation, and depth control#65

Merged
mhiro2 merged 6 commits into
mainfrom
feat/viewer-detail-drawer-interaction
Apr 14, 2026
Merged

feat(viewer): Enhance detail drawer with FK/IX pills, navigation, and depth control#65
mhiro2 merged 6 commits into
mainfrom
feat/viewer-detail-drawer-interaction

Conversation

@mhiro2

@mhiro2 mhiro2 commented Apr 14, 2026

Copy link
Copy Markdown
Owner

Summary

  • Display FK and IX pills alongside existing PK pills in the detail drawer column list
  • Enable schema traversal from the drawer by clicking relation rows to navigate to related tables
  • Support edge clicks to select the source (FK-holding) table and center the viewport
  • Add 1-hop / 2-hop traversal depth toggle for extending BFS highlights to indirect neighbors
  • Show "Join Table" badge and split relation metrics into total / inbound / outbound counts
  • Fix drawer label overflow and soften relation metadata styling

Changes

  • ccea6ce : feat(render-html): display FK and IX pills in detail drawer
    • Show foreign key and index badges alongside existing PK pills in the column detail drawer
  • d1444a7 : feat(viewer): navigate to related table on relation row click
    • Select the target table and center the viewport when a relation row is clicked in the drawer
  • 1cfc672 : feat(viewer): open source table on edge click
    • Select the source (FK-holding) table and center the viewport when an SVG edge is clicked
  • 64db576 : feat(viewer): add 1-hop / 2-hop traversal depth toggle
    • Add a depth toggle above the columns section to switch between 1-hop and 2-hop BFS highlights
  • 2ee9e5c : feat(viewer): show join-table badge and improve relation counts
    • Display a "Join Table" badge when the table is a join table candidate
    • Split relation metrics into total / inbound / outbound with directional arrows
  • ec0556b : fix(viewer): wrap drawer labels and soften relation metadata
    • Keep metric labels and relation rows inside the panel width
    • Render relationship metadata with a smaller secondary style

mhiro2 added 6 commits April 13, 2026 23:23
Show foreign key and index badges alongside existing PK pills
in the column detail drawer, using metadata already available
from the layout graph.
Clicking a relation row in the detail drawer now selects the target
table and centers the viewport on it, enabling schema traversal
directly from the drawer.
Clicking an edge in the SVG selects the source (FK-holding) table and
centers the viewport, so the drawer shows the relation detail in
context.
Selected table now shows a depth toggle (1-hop / 2-hop) above the
columns section.  Switching to 2-hop extends the BFS highlight to
two levels of neighbors and their connecting edges, making it easier
to trace indirect dependencies.
The detail drawer now displays a "Join Table" badge when the table is
a join table candidate, and splits the relation metrics into total /
inbound / outbound with directional arrows for quick orientation.
The detail drawer now keeps metric labels and relation rows inside the
panel width, preventing columns / relations labels from spilling past
their cards when space is tight.

Relationship metadata is also rendered with a smaller secondary style,
so foreign-key column mappings no longer overpower the primary
table-to-table relation label.
@mhiro2 mhiro2 self-assigned this Apr 14, 2026
@mhiro2 mhiro2 added the enhancement New feature or request label Apr 14, 2026
@github-actions

Copy link
Copy Markdown

Code Metrics Report

main (3a2dc06) #65 (52fd04b) +/-
Coverage 94.2% 94.3% +0.0%
Test Execution Time 2m57s 2m54s -3s
Details
  |                     | main (3a2dc06) | #65 (52fd04b) |  +/-  |
  |---------------------|----------------|---------------|-------|
+ | Coverage            |          94.2% |         94.3% | +0.0% |
  |   Files             |             77 |            77 |     0 |
  |   Lines             |          31140 |         31241 |  +101 |
+ |   Covered           |          29365 |         29466 |  +101 |
+ | Test Execution Time |          2m57s |         2m54s |   -3s |

Code coverage of files in pull request scope (99.9% → 99.9%)

Files Coverage +/- Status
crates/relune-render-html/src/components.rs 100.0% 0.0% modified
crates/relune-render-html/src/css.rs 100.0% 0.0% modified
crates/relune-render-html/src/html.rs 99.7% +0.0% modified

Reported by octocov

@mhiro2
mhiro2 merged commit 92256d6 into main Apr 14, 2026
4 checks passed
@mhiro2
mhiro2 deleted the feat/viewer-detail-drawer-interaction branch April 14, 2026 13:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant