Skip to content

feat(campaign): discussion board on campaign detail page#5967

Merged
mashbean merged 3 commits into
developfrom
feat/campaign-discussion
Jun 14, 2026
Merged

feat(campaign): discussion board on campaign detail page#5967
mashbean merged 3 commits into
developfrom
feat/campaign-discussion

Conversation

@mashbean

Copy link
Copy Markdown
Contributor

Upstream CI mirror of #5964(原 PR 來自 fork yingshinlee,fork 觸發的 CI 拿不到 secrets、build required check 不會跑)。

此 PR 從 thematters/matters-web 內部分支開啟,讓 CI 能在帶 secrets 的 context 跑、codegen 抓 server.matters.icu 的新 schema(campaign discussion / quote wall 後端已於今日部署上 staging)。

內容與 #5964 相同。Co-Authored-By: Claude Fable 5

- CampaignDetail/Discussion: compact module (desktop right aside) with input
  box + latest 3 comments + view-all dialog; mobile renders a one-line chip
  entry that opens the dialog
- reuse CircleComment family: CircleCommentForm/Dialog accept campaignId and
  type campaignDiscussion; ReplyButton/DropdownActions resolve campaign node
- 240-char cap with counter on campaign comments (matches moments)
- layout: cover height halved (23.26% -> 12%), side participants avatars
  trimmed 60 -> 12 to make room for the discussion module

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@mashbean mashbean requested a review from a team as a code owner June 13, 2026 11:08
…mponents

Backend added `campaignDiscussion` to the GraphQL `CommentType` enum, widening
the codegen type. Propagate the new type through the hand-written comment
routing/UI so type-checking and build pass:

- route.ts: add `campaignDiscussion` to `CommentArgs.type` and resolve the
  comment link to the campaign detail page via the existing campaignDetail route
- CircleComment/CreatedAt: link campaign discussion comments to their campaign
- CampaignDetail/Discussion: fix discussion connection type (campaign field is
  no longer a union, so drop the never-yielding Extract)
- correct formatjs message ids and extract new i18n strings
- fix stylelint ordering/comment-spacing in new campaign styles

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 13, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
matters-web Ready Ready Preview Jun 14, 2026 6:04am

Request Review

The popover was gated on contentContainer.current in render; assigning a
ref does not trigger a re-render, so it only appeared after an unrelated
re-render (e.g. scroll). Gate on a mounted flag set in an effect instead.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@mashbean mashbean merged commit 7affc62 into develop Jun 14, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants