sendou.ink/app/components
Kalle 747a63edbc Show current route's chat in room list even when expired
Non-participants (e.g. tournament organizers) viewing a tournament
match chat could see the chat auto-open correctly, but clicking the
back arrow to the room list left the chat invisible — the only way
back was to leave the route and return.

The match chat appears in chatContext.rooms via the SUBSCRIBE
response, which (unlike the initial-payload path that participants
go through) does not check room expiry on the skalop side. So an
organizer viewing an old match ends up with an expired room in
their rooms list. ChatView already handles this gracefully with a
read-only banner, but RoomList was filtering on
expiresAt > Date.now() and dropping it.

Cleanup in useChatRouteSync removes the room from chatContext.rooms
on navigation, so exempting the current route's chatCode from the
expiry filter only affects the page that subscribed to it.
2026-05-02 11:36:56 +03:00
..
elements Make date time format apply everywhere (#3023) 2026-05-01 10:11:29 +03:00
fuse Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
icons Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
layout Show current route's chat in room list even when expired 2026-05-02 11:36:56 +03:00
AbilitiesSelector.module.css Migrate to nested CSS 2026-03-28 16:30:28 +02:00
AbilitiesSelector.tsx
Ability.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Ability.tsx
Alert.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Alert.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Avatar.module.css Migrate to nested CSS 2026-03-28 16:30:28 +02:00
Avatar.tsx Replace useIsMounted with useHydrated 2026-03-28 07:44:52 +02:00
Badge.tsx
BuildCard.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
BuildCard.tsx Make date time format apply everywhere (#3023) 2026-05-01 10:11:29 +03:00
Catcher.tsx Fix useEffect loop on 401 error 2026-03-30 20:06:58 +03:00
Chart.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Chart.tsx Make date time format apply everywhere (#3023) 2026-05-01 10:11:29 +03:00
CopyToClipboardPopover.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
CustomThemeSelector.module.css Migrate to nested CSS 2026-03-28 16:30:28 +02:00
CustomThemeSelector.tsx Disable custom theme submit buttons when request sent 2026-04-02 17:34:15 +03:00
DateInput.tsx Replace useIsMounted with useHydrated 2026-03-28 07:44:52 +02:00
Divider.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Divider.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
EventsList.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
EventsList.tsx Make date time format apply everywhere (#3023) 2026-05-01 10:11:29 +03:00
Flag.tsx
FormErrors.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
FormErrors.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
FormMessage.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
FormMessage.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
FormWithConfirm.tsx Replace useIsMounted with useHydrated 2026-03-28 07:44:52 +02:00
FriendCodeInput.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
FriendCodePopover.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
GearSelect.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Image.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Image.tsx Bye bye .png 2026-03-29 16:48:47 +03:00
InfoPopover.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
InfoPopover.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Input.module.css Fix input addon border radius 2026-03-30 20:24:58 +03:00
Input.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Label.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Label.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Main.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Main.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
MapPoolSelector.module.css Fix tournament register tab map pool styles 2026-04-21 08:59:58 +03:00
MapPoolSelector.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Markdown.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
MobileNav.module.css Migrate to nested CSS 2026-03-28 16:30:28 +02:00
MobileNav.tsx Fix mobile chat input below keyboard 2026-03-20 16:58:46 +02:00
NotificationDot.module.css Improve performance when notification dots are visible on-screen (#2941) 2026-04-06 10:12:08 +03:00
NotificationDot.tsx Improve performance when notification dots are visible on-screen (#2941) 2026-04-06 10:12:08 +03:00
Pagination.module.css Migrate to nested CSS 2026-03-28 16:30:28 +02:00
Pagination.tsx Add friends widget 2026-03-29 17:59:57 +03:00
Placeholder.module.css
Placeholder.tsx
Placement.tsx
Redirect.tsx
RelativeTime.tsx Make date time format apply everywhere (#3023) 2026-05-01 10:11:29 +03:00
RequiredHiddenInput.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
RequiredHiddenInput.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Section.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Section.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
SideNav.module.css Improve logo animation smoothness (no clipping) 2026-03-29 17:34:24 +03:00
SideNav.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
StageSelect.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
StageSelect.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
StreamListItems.module.css Migrate to nested CSS 2026-03-28 16:30:28 +02:00
StreamListItems.tsx Make date time format apply everywhere (#3023) 2026-05-01 10:11:29 +03:00
SubmitButton.tsx
SubNav.module.css Migrate to nested CSS 2026-03-28 16:30:28 +02:00
SubNav.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Table.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
Table.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
TierPill.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
TierPill.tsx Tournament tiers (#2758) 2026-01-22 20:04:26 +02:00
TimePopover.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
TimePopover.tsx Make date time format apply everywhere (#3023) 2026-05-01 10:11:29 +03:00
WeaponSelect.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
WeaponSelect.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
YouTubeEmbed.module.css Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00
YouTubeEmbed.tsx Design refresh + a bunch of stuff (#2864) 2026-03-19 17:51:42 +02:00