Skip to content

feat: replace V4 announcement banner with permanent header button - #3089

Merged
sammdec merged 1 commit into
mainfrom
feat/add-v4-header
Aug 12, 2026
Merged

feat: replace V4 announcement banner with permanent header button#3089
sammdec merged 1 commit into
mainfrom
feat/add-v4-header

Conversation

@sammdec

@sammdec sammdec commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Summary

Retires the top-bar Aave V4 announcement campaign and surfaces V4 as a permanent destination in the header instead.

Changes

Banner removedgetCampaignConfigs() in MainLayout is now () => ({}), dropping the ten byte-identical per-chain "Aave V4 is now live on Ethereum mainnet." entries (base, sonic, mainnet, polygon, avalanche, arbitrum, optimism, xdai, bnb, ink). That was the only live campaign — routeCampaigns is empty, its one sGHO/OKX entry commented out.

TopBarNotify stays mounted and returns null when no campaign matches the current chain, so the banner mechanism remains available for the next campaign rather than being deleted.

Header button added — an "Aave V4" button sits to the left of Bridge GHO, linking to pro.aave.com. It mirrors the existing Bridge GHO / Swap buttons: variant="surface", same padding and spacing. The Link primitive applies target="_blank" rel="noopener" automatically for external hrefs, so no explicit target is needed.

The label shortens to V4 below 1120px. Its neighbours hide their labels at that breakpoint and fall back to an icon; this button is text-only, so it shortens instead — keeping "Aave V4" at every width wraps the label to two lines, overflows the 48px header, and pushes "Connect wallet" to wrap too.

AAVE_PRO_URL is now exported from MarketSwitcher instead of the URL being duplicated.

Testing

  • tsc --noEmit, eslint, and prettier all clean; no new warnings in the touched files.
  • Verified in the browser at 1440px (full "Aave V4" label), 1000px (V4, header on a single line), and 420px (V4 beside the icon buttons, mobile menu intact).
  • Console shows only pre-existing noise — no new errors or DOM-nesting warnings from the button.

Note

Users who dismissed the old banner keep stale bannerVersion_* / warningBarOpen_* localStorage keys. They're inert and get overwritten by the next campaign's bannerVersion, so no cleanup code was added.

🤖 Generated with Claude Code

Remove the top-bar V4 announcement campaign and surface Aave V4 as a
permanent destination in the header instead.

- Empty getCampaignConfigs() in MainLayout, dropping the ten identical
  per-chain "Aave V4 is now live" entries. TopBarNotify stays mounted and
  renders null with no matching campaign, so the banner mechanism remains
  available for future campaigns.
- Add an "Aave V4" button to the left of Bridge GHO, linking to
  pro.aave.com. The Link primitive applies target="_blank" rel="noopener"
  for external hrefs. Label shortens to "V4" below 1120px so the header
  stays on a single line.
- Export AAVE_PRO_URL from MarketSwitcher rather than duplicating the URL.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@odin-by-borg

odin-by-borg Bot commented Aug 12, 2026

Copy link
Copy Markdown

Mjolnir Security Review

VerdictCLEAN · 0 findings
Commit783931c · 11s

No security vulnerabilities identified. This PR is a purely cosmetic UI refactoring: it exports a hardcoded constant URL (https://pro.aave.com/), adds a static navigation button to the application header, and removes redundant campaign banner configurations. All URLs are hardcoded strings with no user-controlled input, and no security-sensitive operations (authentication, authorisation, data handling, redirects based on user input) are affected.

View in Odin


11 PRs reviewed

@vercel

vercel Bot commented Aug 12, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
interface Ready Ready Preview Aug 12, 2026 9:17am

Request Review

@github-actions

Copy link
Copy Markdown

@github-actions

Copy link
Copy Markdown

📦 Next.js Bundle Analysis for aave-ui

This analysis was generated by the Next.js Bundle Analysis action. 🤖

🎉 Global Bundle Size Decreased

Page Size (compressed)
global 1.32 MB (-7 B)
Details

The global bundle is the javascript bundle that loads alongside every page. It is in its own category because its impact is much higher - an increase to its size means that every page on your website loads slower, and a decrease means every page loads faster.

Any third party scripts you have added directly to your app using the <script> tag are not accounted for in this analysis

If you want further insight into what is behind the changes, give @next/bundle-analyzer a try!

Six Pages Changed Size

The following pages changed size from the code in this PR compared to its base branch:

Page Size (compressed) First Load
/ 96.01 KB (🟡 +2 B) 1.42 MB
/dashboard 85.59 KB (🟡 +2 B) 1.41 MB
/markets 54.89 KB (🟡 +2 B) 1.38 MB
/safety-module 56.45 KB (🟡 +2 B) 1.38 MB
/sgho 92.99 KB (🟡 +2 B) 1.41 MB
/v3-migration 52.64 KB (🟡 +2 B) 1.37 MB
Details

Only the gzipped size is provided here based on an expert tip.

First Load is the size of the global bundle plus the bundle for the individual page. If a user were to show up to your website and land on a given page, the first load size represents the amount of javascript that user would need to download. If next/link is used, subsequent page loads would only need to download that page's bundle (the number in the "Size" column), since the global bundle has already been downloaded.

Any third party scripts you have added directly to your app using the <script> tag are not accounted for in this analysis

Next to the size is how much the size has increased or decreased compared with the base branch of this PR. If this percentage has increased by 20% or more, there will be a red status indicator applied, indicating that special attention should be given to this.

@sammdec
sammdec requested a review from abjt14 August 12, 2026 09:34
@sammdec
sammdec merged commit 7255f05 into main Aug 12, 2026
21 of 22 checks passed
@sammdec
sammdec deleted the feat/add-v4-header branch August 12, 2026 10:03
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.

3 participants