docs(snapshot): document hot take and reading history share placements - #6569
Draft
tomeredlich wants to merge 3 commits into
Draft
docs(snapshot): document hot take and reading history share placements#6569tomeredlich wants to merge 3 commits into
tomeredlich wants to merge 3 commits into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Adds one Storybook page — Features / Snapshot / Surfaces / Hot takes & history — recording where a share control belongs on the two hot-take frames (the swipe modal, the profile list) and on reading history. Each surface is drawn at desktop, tablet and mobile, with what ships today beside the placement the page argues for. No production surface changes. The controls are inert: the page compares placement, not behaviour. SnapshotIcon comes with it because the page draws it and it is not on main yet. Mockup-to-eng-pass: 1 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
tomeredlich
force-pushed
the
claude/snapshot-hot-takes-history
branch
from
September 2, 2026 14:47
0f35232 to
039f0f7
Compare
Each of the three surfaces was drawn twice, before and after. A review page for a change should show the change, so the before halves go: the modal's Float snapshot, the profile list with no share route, and the history row's ⋯ menu. The placement prop that switched between them, and the menu furniture only the history row needed, go with them. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The reading-history row is a pointer back to a post, so copying its link is the share that fits it. The control sits before the ⋯ menu, icon-only because the row already drops its vote buttons below laptop, and always visible rather than hover-gated so it survives touch. CopyStateIcon confirms on the button itself: the copy glyph and a green check share one grid cell, so nothing beside them moves during the swap. Gated on showCopyLink, which only the history list passes, so the reading-history modal keeps the DOM it has. ReadingHistoryList came into the strict-typecheck guard's scope with this change, which surfaced an untyped reduce accumulator and an unguarded Date built from an optional field. Both are typed now, with no change to what runs. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
One Storybook page — Features / Snapshot / Surfaces / Hot takes & history — recording where a share control belongs on the three surfaces that carry a hot take or a reading-history row.
No production surface changes. The controls on the page are inert: it compares placement, not behaviour.
What it records
Each surface is drawn at desktop, tablet and mobile, with what ships today beside the placement the page argues for.
HotAndColdModal.tsx): where people actually meet a hot take. The snapshot already ships on the top card, at Float beside the upvote pill. Decided: promote it to labeled and filled.HotTakeItem.tsx): the same opinion in a different frame, with no ⋯ menu and no share route at all. Decided: snapshot at XSmall, before the upvote counter.PostItemCard.tsx): the opposite case — each row is a pointer back to a post, so Copy link leads and the snapshot does not (feat(share): copy link on reading history rows behind share_history #6361).What comes with it
SnapshotIcon(3 files + one barrel export), which the page draws and which is not yet onmain. Nothing in production imports it yet.surfaceChrome.tsx, the shared page furniture for this family of surface pages. It has one consumer today; the sibling pages in docs(snapshot): document post page share placements in Storybook #6556 are the rest of the set, so it is deliberately not inlined.Split out of #6556, which carries the post-page surface and the live capture path.
Preview domain
https://claude-snapshot-hot-takes-histor.preview.app.daily.dev