Tommaso Casaburi
4cc2bf4ea1
fix(flags): resolve comment flags from directory list candidates
...
Use directory list board entries when the active address is not yet in
the directories cache so /pol and similar boards get correct flag UI.
2026-06-02 15:00:14 +07:00
Tommaso Casaburi
b9ab1ba470
merge: show specific role in moderation posting warning
2026-06-01 12:48:47 +07:00
Tommaso Casaburi
812b6bc79c
fix(post): show specific role in moderation posting warning
...
Replace the generic "posting as moderator" label with the effective role
(5chan dev, owner, admin, or moderator) in post and reply forms.
2026-06-01 12:48:42 +07:00
Tommaso Casaburi
872116b132
fix(post-form): use native browser styling for flash tag select
...
Exclude the flash tag dropdown from themed post-form select styling so it
renders with the browser's default select appearance, matching the flag selector.
2026-05-31 16:27:02 +07:00
Tommaso Casaburi and GitHub
9b3a95dd95
feat(flash board): add SWF posting support ( #1145 )
2026-05-30 16:07:41 +07:00
Tommaso Casaburi and GitHub
56894700c1
feat(oekaki): add drawing flow for /i/ ( #1144 )
...
* feat(oekaki): add drawing flow for /i/
* fix(oekaki): address review feedback
* fix(oekaki): reset Tegaki edit sessions
* fix(oekaki): block drawing during export
* fix(oekaki): destroy Tegaki on preload errors
* fix(oekaki): preserve drawing on export failure
* fix(oekaki): unlock controls after export failure
2026-05-30 15:06:47 +07:00
Tommaso Casaburi and GitHub
e082c7b428
fix(react): address Doctor findings ( #1143 )
...
Accessibility/semantics pass aligned with React Doctor: role-based spans/divs become real buttons, role=status becomes <output>, modals use native <dialog>, author/peer flags render as <img>, and embed/challenge iframes are sandboxed. Includes review follow-ups: correct button chrome/centering/themed dialog colors and focus rings, the missing aria-label i18n keys (all languages), the Yandex image-search URL, clearer .bso setup steps, a keyboard-accessible image-search dropdown, and removal of the post-edit ('comment edited') display (mod edits unchanged).
2026-05-29 17:09:07 +07:00
Tommaso Casaburi
633542a1f7
fix(flags): move reply flag below link and auto-geo on /bant/
...
Hide the flag selector on /bant/ while still publishing geographic location, and place the reply modal flag field after the link field.
2026-05-24 23:38:15 +07:00
Tommaso Casaburi
2030b8c5bb
fix(ui): use native browser styling for flag select
...
Match 4chan's unstyled flag dropdown by excluding it from themed form select rules.
2026-05-24 23:30:59 +07:00
Tommaso Casaburi
271cb14ae6
Merge branch 'master' of github.com:bitsocialnet/5chan
...
# Conflicts:
# public/translations/ar/default.json
# public/translations/bn/default.json
# public/translations/cs/default.json
# public/translations/da/default.json
# public/translations/de/default.json
# public/translations/el/default.json
# public/translations/en/default.json
# public/translations/es/default.json
# public/translations/fa/default.json
# public/translations/fi/default.json
# public/translations/fil/default.json
# public/translations/fr/default.json
# public/translations/he/default.json
# public/translations/hi/default.json
# public/translations/hu/default.json
# public/translations/id/default.json
# public/translations/it/default.json
# public/translations/ja/default.json
# public/translations/ko/default.json
# public/translations/mr/default.json
# public/translations/nl/default.json
# public/translations/no/default.json
# public/translations/pl/default.json
# public/translations/pt/default.json
# public/translations/ro/default.json
# public/translations/ru/default.json
# public/translations/sq/default.json
# public/translations/sv/default.json
# public/translations/te/default.json
# public/translations/th/default.json
# public/translations/tr/default.json
# public/translations/uk/default.json
# public/translations/ur/default.json
# public/translations/vi/default.json
# public/translations/zh/default.json
2026-05-24 23:18:28 +07:00
Tommaso Casaburi and GitHub
f74b33f43b
feat(flags): add comment flags ( #1140 )
...
* feat(flags): add comment flags
* fix(flags): address review feedback
* fix(flags): clear stale flag publish data
2026-05-24 23:14:36 +07:00
Tommaso Casaburi
5fad3c73ba
fix(post): link board-specific option errors to supported boards
...
When fortune or dice options are used on the wrong board, show which
boards support them with clickable links in the post form and reply modal.
2026-05-24 19:17:50 +07:00
Tommaso Casaburi
1a09c7e891
Merge branch 'codex/fix/pending-escape-board-redirect'
...
# Conflicts:
# src/components/post-form/post-form.tsx
2026-05-23 17:26:47 +07:00
Tommaso Casaburi
e95dcb8af5
fix(pending-post): return to board after abandoned challenge
2026-05-23 17:24:22 +07:00
Tommaso Casaburi and GitHub
22c1b4f123
feat(post options): support nonoko board redirects ( #1137 )
2026-05-23 16:54:38 +07:00
Tommaso Casaburi
275d8b0e69
fix(moderation): clarify moderator composer state
2026-05-22 00:44:14 +07:00
Tommaso Casaburi
75fb245bfb
Merge branch 'master' of github.com:bitsocialnet/5chan
2026-05-21 22:33:51 +07:00
Tommaso Casaburi and GitHub
ff6b4cd201
feat(posting): add scoped options and qst formatting ( #1135 )
...
* feat(posting): add scoped options and qst formatting
* fix(posting): address post options review feedback
* fix(posting): sync option content before publish
* fix(posting): handle final review nits
2026-05-21 22:12:41 +07:00
Tommaso Casaburi
4efa668fec
fix(post form): move rules and FAQ prompt to bottom of form
...
Render the rules/FAQ prompt after the last field instead of between
the file and options rows so it always sits at the bottom.
2026-05-21 19:34:50 +07:00
Tommaso Casaburi
7305e40870
feat(post form): add rules and FAQ prompt
2026-05-21 18:55:36 +07:00
Tommaso Casaburi
75d90c8264
fix(post-form): shorten long uploaded file labels in the form
...
Telegraph and other hosts can produce very long filenames that overflow the
narrow post form upload row; truncate them more aggressively than post media
links and expose the full name via title tooltip.
2026-05-21 15:34:21 +07:00
Tommaso Casaburi
d2d047e5de
feat(posts): add mod bbcode editor
2026-05-19 15:45:22 +07:00
Tommaso Casaburi and GitHub
95f3faf31a
fix(post-form): clear stale draft state on form remount ( #1131 )
2026-05-17 17:15:31 +07:00
Tommaso Casaburi
4acd4449ea
fix(post form): show validation errors inline
2026-05-16 16:30:32 +07:00
Tommaso Casaburi
a86c523d17
fix(post form): block temporary media links
2026-05-16 16:11:22 +07:00
Tommaso Casaburi and GitHub
556973a445
Improve React Doctor score and badge ( #1127 )
...
* fix(react doctor): improve quality score and badge
* fix(react doctor): address review feedback
* fix(review): address final bot feedback
2026-05-10 18:25:13 +07:00
Tommaso Casaburi
70791fa80a
fix(upload): animate uploading ellipsis
2026-05-01 22:54:05 +07:00
Tommaso Casaburi
bc213ecea2
fix(posting): clarify direct file links
2026-05-01 18:03:04 +07:00
Tommaso Casaburi and GitHub
5dc5408a15
fix(codebase audit): preserve cleanup without regressions
...
Fix codebase audit regressions while preserving UI/UX behavior and adding review-driven hardening.
2026-04-24 15:48:07 +07:00
Tommaso Casaburi
fb19ee47c8
fix(publishing): normalize media links to https
2026-04-21 14:23:52 +07:00
Tommaso Casaburi
c046c542b6
chore(deps): use published bitsocial react hooks
2026-04-20 22:11:36 +07:00
Tommaso Casaburi
e366dac25c
fix(quotes): keep same-thread board previews local
2026-04-16 15:33:12 +07:00
Tommaso Casaburi
621235379c
fix(feed): support strict community refs and safer domain publishing
2026-04-15 12:51:21 +07:00
Tommaso Casaburi and GitHub
c2e8e169c2
fix(accounts): adapt 5chan to compact account history hooks ( #1118 )
...
* chore(cursor): use composer-2 for subagents
* fix(accounts): adapt 5chan to compact account history hooks
* fix(accounts): address 5chan account-history review findings
2026-03-20 21:25:57 +08:00
Tommaso Casaburi and GitHub
aedee9fb83
feat(archive): implement comment.archived and add archive page ( #1074 )
...
* feat(archive): implement comment.archived and add archive page
Add isCommentArchived() utility, /board/:boardIdentifier/archive route,
archive view with filtered feed, and UI integration (board buttons, edit
menu, catalog row, post). Archived indicator on catalog and posts.
* fix(archive): address review feedback from Bugbot and CodeRabbit
Add missing i18n keys (archived, thread_archived, view, loading_archive),
add /archive/settings route, replace hardcoded English in archive.tsx, and
fix mobile test state.
2026-03-13 16:06:36 +08:00
Tommaso Casaburi and GitHub
d7703953fb
refactor: migrate 5chan to the community hooks API ( #1073 )
...
* refactor(community-api): migrate 5chan to community hooks
* fix(review): address PR feedback
* fix(review): preserve legacy board context fallbacks
* fix(review): address latest bot feedback
* fix(review): use communityAddress in edit menu privileges
2026-03-13 13:25:10 +08:00
Tommaso Casaburi and GitHub
fe55e6f332
fix(quotes): resolve external quote links across boards ( #1064 )
2026-03-12 17:41:11 +08:00
plebeius
417482060d
refactor: org name changed from bitsocialhq to bitsocialnet
2026-03-09 17:01:35 +08:00
plebeius
723a2dee52
fix: share board offline state between post form and reply modal
2026-03-08 19:02:49 +08:00
plebeius
1fbf715aa9
test: cover board, catalog, and publish flows
...
Board browsing, catalog filtering, post publishing, and reply publishing had little or no honest whole-repo coverage, which let route-level regressions and duplicated form side effects slip through. This pass adds targeted tests for those user flows and fixes the duplicate `PostFormTable` mounting bug they exposed.
2026-03-08 14:29:47 +08:00
plebeius
34e2c2bc4d
fix: hold gif thumbnails until first frame is ready
...
Distinguish GIF frame loading from GIF frame failure in useFetchGifFirstFrame(), so thread and catalog thumbnails no longer render animated GIFs before the still frame arrives. Keep the existing animated fallback when the first-frame fetch actually fails.
2026-03-07 21:16:13 +08:00
plebeius
e80a73663f
feat(subscriptions): use useAccountSubplebbitAddresses for deduplicated addresses
...
Integrate bitsocial-react-hooks#16: replace raw useAccountsStore access with
useAccountSubplebbitAddresses so .eth/.bso aliases are deduplicated under .bso.
2026-03-07 16:50:24 +08:00
plebeius
4508f589dd
chore(deps): migrate from pkc-react-hooks to bitsocial-react-hooks
2026-03-05 17:14:23 +08:00
plebeius
7644d59599
perf(media): restrict gif frame extraction to gif media types
2026-03-04 16:04:49 +08:00
plebeius
e6afb041ae
refactor(markdown): replace react-markdown with custom imageboard-style text parser
2026-03-04 15:20:06 +08:00
plebeius
2bc2827f83
fix(post form): default link label to 'link to file' on /all/ and /subs/
2026-03-01 15:27:27 +08:00
plebeius
e556a9e662
chore(deps): replace plebbit/plebbit-react-hooks with bitsocialhq/pkc-react-hooks
...
bitsocialhq/pkc-react-hooks is a fork of plebbit-react-hooks that we're maintaining temporarily as an attempt to modernize the original repository using AI tools, possibly merging changes back into plebbit-react-hooks, which should also be rebranded to pkc-react-hooks eventually, under the org pkcprotocol.
2026-02-28 15:02:56 +08:00
plebeius
4f342fed3f
refactor(post-form): remove obsolete missing-link filter confirmation
2026-02-26 18:26:10 +08:00
plebeius
9793f0ed60
feat(post-form): show 'Link To File' when requirePostLinkIsMedia is true
2026-02-26 18:17:54 +08:00
plebeius
4bdee0362d
perf(bundle): replace plebbit-js imports with local utility, split chunks, fix CLS and rerenders
...
Eliminate direct @plebbit/plebbit-js (8.7MB) imports from all UI components by replacing
Plebbit.getShortAddress() with a local get-short-address utility. Add Vite manual chunks for
plebbit-js, plebbit-react-hooks, and react-spring/use-gesture. Fix catalog CLS by matching
skeleton to wrapper dimensions. Lazy-load ChallengeModal and ReplyModal. Add failed-URL cache
to useFetchGifFirstFrame, optimize useHide selector, and memoize useFeed options in mod-queue.
2026-02-26 16:42:36 +08:00