Three write-once-deploy-4 root causes from the 4-res audit:
1. Horizontal overflow (454px @1280, 38px @1920). The shared layout
Container forced 'min-w-[100vw] lg:min-w-[fit-content]', promoting the
whole page to its ~1734px max-content width so stat/block cards clipped
past the viewport. Make it a fluid column ('w-full min-w-0') and add
'min-w-0' to MainColumn so the flex chain shrinks and inner
overflow-x-auto regions scroll internally -> document.scrollWidth ==
innerWidth at every breakpoint.
2. White-on-white values (block Reward / tx Value / tx Fee /
network-utilization%). These passed legacy Chakra dot-tokens
('text.secondary', 'green.600'...) straight into an inline CSS 'color',
which browsers drop as invalid -> the text inherited white. Add one
resolveColorToken() helper (dot-token -> var(--color-*)), apply it in
SimpleValue (the value chokepoint for Reward/Value/Fee), and point
getNetworkUtilizationParams at real theme vars (bright badge fg shades,
all >=4.5:1 on the light card bg).
3. Broken 'Menu' button: the wallet/settings button stacked a 20px icon
over its label in a bare div inside a 32px overflow-hidden button (the
'51px in 32px' clip that read as a stray hamburger at lg+). Lay the
icon+label out horizontally (flex items-center gap-2, sized icon).
Co-authored-by: Hanzo Dev <[email protected]>
- Redesign TopBar as single unified header: logo + nav + controls
- Add NetworkSelector dropdown (Mainnet/Testnet/Devnet)
- Monochrome ChainSwitcher (kill blue panel)
- Connect wallet button via UserProfileDesktop in header
- Remove NavBar and SideBar (nav now in TopBar)
- Simplify HeaderDesktop to search bar only
* refactor widgets on home page
* coming soon placeholder component
* top accounts page
* contract data
* address ERC-20 tokens list
* chain filter for address ERC-20 tokens
* token select for address detailed view
* address details fields
* tokens table
* stats widgets on home page
* chain indicators graph on the home page
* quick search
* search results all tab
* tabs and chain select on search results page
* search results mobile view
* add contract info to search and address details
* add text filter for tokens and search improvements
* load all results inside tab on search results page
* token balance info
* add support for domains in the full search
* Multichain explorer
Resolves#2989
* add envs validator for multichain
* add some tests
* fix search bar on search results page on mobile
* home stats fixes
* fix ts
* optimize amount of queries on address page
* add more contract info on address page
* add enter key hint to search input
* fix tests
* fix test
* update bg.primary css-variable on color theme change
* sitemap for multichain
* txs page: render first tab if blob tab is not available on the chain
* filter out in active chains from chain select on address page and user ops page
* add chain icon to advanced filter table
* fix tooltip on entity with shield
* fix ts
* show contract implementations
* fixes
* add chain icon to all lists
* refactor zetachain chains config type
* use chain id as primary option instead of chain slug
* refactor chain config type for multichain and essential dapps
* refactor chain icon and chain select
* rename chain-slug in chain_slug
* change default radius of chain icon and update screenshots for multichain tests
* change conditions for "isContract" and "isVerified"
* test fixes
* make shield optional for external chain entities
* add chain icon to approvals lists
* add stats page for multichain
* add chain postfix to chart .png and .csv assets name
* fix tests
* sync verified contracts language filter and fix loading state in the search results page
* fix sol2uml diagram and csv export
* regcred from helmfile for review
* link fixes
* fix state for unknown address
* fix incorrect chain in the context during spa transition to the same route on different chain
* add links to stats widgets
* add mixpanel to L2 demo values
* show message of on-demand contract verification
* fix screenshots
---------
Co-authored-by: Nick Zenchik <[email protected]>
* page placeholder
* block info snippet
* add actions for calendar buttons
* add timer
* add redirect when timer runs out
* add redirect from not found block page
* block countdown index page
* link to countdown index page
* add link to search suggest
* add URL to an event
* add link to block countdown on mobile
* tests
* add countdown text to search result page
* update margins
* show block countdown when search results are not empty
* add ENV for navigation layout type
* add network menu to top bar
* renaming and main component placeholder
* add logo, testnet badge, login and connect wallet buttons to the nav bar
* refactor once more
* styles for nav link group
* style nav link
* style groupped nav links
* update values for L2 review
* update demo values
* fix deployment values for L2 review
* tests
* fix prop collision
* shorten filter input on marketplace page and update MainArea height
* change margin between text and lightning label
* add active state to "Other" nav menu
* popover fixes
* fix link width
* [skip ci] update demo values
* fix mobile logo position
* fix account balance large values
* decrease layout top padding
* change mobile layout for domain page subtitle
* update screenshots
* quick demo with slider
* change api host to eth
* add styles for color mode switch
* save selected hex in cookie
* style tweaks
* redesign and top bar
* mobile view of top bar
* top bat stats
* change api host for review env
* test and fix default color mode
* review fixes and refactoring
* update screenshots
* Remove "only" from extendedTest in
SearchResults.pw.tsx
* [skip ci] select first color when clicking on theme row
* Update color mode switch styles
* [skip ci] rollback review env values
* [skip ci] 💩💩💩 i need psychotherapy
* [skip ci] ":"
* fix footer layout
* update csv export text
* fix pw tests
* base layout and customization for home page and search results page
* refactor rest of the pages
* refactor AppError
* move header padding to layout
* move nextjs utils to separate folder
* combine PageServer and Page
* make useQueryClientConfig hook
* add tests
* remove unused var
* fix envs for pw
* fix pw tests