Commit Graph
380 Commits
Author SHA1 Message Date
plebeius 2d7cfd265d fix styling 2026-01-09 17:03:53 +01:00
plebeius a959f14290 fix(edit-menu): use correct banExpiresAt path in commentModeration.author 2026-01-09 16:43:21 +01:00
plebeius e0fb887bac sort mod queue by timestamp, remove redundant "view" button 2026-01-09 15:47:56 +01:00
plebeius 3f57691255 fix ts errors 2026-01-08 18:56:43 +01:00
plebeius fbdfadc65c fix(mod-queue): style action buttons to match board buttons and make status indicators bold/colored 2026-01-08 18:09:44 +01:00
plebeius 01823caeab Handle already moderated comments in mod queue 2026-01-08 17:59:41 +01:00
plebeius 6a740a8bb9 add approve/reject mod queue functionality, translations 2026-01-08 17:36:47 +01:00
plebeius 404b613b44 perf: Fix unnecessary renders in useCurrentTime hook and ModQueueView footer 2026-01-08 17:16:29 +01:00
plebeius 402313107c feat(post): add pending approval label 2026-01-08 17:09:35 +01:00
plebeius 99596d3a54 fix(mod queue): items shouldn't disappear from feed unless api removes them 2026-01-08 16:46:02 +01:00
plebeius e899ac7fb9 update mod queue 2026-01-08 16:43:14 +01:00
plebeius 70ba14591a feat: implement mod queue 2026-01-07 16:03:02 +01:00
plebeius 5a072a0307 fix type errors 2026-01-06 18:10:58 +01:00
plebeius 352466ecf3 Fix search bar navigation and disclaimer modal behavior 2026-01-03 19:02:59 +01:00
plebeius 9fe31c873b refactor: clean up imports and move inline component definitions after imports 2026-01-03 16:17:48 +01:00
plebeius f5cf263481 fix(popular-threads): update memo comparator to include multisub entry titles 2026-01-03 16:04:37 +01:00
plebeius 4c4e1209aa fix(board): subscribe to transient state and error fields separately 2026-01-03 16:04:33 +01:00
plebeius fa32833b2a perf(components): prevent rerenders from updatingState
Use Zustand selectors with custom equality functions to only subscribe to specific fields needed by components, avoiding unnecessary rerenders when transient state like updatingState changes. Extract offline indicators into separate components to isolate rerenders. Memoize card components in catalog and popular threads views.
2026-01-02 16:42:16 +01:00
plebeius 6724f91c79 fix(post): redirect to 404 when thread URL specifies wrong board 2025-12-31 20:14:51 +01:00
plebeius 341e72ad5b fix(error-display): add delay to prevent false positive error displays 2025-12-31 16:00:58 +01:00
plebeius 48f7fe6dc4 style(home): update 5chan description links 2025-12-31 15:45:04 +01:00
plebeius d725348d9e Update faq.tsx 2025-12-31 15:44:45 +01:00
plebeius 652385561b feat(all-feed): add NSFW/SFW filter 2025-12-29 16:18:59 +01:00
plebeius 790c341976 refactor(views): remove redundant DOM and CSS declarations 2025-12-29 15:59:32 +01:00
plebeius d800ee9817 feat(rules): add rules page with board selector 2025-12-29 00:26:15 +01:00
plebeius 5aa1eaf13a fix(views): use directory codes in document titles and fix order 2025-12-28 23:13:25 +01:00
plebeius c0e6f5fe5c unused var 2025-12-28 22:18:57 +01:00
plebeius c094786f97 pass threadNumber to reply modal store 2025-12-28 22:16:38 +01:00
plebeius 882b7b4a99 feat: add infinite scroll for replies 2025-12-27 18:07:23 +01:00
plebeius 34bebda4f7 fix eslint warnings 2025-12-23 19:21:48 +01:00
plebeius 5e79ce91b6 refactor: remove description and rules mock posts
Removed all fake posts for subplebbit description and rules, including dedicated routes, components, and all related logic across the codebase. Board admins can now pin regular posts if they want to provide a description.
2025-12-23 19:14:25 +01:00
plebeius 92c801c154 update directory title 2025-12-17 13:12:02 +01:00
plebeius 80e7af81f3 refactor: remove hide gore boards and hide adult boards functionality 2025-12-15 17:04:26 +01:00
plebeius 0d488389a5 feat(footer): add feedback and contact links and update styling 2025-12-14 17:54:21 +01:00
plebeius 5f00be5b23 update homepage footer 2025-12-14 16:03:13 +01:00
plebeius 198b6135da fix: show cached feed time filter in UI 2025-12-08 23:52:13 +01:00
plebeius 1a6ac4a2be fix: use stable time filter for virtuoso state key in cached feeds 2025-12-08 23:32:42 +01:00
plebeius 896ca4ad13 perf: implement LRU-cached persistent feed mounting to eliminate Virtuoso flash
Keep Board/Catalog feeds mounted outside React Router's control to prevent
Virtuoso from remounting when navigating to/from post pages. The feed is
hidden via CSS when viewing posts and shown again when returning, eliminating
the visible flash/displacement that occurred during scroll restoration.

- Add FeedCacheContainer to manage LRU cache of 2 feeds
- Modify Board/Catalog to accept cache props and visibility state
- Add route utilities for feed/post route detection
2025-12-08 22:40:16 +01:00
plebeius 9e13292ae3 fix: reset board scroll on link nav
Force scroll-to-top on link navigation while keeping POP restores, and scope Virtuoso keys per pathname to avoid cross-board scroll leakage.
2025-12-08 13:03:25 +01:00
plebeius c1a66ca61e refactor(home): prevent layout shift in popular threads loading
Remove boards list loading state since default data is available synchronously. Add min-height to popular threads loading state to reserve space and prevent container resize. Left-align loading text in popular threads.
2025-12-06 16:39:22 +01:00
plebeius 5de2587cf4 feat(post): add moderator and administrator role indicators 2025-11-28 13:29:31 +01:00
plebeius f037a669c0 refactor: remove broken anon mode feature
- delete the anon mode hook/store and stop wiring publish flows through alternate signers
  - strip the settings UI, avatar warning, reply indicators, and FAQ text that referenced the toggle
  - drop the anon mode translation keys via scripts/update-translations.js
2025-11-25 13:13:38 +01:00
plebeius f3941c7fb0 style(boards list): add mobile design 2025-11-18 16:38:11 +01:00
plebeius ad1a017c57 missing color 2025-11-13 21:15:47 +01:00
plebeius 594be88210 fix(boards-list): hide Multiboards section when filtering for worksafe boards 2025-11-13 12:23:59 +01:00
plebeius 12101fe75e feat: add Multiboards category with /subs/ and /all/ 2025-11-12 16:35:38 +01:00
plebeius e3e25995d6 feat(board): add more_threads_last_year suggestion 2025-11-08 15:56:32 +01:00
plebeius b886cbdf3b fix(routing): handle empty boardPath and resolve directory codes 2025-11-07 18:54:45 +01:00
plebeius 128b6b1986 style: replace strikethrough with gray color for unassigned board directories 2025-11-07 18:53:15 +01:00
plebeius d78fed1fda refactor(routing): migrate to directory-based board routing 2025-11-07 12:50:58 +01:00