Commit Graph
6051 Commits
Author SHA1 Message Date
zeekay 82213f6b7b fix: remove hardcoded branding, use config-driven chain name everywhere
- Fix TS error in safeFormats plugin (use any for dayjsClass parameter)
- Replace hardcoded "Blockscout" with config.chain.name in DeFiDropdown
- Replace hardcoded "LUX" SVG text with config.chain.name in LogoFallback
- Use config.chain.name in NetworkIcon fallback aria-label
- Delete unused lux-logo.tsx (dead code with hardcoded branding)
2026-02-25 11:01:28 -08:00
zeekay 0cddfbf1ab fix: prevent dayjs crash when @reown/appkit-common changes global locale
@reown/appkit-common's DateUtil sets the global dayjs locale to
'en-web3-modal' which lacks a formats property. The localizedFormat
plugin crashes with "Cannot read properties of undefined (reading
'replace')" when lowercase format tokens (lll, llll) are used on
a locale without formats. Add a safety plugin that ensures formats
are always present on whichever locale the dayjs instance uses.
2026-02-25 10:49:18 -08:00
zeekay 675429cd30 Fix dayjs locale crash and modernize branding
- Preserve default dayjs locale formats (L, LL, LT, LTS, etc.) in
  updateLocale to prevent TypeError on format() calls
