Skip to content

Verify page: don't let the action bar cover the email when embedded - #32

Merged
Divide-By-0 merged 1 commit into
mainfrom
stack/11-embed-action-bar
Oct 5, 2026
Merged

Divide-By-0 merged 1 commit into
mainfrom
stack/11-embed-action-bar

Conversation

@Divide-By-0

@Divide-By-0 Divide-By-0 commented Oct 5, 2026 •

Copy link
Copy Markdown
Member

Human intent

Aayush embeds Redacted verify pages in his blog (an iframe per proof). In the embed, a floating icon sat on top of the email text and looked like a stray logo. He asked to fix the website so embeds show the email accurately.

Cause

ActionBar is position: fixed at the bottom of the viewport. Inside a ~720 px iframe that is mid-email, so it covered the text, and below the md breakpoint its label is hidden, leaving only the icon.

Change

  • VerifyPage: detect being iframed (window.self !== window.top, treating a throw as embedded) and render the bar inline after the email instead of fixed.
  • ActionBar: new inline prop; the Verify Proof label is always shown, so it's never an unlabeled icon.
  • Standalone page: pb-32 on main so the end of the email can scroll clear of the fixed bar.

The standalone layout is otherwise unchanged.

Checks

  • yarn tsc -b and vite build pass.
  • Ran vite against the production API, iframed two real verify pages at 720 px, and confirmed the bar renders below the email card, labeled "Verify Proof", with no overlap (screenshot in a comment below).

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Improvements
    • The verification action bar now adapts its layout when the page is embedded, avoiding overlap with page content.
    • The verify-proof label remains visible at smaller screen sizes.

…edded

In an iframe (e.g. a blog embedding a proof) the viewport is short, so the
fixed bottom bar sat on top of the email text and, below md, showed only an
unlabeled icon. When embedded, render the bar in normal flow after the
email; always label the verify button; reserve bottom padding on the
standalone page so the end of the email can scroll clear of the fixed bar.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Divide-By-0

Copy link
Copy Markdown
Member Author

Embed check at 1c1b7b0: vite dev against the production API, verify page iframed at 720 px (proof 46767a57…). The "Verify Proof" bar renders labeled, below the email card, with nothing over the text.

redacted-embed-fixed

@coderabbitai

coderabbitai Bot commented Oct 5, 2026

Copy link
Copy Markdown

Review in Change Stack →

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: ad64098f-cb92-4cdc-b69c-a15ed2ea7565
📥 Commits

Reviewing files that changed from the base of the PR and between e2907d6 and 1c1b7b0.

📒 Files selected for processing (2)
  • src/components/ActionBar.tsx
  • src/pages/VerifyPage.tsx
 ______________________________________________________________________________________________________
< Fools ignore complexity. Pragmatists suffer it. Some can avoid it. Geniuses remove it. - Alan Perlis >
 ------------------------------------------------------------------------------------------------------
  \
   \   (\__/)
       (•ㅅ•)
       /   づ
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@Divide-By-0
Divide-By-0 merged commit 8f622c1 into main Oct 5, 2026
3 of 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.

1 participant