Skip to content

feat(highlights): add 'All' tab to the highlights page#6109

Merged
idoshamun merged 2 commits into
mainfrom
eng-1590-add-all-tab-in-the-highlights-page
May 28, 2026
Merged

feat(highlights): add 'All' tab to the highlights page#6109
idoshamun merged 2 commits into
mainfrom
eng-1590-add-all-tab-in-the-highlights-page

Conversation

@idoshamun
Copy link
Copy Markdown
Member

@idoshamun idoshamun commented May 28, 2026

Summary

Adds an "All" tab after "Headlines" on /highlights that lists every highlight across channels, deduplicated by post and ordered by recency.

  • New static page pages/highlights/all.tsx so the tab has its own URL (/highlights/all) that survives hard refresh and is prefetched at build time.
  • Wired to the new backend postHighlightsFeed endpoint via postHighlightsFeedQueryOptions. The endpoint accepts optional channel and significance filters, so the same query can eventually replace majorHeadlines and per-channel postHighlights.
  • The All tab's fetch is gated on enabled: active so it doesn't fire while the user is on another tab.

Key decisions

  • Picked a dedicated static route (/highlights/all) over a query-param so Next.js prefetches the data and the URL is shareable. Static routes win over [channel].tsx in routing, so no guard needed there.
  • Added significance to PostHighlightFeedCard fragment now that it's a real field; the existing UI doesn't render it yet but the data is available.
  • Kept MajorHeadlinesTab and ChannelTab untouched — they still hit their existing endpoints. Migration to postHighlightsFeed can happen incrementally.

Test plan

  • Visit /highlights — Headlines tab renders as before, new All tab appears second
  • Click All — URL becomes /highlights/all, list shows newest highlights across all channels
  • Hard-refresh on /highlights/all — page loads, All tab stays active
  • Click a channel tab — All tab does not fire its query in the network panel
  • Navigate to /highlights/{channel}?highlight={id} — expanded item still scrolls into view

Closes ENG-1590


Created by Huginn 🐦‍⬛

Preview domain

https://eng-1590-add-all-tab-in-the-high.preview.app.daily.dev

idoshamun and others added 2 commits May 28, 2026 09:08
Render a new "All" tab after Headlines that lists every highlight across
channels, deduplicated by post and ordered by recency. The tab is wired to a
new /highlights/all static page so it survives a hard refresh, and uses the
new postHighlightsFeed GraphQL endpoint which accepts optional channel and
significance filters.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Include after in postHighlightsFeed query key so paginated cursors don't
  collide in cache
- Drop unused exports (POST_HIGHLIGHTS_FEED_PAGE_QUERY, query-key helper,
  PostHighlightsFeedPageData) and the single-call useAllHighlights hook
- Collapse the activeTab if/else chain into a direct expression

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@vercel
Copy link
Copy Markdown

vercel Bot commented May 28, 2026

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

Project Deployment Actions Updated (UTC)
daily-webapp Ready Ready Preview May 28, 2026 9:29am
1 Skipped Deployment
Project Deployment Actions Updated (UTC)
storybook Ignored Ignored May 28, 2026 9:29am

Request Review

@idoshamun idoshamun merged commit 688ee07 into main May 28, 2026
9 of 11 checks passed
@idoshamun idoshamun deleted the eng-1590-add-all-tab-in-the-highlights-page branch May 28, 2026 09:40
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.

1 participant