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
d038e7b2f8
merge: sync codex/fix/flash-no-catalog with master
2026-06-01 12:42:45 +07:00
Tommaso Casaburi
b686def1a1
fix(board-buttons): hide catalog controls on flash upload boards
...
Flash boards do not use catalog view, so hide catalog links and OP search
without leaving empty bracket placeholders in desktop board controls.
2026-06-01 12:42:21 +07:00
Tommaso Casaburi
1bd8d6dc34
fix(flags): hide geolocation-only selectors on /int/ and /sp/
...
Country-only boards auto-publish geographic location flags without
showing a flag dropdown, matching existing /bant/ behavior.
2026-06-01 10:57:13 +07:00
Tommaso Casaburi
3480dc0505
fix(p2p-stats): show peer flags for DNS6 relay hostnames
...
Extract embedded IPv6 addresses from dns6 multiaddrs so geo lookup and country flags work for relay peers that publish IPv6 via DNS hostnames.
2026-05-31 18:02:20 +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
d3b5c40321
fix(comment-content): render reason text as comment content
2026-05-31 16:09:01 +07:00
Tommaso Casaburi and GitHub
b442e05191
feat(rules page): rebuild directory rules page with vendored lists ( #1147 )
...
* feat(rules page): rebuild directory rules page with vendored lists
Mirror per-directory JSON from lists into src/data/5chan-directories, rework /rules layout to match 4chan (sidebar nav, category boxes, P2P load), and keep spoiler markup visible in rule text via parseSpoilers.
* fix(rules): keep directory defaults cache atomic
* fix(rules): derive defaults from shared directory refresh
* fix(rules): address directory refresh edge cases
2026-05-31 11:39:40 +07:00
Tommaso Casaburi
5541c4f047
Merge branch 'master' of github.com:bitsocialnet/5chan
2026-05-30 16:12:29 +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
fa07e4a406
Merge branch 'master' of github.com:bitsocialnet/5chan
2026-05-30 15:39:04 +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
2969a91690
Merge branch 'codex/fix/modal-top-offset'
2026-05-30 13:10:26 +07:00
Tommaso Casaburi
b983cfdce4
fix(ui): position disclaimer and directory modals 50px from top
...
Align home disclaimer and directory submit dialogs near the top of the viewport instead of vertically centering them.
2026-05-30 13:10:22 +07:00
Tommaso Casaburi
55bb873ab1
fix(board-pagination): increase footer pagelist padding
2026-05-30 13:08:54 +07:00
Tommaso Casaburi
0469f61a45
feat(theme): add halloween special theme
2026-05-29 17:45:18 +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 and GitHub
029939089f
fix(flags): align board flag rendering ( #1142 )
...
* fix(flags): align board flag rendering
* ci: run react doctor on changed pr files
2026-05-27 16:06:13 +07:00
Tommaso Casaburi
a40b446f14
fix(p2p stats): show peer transfer counters
2026-05-25 15:18:04 +07:00
Tommaso Casaburi
680dd71285
fix(p2p-stats): center loading state and add animated ellipsis
...
Use LoadingEllipsis for the P2P stats loading message with centered layout and extra bottom spacing.
2026-05-25 14:11:57 +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
639c627a04
fix(p2p stats): prefer browser IPv4 for own endpoint
2026-05-24 23:18:42 +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
31329f7856
Merge branch 'codex/fix/option-board-support-alert'
2026-05-24 19:17:55 +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
d19ebf6459
Merge remote-tracking branch 'origin/master'
2026-05-24 18:18:24 +07:00
Tommaso Casaburi and GitHub
804c14fc35
Improve P2P stats peer locations and Kubo display ( #1139 )
...
* feat(p2p stats): plot peers by ip location
* fix(p2p stats): show own node map marker
* feat(p2p stats): support full node peers
* fix(p2p stats): clean up kubo stats
* fix(p2p stats): address review feedback
2026-05-24 17:32:05 +07:00
Tommaso Casaburi
348e3393c7
feat(post): show pending approval reason
2026-05-24 17:06:03 +07:00
Tommaso Casaburi
0df81b598e
fix(board header): replace loading icon with spinner
2026-05-23 23:30:51 +07:00
Tommaso Casaburi and GitHub
f5039285a7
fix(p2p stats): improve own-IP geolocation and world map accuracy ( #1138 )
...
* fix(p2p stats): improve own-IP geolocation and world map accuracy
Resolve the user's public endpoint when libp2p only advertises private listen addresses, look up an accurate country flag for "Your IP", snap peer markers to country centroids, and add leeching seeder link plus panel layout tweaks.
* fix(p2p stats): skip caching own-IP lookups cancelled by abort
When the P2P stats panel unmounts mid-request, its AbortSignal cancels
the in-flight fetchOwnPublicEndpoint / fetchOwnIpCountryCode calls. Those
empty results were still cached for 30-60s, so reopening the panel within
that window showed "Your IP" as unavailable or without a country flag even
though nothing had actually failed. Skip caching when the signal aborted so
a later open retries. Addresses Cursor Bugbot finding.
2026-05-23 22:47:41 +07:00
Tommaso Casaburi
9c4bb28940
Merge branch 'codex/feature/prettier-peer-list'
2026-05-23 18:34:05 +07:00
Tommaso Casaburi
782a1f466f
feat(p2p stats): redesign connected peers with world map and country flags
...
Restyle the connected-peers list in the classic square, flat imageboard style,
move it to the end of the panel, and open it by default. Add an offline
approximate world map and per-peer country flags (sprite order taken from the
original 4chan flags.css), plus codify the old-school design rules in DESIGN.md
and point agents to them from AGENTS.md.
2026-05-23 18:33:00 +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
739da79964
Merge branch 'codex/fix/hide-empty-advanced-settings-fields'
2026-05-23 17:23:23 +07:00
Tommaso Casaburi
b849f7c376
fix(advanced settings): hide gateway fields in pure p2p mode and align inputs
...
When pure browser P2P is enabled, the IPFS gateway and pubsub provider
fields no longer apply, so hide them and toggle their visibility reactively
from the now-controlled pure P2P checkbox. Rename "Node RPC" to "Full node
WebSocket RPC", add a placeholder, and drop the old info toggle.
Give the WebSocket RPC text input the same content-box width, border, and
padding as the textareas above it so all field right edges align.
2026-05-23 17:23:05 +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
ca13e97dd4
feat(p2p): enable pure browser p2p by default
2026-05-22 17:31:28 +07:00
Tommaso Casaburi
99eb49cdc5
fix(edit menu): restore moderation reason field
2026-05-22 14:17:25 +07:00
Tommaso Casaburi
275d8b0e69
fix(moderation): clarify moderator composer state
2026-05-22 00:44:14 +07:00
Tommaso Casaburi and GitHub
4c011b3fdd
fix(post form): align rules prompt test with bottom placement ( #1136 )
2026-05-22 00:03:52 +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
7d521b1e95
Merge branch 'codex/fix/post-form-rules-row-bottom'
2026-05-21 19:35:07 +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
8cd3b65b19
fix(post form): center the collapsed start-new-thread toggle
...
Re-center the desktop start-new-thread toggle (matching the board
title) while keeping the expanded post form left-aligned with the
blotter.
2026-05-21 19:30:40 +07:00
Tommaso Casaburi
1fffe2c428
Merge branch 'codex/fix/post-form-blotter-align'
2026-05-21 19:04:39 +07:00