- Switch default font from Inter/Poppins to Geist Sans throughout
- Remove gas tracker stats and Add Network button from top bar
- Replace placeholder logo/icon fallbacks with Lux triangle branding
2026-02-25 07:47:30 -08:00
zeekay 992b7ac82c Add global .npmrc in Docker deps stage for deploy tool pnpm compat
Deploy tools install in separate directories without the app .npmrc,
causing strict pnpm resolution to break yup's tiny-case import in
envs-validator. Global /root/.npmrc with shamefully-hoist fixes this.
2026-02-24 19:27:25 -08:00
zeekay cd3619ae1b Remove bogus tsc package from feature-reporter, use direct bin commands
The `tsc` npm package (v2.0.4) is a warning shim, not the TypeScript
compiler. With pnpm, npx resolves it before the real tsc from the
typescript package. Fix by removing it and using direct bin names.
2026-02-24 18:48:02 -08:00
zeekay cda4e3c4e8 Add node-datachannel stub with polyfill subpath for next build
@libp2p/webrtc imports @ipshipyard/node-datachannel/polyfill which
requires native C++ compilation. Stub provides ESM+CJS exports for
both main and polyfill subpaths with no-op WebRTC classes. Also
ignores pnpm-lock.yaml in cspell and copies stubs dir in Dockerfiles.
2026-02-24 18:07:34 -08:00
zeekay 7049344343 Switch from yarn to pnpm, clean up dependency tree
- Replace yarn v1 with pnpm 10.11.0 across all build configs
- Move misplaced deps to devDependencies (cspell, esbuild, @openzeppelin/contracts, @next/bundle-analyzer, @types/papaparse, @types/react-scroll)
- Remove stale @types/[email protected] override — use correct React 19 types (fixes 22 type errors)
- Convert yarn resolutions to pnpm.overrides
- Update Dockerfile, Dockerfile.lux, CI workflows, and all shell scripts
- Add .npmrc with shamefully-hoist for Next.js compatibility
- Add outputFileTracingRoot to next.config.js
2026-02-24 17:35:30 -08:00
zeekay a5bd2ab9f0 Apply monochrome theme — pure black/white/grey, no blue accents
Replace all Blockscout default blue accent colors with monochrome
grey/whiteAlpha values for Lux branding. Background changed from
#101112 to pure black #000000.
2026-02-24 14:00:02 -08:00
zeekay b1b63dd524 Fix import ordering for toolkit/chakra/link 2026-02-24 02:52:27 -08:00
zeekay f0c4b1f03b Use toolkit/chakra/link instead of next/link per project lint rules 2026-02-24 02:39:54 -08:00
zeekay eed3030cf8 Use NextLink instead of anchor tag to satisfy no-html-link-for-pages 2026-02-24 02:28:22 -08:00
zeekay 5708716dda Fix Chakra v3 Text component: use anchor tag instead of as="a" 2026-02-24 02:16:30 -08:00
zeekay a24014bb8a Fix TypeScript null check for feature.oidc in callback page 2026-02-24 02:03:26 -08:00
zeekay 5c6f0f470d Add /auth/callback to all route type dictionaries 2026-02-24 01:50:55 -08:00
zeekay c54e9b612e Add /auth/callback to OG type dict for type safety 2026-02-24 01:37:40 -08:00
zeekay d6ea3c8158 Fix ESLint errors in auth callback page
- Fix import order: PageNextJs before configs/app
- Fix operator-linebreak: place ? and : at end of line
2026-02-24 01:27:26 -08:00
zeekay e7559c063b Fix GHCR auth: use GITHUB_TOKEN instead of GH_PAT
- Switch from secrets.GH_PAT to secrets.GITHUB_TOKEN for GHCR push
- Add Geist Sans font, dark theme, and chart build args
2026-02-24 01:14:31 -08:00
zeekay ea4fea4288 Update fonts to Geist Sans, merge upstream blockscout/frontend
- Switch heading and body fonts from Inter to Geist Sans
- Merge 2 upstream commits (name services schema fixes)
2026-02-24 01:12:58 -08:00
isstuevandzeekay d1dc40cb70 claude 2026-02-24 01:12:57 -08:00
tom goriunovandzeekay aa349ab54f Name service: use protocol list instead of chain ID (#3283)
* Name service: use protocol list instead of chain ID

Resolves #3281

* fix envs for demo
2026-02-24 01:12:57 -08:00
zooqueen 6c5d229352 feat(auth): add IAM login via hanzo.id for user accounts
Add OIDC authentication support using hanzo.id as the identity
provider for Lux Explorer user accounts.

- Add 'oidc' auth provider type alongside existing auth0/dynamic
- AuthGuardOidc: redirect-based OIDC login flow with CSRF state
- pages/auth/callback: authorization code exchange, token storage
- useApiFetch: pass Bearer token for OIDC-authenticated API calls
- account feature config: support NEXT_PUBLIC_OIDC_SERVER_URL and
  NEXT_PUBLIC_OIDC_CLIENT_ID environment variables
- .env.production: configure hanzo.id as default OIDC provider
2026-02-22 15:15:24 -08:00
zeekay b5c9960bb2 Merge upstream blockscout/frontend (29 commits)
Sync with upstream blockscout frontend, keeping Lux Network branding
in footer and documentation links. Added llms.txt link from upstream.
2026-02-22 00:59:24 -08:00
tom goriunovandGitHub 537f572f7d Add address highlight provider to transaction page and lists (#3266)
* add address highlight provider to the transaction page

* add address highlight provider to lists

* fix tests
2026-02-20 08:02:52 +01:00
tom goriunovandGitHub df09a8d295 UI: Tags in tables (#3261)
Resolves #3243
2026-02-19 18:11:15 +01:00
tom goriunovandGitHub e6e83ee4e7 Add cross-chain transaction tracking and visualization (#3227)
* envs and feature setup

* home page layout

* cross-chain txs page

* cross-chain transfers page

* cross-chain transfers on tx page

* cross-chain messages on tx page

* cross-chain tx page

* cross-chain tx details token transfers

* stats and counters for lists

* migrate to new API version

* add swagger

* mobile lists

* placeholder views on address page

* tests

* fix adaptive tabs initial state when there is only one tab in the list

* tweaks

* bug fixes

* fix tests

* update screenshots

* migrate to new api version

* add chain label tooltip, copy button to txs in lists and same address highlight

* list views on address page

* fix tests

* fix links to current address in the list views

* update tooltips

* update tables layout

* review fixes

* fix spelling

* update screenshots

* update screenshot
2026-02-19 15:14:32 +01:00
Igor StuevandGitHub 157226fdac NEXT_PUBLIC_API_KEYS_ALERT_MESSAGE schema fix (#3287) 2026-02-19 13:43:44 +01:00
tom goriunovandGitHub 401dc58402 Smart wallet auth (#3220)
* basic login button implementation

* refactoring and add dynamic auth button to the other pages

* connect wallet without authenticating an user

* login and logout user in blockscout account

* refactoring and RPC overrides

* authenticate user with connected wallet

* add ENS to profile button

* override evm chains and fix contract write with waas wallet

* disconnect wallet and fix docker build

* add dynamic imports to components that use web3 wallet packages

* refactor user profile directory

* clean up

* tweaks

* update pw ci script

* fix "connect wallet" button behavior

* handle linking email to profile with dynamic provider

* fix test

* async loading web3 hooks and remove dynamic loading from components that use them

* fix pw tests

* add account navigation in horizontal layout when auth provider is dynamic

* fix address verification modal

* review fixes

* spelling fixes
2026-02-18 19:42:44 +01:00
tom 4f614c4677 add "--no-must-find-files" flag to cspell command 2026-02-18 10:35:07 +01:00
tom b5f005bcb2 add bugbot rules 2026-02-13 12:09:33 +01:00
tom goriunovandGitHub fd52568916 Integrate cspell (#3279)
* add cspell config

* remove eslint plugin

* adjust pre-commit hook and add check to CI

* fixes
2026-02-13 07:48:43 +01:00
tom 42475a12a0 migrate to new response format from MegaETH flash blocks websocket 2026-02-12 18:20:49 +01:00
tom goriunovandGitHub af8b657f2e Remove success status from txs lists (#3276)
Resolves #3274
2026-02-11 12:17:29 +01:00
tom goriunovandGitHub 9070cb278b Add llms.txt to footer links (#3275)
* Add llms.txt to footer links

Resolves #3211

* update screenshots
2026-02-10 19:09:58 +01:00
tom goriunovandGitHub 8554a956de Migrage to 24-hour time format (#3273)
* Migrate to 24h time format

Resolves #3240

* update screenshot
2026-02-10 12:01:26 +01:00
wnhleeandGitHub 76b77e8f6c fix: correct missing base path in url (#3267)
* fix: correct missing base path in url

* test: add pw test for baseUrl fix

* chore: simplify tests

* chore: update snapshots
2026-02-09 18:48:25 +01:00
Igor StuevandGitHub 4608f617c3 My account: API keys section disclaimer (#3249) 2026-02-09 14:57:50 +01:00
Igor StuevandGitHub 7c82281ad7 Support is_smart_contract_address in search results (#3250) 2026-02-09 14:57:33 +01:00
tom 131811a946 update pw report workflow 2026-02-09 13:53:09 +01:00
tom 44a92a77e0 Enhance CI workflow for Playwright reports
- Added step to upload HTML report artifact if reports are generated and the PR is from a different repository.
- Updated conditions for uploading HTML report to S3 to ensure it only occurs under specific circumstances.
- Improved summary output to provide clearer instructions for accessing the report based on availability.
2026-02-09 13:49:15 +01:00
tom goriunovandGitHub 97a972b01d Add license check to CI (#3271)
add license check to CI
2026-02-09 11:41:12 +01:00
tom goriunovandGitHub a61238a75a Support emitted event date on the logs list (#3268)
* Support emitted event date on the logs list

* change copy button alignment in Logs

* update screenshots
2026-02-06 18:14:14 +01:00
tom 0f3442d3a4 disable automatic deployment on push to main branch in GitHub Actions workflow to prevent unnecessary deployments 2026-02-05 11:32:01 +01:00
tom a6723fb14e adjust rollbar config 2026-02-05 11:26:37 +01:00
tom goriunovandGitHub 7f05a9cbda Show small ERC-20 token balance instead of zero (#3264)
Resolves #1942
2026-02-05 11:25:31 +01:00
tom goriunovandGitHub db9ada61d9 Public tags form: send ReCaptcha payload to API (#3263)
* Public tags form: send ReCaptcha payload to API

Resolves #3262

* update screenshots
2026-02-05 11:24:10 +01:00
GimluComandGitHub f53371f0b3 fix for blob transactions tab (#3258)
rename blob_transaction_count
2026-02-03 19:58:01 +01:00
2ff074ee3b Release v2.6.1 (#3247)
* essential dapps config: switch to concurrent request and and add worker termination

* fix rollbar error logging and enable it for server errors

* fix for tokens request on address page

* update generator script for multichain config

* fix hot contracts interval select

* update screenshot

* update screenshots

* pass chainId to trackTransaction for essential dapps

* fix vertical alignment in hot contracts table

* bump next.js to v15.5.10

---------

Co-authored-by: isstuev <[email protected]>
Co-authored-by: Max Alekseenko <[email protected]>
2026-02-03 18:05:00 +01:00
tom goriunovandGitHub 15eb4e47f5 UI: Highlight color in dark theme (#3229)
UI: Highlight color

Resolves #3206
2026-02-02 15:30:00 +01:00
tom goriunovandGitHub 1895ee4901 Mobile. A/B test: txs/token transfers table view (address details page) (#3241)
* Mobile. A/B test: txs/token transfers table view (address details page)

Resolves #3230

* fixes and test

* [skip ci] change mixpanel event
2026-01-29 12:52:49 +01:00
4560961dc6 Switching to playwright blob reporter (#3221)
* Switching to playwright blob reporter

* Debugging report

* Uploading playwright results to service

* break block test

* add job to merge pw reports

* merge pw reports even if some shards have failed

* Uploading reports to S3

* Fixing aws s3 command

* Adding debug

* Fixing report path

* Fixing html report path

* Exporting playwright url as annotation

* print report link in workflow summary

* fix test

* generate report if only one exists

* break test again

* fix pw report job

* fix test

---------

Co-authored-by: tom <[email protected]>
2026-01-29 12:52:17 +01:00