Commit e45c7d9
authored
fix(chat): sidenav collapsed-mode polish — vertical icons, thread initials, right-click context menu (#287)
Three small fixes to the chat sidenav when in `collapsed` (56px) mode:
1. Top-bar icons stack vertically. The New-thread `[+]` and collapse/expand
chevron previously sat side-by-side inside a 56px column via
`justify-content: space-between`, producing awkward proportions. The
collapsed-mode rule now switches the top bar to `flex-direction: column`
with even gap.
2. Thread rows show a first-letter initial. In collapsed mode the title
label is hidden and there was nothing in its place — the strip looked
empty aside from the active-row highlight. Each row now renders a 28px
circular initial (uppercase, surrogate-pair-safe via `Array.from`),
hidden in expanded/drawer mode and revealed in collapsed mode. The row
button carries a `title` attribute so the full thread label appears as a
native tooltip on hover.
3. Right-click context menu on rows. The kebab is hidden in collapsed mode
(28px target in a 56px column was cramped). Right-clicking any thread
row now opens the same overflow menu anchored at the cursor — and
suppresses the OS context menu — in expanded, collapsed and drawer
modes alike. `chat-overflow-menu` gained an `anchorPos: {x, y}` input
that takes precedence over the element `anchor` when set; the
thread-list keeps the two anchor sources mutually exclusive via paired
signals.
Tests cover both the contextmenu open path and the no-adapter
preventDefault path, plus initial rendering and the empty-title "?"
fallback.1 parent 6ce0471 commit e45c7d9
6 files changed
Lines changed: 161 additions & 1 deletion
File tree
- apps/website/content/docs/chat/api
- libs/chat/src/lib
- primitives
- chat-thread-list
- styles
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2982 | 2982 | | |
2983 | 2983 | | |
2984 | 2984 | | |
| 2985 | + | |
| 2986 | + | |
| 2987 | + | |
| 2988 | + | |
| 2989 | + | |
| 2990 | + | |
2985 | 2991 | | |
2986 | 2992 | | |
2987 | 2993 | | |
| |||
3900 | 3906 | | |
3901 | 3907 | | |
3902 | 3908 | | |
| 3909 | + | |
| 3910 | + | |
| 3911 | + | |
| 3912 | + | |
| 3913 | + | |
| 3914 | + | |
3903 | 3915 | | |
3904 | 3916 | | |
3905 | 3917 | | |
| |||
4000 | 4012 | | |
4001 | 4013 | | |
4002 | 4014 | | |
| 4015 | + | |
| 4016 | + | |
| 4017 | + | |
| 4018 | + | |
| 4019 | + | |
| 4020 | + | |
| 4021 | + | |
| 4022 | + | |
| 4023 | + | |
| 4024 | + | |
| 4025 | + | |
| 4026 | + | |
| 4027 | + | |
4003 | 4028 | | |
4004 | 4029 | | |
4005 | 4030 | | |
| |||
4121 | 4146 | | |
4122 | 4147 | | |
4123 | 4148 | | |
| 4149 | + | |
| 4150 | + | |
| 4151 | + | |
| 4152 | + | |
| 4153 | + | |
| 4154 | + | |
| 4155 | + | |
| 4156 | + | |
| 4157 | + | |
| 4158 | + | |
| 4159 | + | |
| 4160 | + | |
| 4161 | + | |
| 4162 | + | |
| 4163 | + | |
| 4164 | + | |
| 4165 | + | |
| 4166 | + | |
| 4167 | + | |
4124 | 4168 | | |
4125 | 4169 | | |
4126 | 4170 | | |
| |||
Lines changed: 7 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
70 | 73 | | |
71 | 74 | | |
72 | 75 | | |
73 | 76 | | |
74 | 77 | | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
75 | 82 | | |
76 | 83 | | |
77 | 84 | | |
| |||
Lines changed: 40 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
708 | 708 | | |
709 | 709 | | |
710 | 710 | | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
| 734 | + | |
| 735 | + | |
| 736 | + | |
| 737 | + | |
| 738 | + | |
| 739 | + | |
| 740 | + | |
| 741 | + | |
| 742 | + | |
| 743 | + | |
| 744 | + | |
| 745 | + | |
| 746 | + | |
| 747 | + | |
| 748 | + | |
| 749 | + | |
| 750 | + | |
711 | 751 | | |
Lines changed: 32 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
99 | 99 | | |
100 | 100 | | |
101 | 101 | | |
| 102 | + | |
102 | 103 | | |
103 | 104 | | |
104 | 105 | | |
| |||
129 | 130 | | |
130 | 131 | | |
131 | 132 | | |
| 133 | + | |
132 | 134 | | |
133 | 135 | | |
134 | 136 | | |
135 | 137 | | |
| 138 | + | |
136 | 139 | | |
137 | 140 | | |
138 | 141 | | |
| |||
166 | 169 | | |
167 | 170 | | |
168 | 171 | | |
| 172 | + | |
169 | 173 | | |
170 | 174 | | |
171 | 175 | | |
| |||
174 | 178 | | |
175 | 179 | | |
176 | 180 | | |
| 181 | + | |
177 | 182 | | |
178 | 183 | | |
179 | 184 | | |
| |||
206 | 211 | | |
207 | 212 | | |
208 | 213 | | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
209 | 217 | | |
210 | 218 | | |
211 | 219 | | |
| |||
333 | 341 | | |
334 | 342 | | |
335 | 343 | | |
| 344 | + | |
336 | 345 | | |
337 | 346 | | |
338 | 347 | | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
339 | 371 | | |
340 | 372 | | |
341 | 373 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
83 | 83 | | |
84 | 84 | | |
85 | 85 | | |
| 86 | + | |
| 87 | + | |
86 | 88 | | |
87 | | - | |
| 89 | + | |
| 90 | + | |
88 | 91 | | |
89 | 92 | | |
90 | 93 | | |
| |||
206 | 209 | | |
207 | 210 | | |
208 | 211 | | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
209 | 233 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
89 | 89 | | |
90 | 90 | | |
91 | 91 | | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
92 | 105 | | |
93 | 106 | | |
94 | 107 | | |
| |||
0 commit comments