Commit 5451afb
Browse: clamp descriptions and add a dataset detail card; drop Submitted column (#201)
* Clamp browse descriptions by width instead of char count
The browse table cut descriptions at a fixed 75 characters, which
truncated well before the column ran out of room. Drop the JS truncation
and clamp the description cell to three lines with a CSS ellipsis, so it
fills the available width and adapts to the layout.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* Stop caching index.html so deploys take effect immediately
nginx served index.html with no Cache-Control, so browsers heuristically
cached it and kept loading the previous build's hashed bundle until a hard
refresh. Mark index.html no-cache (always revalidate) and the
content-hashed /assets/ immutable so new deploys are picked up on the next
navigation without serving stale assets.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* Add an expand button to view full browse descriptions
When a description is clamped, show a small expand button that opens the
full text in a floating modal. The button only appears when the text is
actually clipped (detected via ResizeObserver), and the modal overlay
means the table layout never reflows.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* Revert "Stop caching index.html so deploys take effect immediately"
This reverts commit f822cd2.
* Keep the browse table within its width
The browse grid used `1fr` tracks, whose implicit `min-width: auto` let a
long description (or dataset ID) widen its column and push the Size and
Submitted columns off the right edge. Use `minmax(0, 1fr)` so the flexible
columns shrink to their share, let cells shrink below content width, and
wrap long unbreakable tokens.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* Show dataset details in a card modal; drop the Submitted column
The standalone "Submitted" column didn't earn its width, so remove it and
surface the submission date (along with the dataset ID and size) in the
description modal, which now reads as a dataset "card":
- The description cell's expand button is always shown, so the card is
always reachable (not just when the text is clamped).
- The modal header shows the dataset name with the ID (monospace) beneath
it; the body shows submitted date, reaction count, and full description.
- Size the modal to its content (capped at 80vh) so short descriptions
don't leave empty space.
FloatingModal gains an optional `className` (for the content sizing) and
its `title` now accepts a ReactNode (for the name + ID header).
Datasets are still ordered newest-first by submission date server-side; only
the visible column is removed.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* Format the browse Size column with thousands separators, right-aligned
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
* Apply Prettier formatting to MainBrowse
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>1 parent b4f4387 commit 5451afb
3 files changed
Lines changed: 159 additions & 13 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
21 | | - | |
| 21 | + | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
| 25 | + | |
24 | 26 | | |
25 | 27 | | |
26 | 28 | | |
27 | 29 | | |
28 | 30 | | |
29 | 31 | | |
| 32 | + | |
30 | 33 | | |
31 | 34 | | |
32 | 35 | | |
| |||
35 | 38 | | |
36 | 39 | | |
37 | 40 | | |
38 | | - | |
| 41 | + | |
39 | 42 | | |
40 | 43 | | |
41 | 44 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
24 | | - | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 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 | + | |
25 | 73 | | |
26 | 74 | | |
27 | 75 | | |
28 | 76 | | |
29 | 77 | | |
30 | 78 | | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
| 20 | + | |
20 | 21 | | |
21 | 22 | | |
22 | 23 | | |
| |||
28 | 29 | | |
29 | 30 | | |
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 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
31 | 94 | | |
32 | 95 | | |
33 | 96 | | |
| |||
45 | 108 | | |
46 | 109 | | |
47 | 110 | | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | 111 | | |
54 | 112 | | |
55 | 113 | | |
| |||
81 | 139 | | |
82 | 140 | | |
83 | 141 | | |
84 | | - | |
85 | | - | |
| 142 | + | |
86 | 143 | | |
87 | 144 | | |
88 | 145 | | |
89 | 146 | | |
90 | 147 | | |
91 | 148 | | |
92 | | - | |
93 | | - | |
94 | | - | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
95 | 157 | | |
96 | 158 | | |
97 | 159 | | |
| |||
0 commit comments