Commit Graph
596 Commits
Author SHA1 Message Date
tom goriunovandGitHub b46498e3f3 Show “Pending update” status for blocks & transactions (#2997)
Fixes #2951
2025-09-16 13:12:33 +02:00
Igor StuevandGitHub 90a450c438 232fixes (#3009)
* status filter fix

* asset filter fix

* fix pagination 2
2025-09-12 15:05:49 +02:00
tom goriunovGitHubRichard OhMax AlekseenkoisstuevIgor Stuevdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Richard J Oh
60a7d97164 Clusters name sevices integration (#2994)
* adds clusters api configs

* adds clusters api configs

* adds api types

* adds props routes and titles for cluster pages

* adds query param enum for clusters api

* adds clusters svg

* adds dynamic page routes

* adds clusters entity ui in ui/shared/entities

* adds functions to detect input type; will be used to check whether a user is searching for a cluster name vs a evm address

* adds stubs for loading skeleton view

* adds pagination hook

* adds query param hooks for clusters trpc endpoints

* adds query param hooks for clusters trpc endpoints

* adds components that make up the /clusters ui

* adds components for /cluster ui

* adds clusters api endpoint to query by cluster id

* implements call to cluster id endpoint to get ac
tive chain count

* adds clusters search types and in api category

* creates clusters search hook and wraps useQuickSearchQuery hook

* replaces useQuickSearchQuery for useSearchWithClusters hook for both functionality

* add search suggestion ui

* adds optional chaining to handle react re-render when search type changes

* adds cluster ui to ui/pages/address on address details

* prevents clicking on cluster suggestion if address is non EVM

* adds util functions for testability along with tests, for action bar component logic

* refactor - extract clusters display logic wit
h tests

* refactor: extract page utilities from Clusters.tsx with tests

* adds jest testing infra for react components

* adds hook testing coverage

* adds component and integration tests

* adds detectInputType util tests

* removes generic parameters from clusters pagination types

* replaces any type with proper cluster config types

* adds cluster routes to metadata and analytics mappings

* updates order and stacks action bar items vertically when mobile view

* repositions clusters logo

* refactors search logic to render community clusters in search sugge
st

* adding clusters env vars

- add NEXT_PUBLIC_CLUSTERS_API_HOST and NEXT_PUBLIC_CLUSTERS_CDN_URL env vars
- configure clusters api integration in configs/app/apis.ts and features/clusters.ts
- adds clusters env vars to test env (.env.jest and .env.localhost)
- update CI deploy configs for both review envs
- add env vars validation schema
- document new vars in ENVS.md with usage examples

* centers directory/leaderboard toggle in mobile view

* resizes and sets proper color to logo in entity component

* hides clusters nav when clusters env is missing

* removes duplicate trailing slashes in cluster community names

* Bump `react` to v19 (#2782)

Co-authored-by: tom <[email protected]>

* change links to ton explorer

* fix internal links in ENVS.md file

* tx info: tac operation stage could be an array

* fix display of ad banner

* tac ui updates

* add more "button click" events

* update clock icon

* update screenshots

* fix age filter reset

* change tac operation status once again

* fix address icon tooltip content

* [skip ci] label released issues workflow: don't override release tag if it exists

* puzzle-15 (#2471)

* puzzle-15

* puzzle-review

* puzzle game

* puzzle fixes

* separate puzzle feature in readme

* fix testnet and rollup stage badges

* New styles for pagination and "Add / Remove" buttons (#2791)

* update styles for add / remove buttons

* update pagination styles

* change border color for filled inputs

* change row gap for alerts

* update icons and screenshots

* fix tests

* update buttons for contract method form

* update screenshot

* Gas tracker: bug fixes and improvements (#2792)

* Gas tracker page: hide `Gas price history` if chart is not enabled

Fixes #2781

* change default value for NEXT_PUBLIC_GAS_TRACKER_UNITS for testnets

* fix env for pw tests

* Public tags form improvements (#2796)

* adjust validation of comment field

* add icon url to public tag form

* update screenshots

* fix ts

* NFT marketplaces: make `collection_url` and `instance_url ` optional (#2797)

Fixes #2614

* Bump brace-expansion from 1.1.11 to 1.1.12 in /deploy/tools/affected-tests (#2801)

Bump brace-expansion in /deploy/tools/affected-tests

Bumps [brace-expansion](https://github.com/juliangruber/brace-expansion) from 1.1.11 to 1.1.12.
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](https://github.com/juliangruber/brace-expansion/compare/1.1.11...v1.1.12)

---
updated-dependencies:
- dependency-name: brace-expansion
  dependency-version: 1.1.12
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* allow toaster to render custom description

* Encode the address hash for links to the TON chain (#2813)

Encode the address hash for links to the TON chain.

* Support redirects for known address discrepancies (#2799)

* Support redirects for known address discrepancies

Fixes #2793

* fix redirect to internal txs in the block

* add address user ops redirect

* Celo: support L2 epochs (#2784)

* epochs page

* epoch rewards distribution

* epoch election rewards

* address epoch rewards

* block epoch tag

* add some  tests

* adjust epoch details for L1 epochs

* support non-finalized epochs

* fixes after design review

* add truncation to block numbers on mobile

* update epochs table layout

* update timestamp hint

* fix bug with subheading of first epoch

* fixes of mobile view

* update screenshots

* Icons in footer links (#2809)

* Icons in footer links

Fixes #2539

* fix envs validator

* Metadata: send address to fetchers once visited (#2814)

* Metadata: send address to fetchers once visited

Fixes #2723

* fix ts

* replaces jest-dom matchers with standard matchers

* makes /clusters page default view the directory instead of leaderboard, including jest coverage

* updates columnn name from backing to total backing, in leaderboard display

* alphabetically reorders clusters export

* adds Cluster section to the Table of Cont
ents at top of page

* removes redundant Flex component wrapper around ClustersEntity

* uses standard toolkit values for border radius and color

* uses getFeaturePayload util instead of type coercion

* extends ImageProps interface to ClusterIconProps, and uses getFeaturePayload util instead of type coercion

* adds evm address regexp in regexp.ts as single source of truth

* updates imports for files that used form validator address regexp to use single source of truth

* removes unused args, unnecessary type coercions and memoizations. upper snake case constant values.

* sets correct action bar height using ACTION_BAR_HEIGHT_DESKTOP constant

* implements TimeFormatToggle to Joined column

* simplifies conditionals and removes unnecessary Box component wrapper

* displays standard 404 error screen on  erroneous ClusterDetails query

* standardizes details page to display ETH value and time in line with rest of app

* removes redundant debouncing

* moves useQueryParams hook to lib/router and updates imports and test to account

* moves config.features.cluster
s.isEnabled to top of the function and utilizes select function of useQuery in useAp
iQuery

* removes unnecessary 3rd column and isContractVerified since it is always false

* checks clusters enable for placeholder

* makes isClusterClickable condition more generic for future repurpose

* splits isEvmAddress out to general purpose utility in lib/address, update imports and test

* moves all cluster hooks and tests to lib/clusters folder

* wraps action bar with standard button wrapper

* makes nextjs-routes mock condition stricter

* adds mock clusters api data

* adds pw tests for cluster detail page

* adds pw tests for clusters directory page

* adds pw tests for clustersentity ui component

* adds mock envs for pw tests

* adds clusters api host and cdn url to env.pw

* fixes resolve react-hooks/rules-of-hooks violation in cluster search while keeping search optimization

* throws error instead of using app error component

* uses semantic token to reference color as per standard method in chakra ui

* removes empty or loading state pw tests

* pw tests - uses mockAssetResponse for icons, removes redundant tests, and updates vie
wport to narrow test case

* migrates all clusters pw tests from page.route to mockApiResponse

* updates docker generated pw screenshots

* removes object cloning in useSearchWithClusters hook

* uses standardized chakra name for backgroundColor

* resolves Clusters.pw.tsx docker screen generation issues and updates screenshots

* removes unneeded screenshots for Cluster.pw.tsx

* standardizes mobile testing approach with +@mobile tag by removing explicit viewport config, updates screenshots

* reverts expanded pw test coverage for ClustersEntity

* removes all clusters pw screenshots

* removes nested describe which was resulting in a failed test

* uploads latest docker generated screenshots for pw

* force trigger for conflict check

* removes repeating var from blockchainNavItems array

* fix screenshot merge conflicts - use upstream versions

* updates yarn.lock with upstream lib

* fix jest tests by mocking useQuery directly to resolve QueryClient context issues

* creates global mock object and proper typing to reduce duplication

* updates clusters pw screenshots with docker generation. update helia to 3.2.0 and pinned esbuild to 0.21.5. update docker dep script.

* updates yarn.lock

* removes unused imports from upstream/main

* add vite aliases for @libp2p/utils and @helia/verified-fetch to resolve playwright build failures

* updates pw screenshots for hero banner, home page and desktop header

* downgrades helia to v2.6.12

* revert changes in yarn.lock file related to helia package

* updates yarn.lock with helia downgrade

* revert changes in yarn.lock

* move clusters to the tab on the name service page

* fix tests

* small tweaks

* update screenshots

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Richard Oh <[email protected]>
Co-authored-by: Max Alekseenko <[email protected]>
Co-authored-by: isstuev <[email protected]>
Co-authored-by: Igor Stuev <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Richard J Oh <[email protected]>
2025-09-08 19:21:15 +02:00
tom goriunovandGitHub 38f0dd8552 Public tags: abstract deposit name tags (#2972)
* Public tags: abstract deposit name tags

Fixes #2964

* rename cex_deposit to cexDeposit
2025-09-08 11:31:06 +02:00
Igor StuevandGitHub 3390479f1d zeta chain cctx (#2904)
* zetachain start

* zeta chain cctx table

* pagination

* cctx page init

* meta for new route

* remove backlink

* schema

* continue

* fix

* navigation

* filters to test

* some fixes

* add chain filter

* add error message and revert options

* address chain logo fix

* cctx search

* socket

* fix conflict

* fixes1

* fixes2

* fixes3

* fixes4

* fixes5

* tests

* fixes6

* test fixes

* revert options fix

* stats and revert semi-fix

* fix readme

* cleanup

* check for cctx in lifecycle

* update config

* fixes 8

* fixes 9

* update config

* fixes10
2025-09-05 15:53:00 +02:00
tom goriunovandGitHub 3792a8269f Bump up Next.js, typescript and other packages (#2988)
bump up Next.js, typescript and other packages
2025-08-29 15:39:53 +02:00
Igor StuevandGitHub e716b25805 beacon deposits (#2947)
* beacon deposits start

* some fixes

* test

* counters

* conflict fix

* fix mock
2025-08-22 12:11:54 +02:00
tom goriunovandGitHub 02438e6723 Rename API fields for OP interop messages and 3rd-party API routes (#2949)
* rename field for op interop messages

* rename 3rd party API routes

* fix tests
2025-08-15 19:59:30 +02:00
tom goriunovandGitHub 996bc0cb74 Support geas smart contract language 🪿 (#2848)
* Support for `geas` smart contract language 🪿

Fixes #2818

* support fallback method with inputs and outputs

* fix data that is passed to fallback method

* add "pragma" and "define" to builtins

* add "inputs" and "outputs" to the fallback method for all contracts ABI
2025-08-15 13:22:21 +02:00
tom goriunovandGitHub 9da14c79d9 Flashblocks for Base chains (#2919)
* flashblocks tab

* add env variables

* minor fixes

* fix ts

* change package for decompressing socket data

* design updates

* [skip ci] delete unused env

* automatic mode switching for table

* fix validator schema
2025-08-15 12:09:59 +02:00
tom goriunovandGitHub d0e2ea1685 Update styles for detailed views on mobile and more (#2875)
* update styles of tx details

* common color for text separator

* remove bold fontWeight from some details items

* address, block, token, pool, user ops details pages

* refactor chain-specific views

* unify grid column template for detailed views

* remove TODO

* update margins for text separator

* update screenshots

* update margin between icon and text for mobile

* rename prop

* update layout of decoded input data

* update screenshots

* fix tac operation and zilliqa quorum snippets
2025-08-12 22:56:03 +02:00
Igor StuevandGitHub d8b29d6262 address relation from query (#2938) 2025-08-12 17:26:49 +02:00
Igor StuevandGitHub b5728ad26d reorg block fix (#2936) 2025-08-12 14:54:58 +02:00
tom goriunovandGitHub c98386686d Display and handle status field in smart contract view (#2807)
* Display and handle `status` field in smart contract view

Fixes #2658

* change text of the alerts
2025-07-01 15:29:38 +02:00
tom goriunovandGitHub 27679057ff Celo: support L2 epochs (#2784)
* epochs page

* epoch rewards distribution

* epoch election rewards

* address epoch rewards

* block epoch tag

* add some  tests

* adjust epoch details for L1 epochs

* support non-finalized epochs

* fixes after design review

* add truncation to block numbers on mobile

* update epochs table layout

* update timestamp hint

* fix bug with subheading of first epoch

* fixes of mobile view

* update screenshots
2025-06-30 17:44:10 +02:00
tom goriunovandGitHub 06e085d588 Add support for Ton Application Chains (#2722)
* operation lifecycle accordion

* operation entity

* adapt layout to mobile device

* basic operations view

* pass response data to operation details

* update types package

* tac operation status and links to tx on ton

* feature config, docs and operation badge

* add info to tx page

* add operations to search

* search input on operations page

* tests

* update tooltips and temporary fix of ts

* add InterFallback typeface with → glyph

* design and api updates

* support new API version

* add time format toggle

* add shield to entity icon

* minor fixes

* update screenshots

* clean up

* fix screenshot
2025-06-05 11:47:47 +02:00
Igor StuevandGitHub e33847c10f Add support for uniswap_v4 pools (#2748) 2025-06-04 16:20:23 +02:00
tom goriunovandGitHub 27829ff35d Block page: internal transactions tab (#2721)
* Block page: internal transactions tab

Fixes #2698

* add counter
2025-06-04 15:03:09 +02:00
tom goriunovandGitHub 6ee7ba1d10 Internal transactions page: add search by hash (#2715)
Fixes #2623
2025-06-04 14:29:05 +02:00
tom goriunovandGitHub 88ce7b3c58 Reflect new smart-contract proxy patterns in UI (#2720)
Fixes #2692
2025-05-12 08:16:42 +02:00
tom a36a811316 Merge branch 'main' of github.com:blockscout/frontend into release/v2-0-0 2025-04-24 13:15:30 +02:00
tom goriunovandGitHub 158d0ed95b Migrate to the props with consistent full naming in the API for addre… (#2694)
* Migrate to the props with consistent full naming in the API for address hash entity and multiple props for L2-rollups

Fixes #2686

* fix test
2025-04-24 13:13:18 +02:00
tom d57953aee6 transactions_count for Scroll batch could be null 2025-04-23 15:22:04 +02:00
tom goriunovandGitHub 28fc3be9be UI toolkit package (#2691)
* first version of the pack

* single entry point

* add custom components to the package

* move form components to toolkit

* add more utils and hooks to the package

* minor fixes

* add CI workflow

* update readme and package.json

* fix ts

* fix build of env-validator

* fix docker build

* fix icons size

* test fixes

* more test fixes
2025-04-21 19:44:22 +02:00
Max AlekseenkoandGitHub fd3c4cc028 Merits: activity cards and tracking (#2662) 2025-04-15 19:59:09 +02:00
tom goriunovandGitHub b88fe22acb Remove proxy_type field from SmartContract model (#2671)
* remove `proxy_type` field from SmartContract model

* fix ts
2025-04-15 15:23:44 +02:00
tom 8443f19f33 Merge branch 'main' of github.com:blockscout/frontend into chakra-v3 2025-03-26 15:43:24 +01:00
d0611cecb9 Improvements for NFT media (#2643)
* Show NFT image for token transfers

Fixes #2547

* rewrite logic of loading NFT media

* make amends to NftEntity

* show original media size only in the modal

* immutable envs

* tests

* fix fallback condition

* fixes

* fix one more test

* Removing blockscout-ci-cd from helm repo

---------

Co-authored-by: Nick Zenchik <[email protected]>
2025-03-25 13:53:27 +01:00
Max AlekseenkoandGitHub 52e116c84f Support custom ref codes (Merits) (#2631)
support custom ref codes
2025-03-25 13:30:05 +01:00
Igor StuevandGitHub 0c96bc18a0 Interop (#2585)
* interop

* fixes

* fix skeleton

* tests

* review fixes
2025-03-25 12:28:10 +01:00
tom de06eb0565 Merge branch 'main' of github.com:blockscout/frontend into chakra-v3 2025-03-11 20:25:18 +01:00
tom 7edd69fce6 fix some ts errors 2025-03-11 13:11:26 +01:00
tom b422968ec3 remove unused field has_decompiled_code 2025-02-27 14:17:04 +01:00
tom 16f1c01240 fix: block rewards fields can be null 2025-02-27 14:15:39 +01:00
tom 8de6329654 validators page 2025-02-26 15:48:46 +01:00
isstuev 61db6bb3af add n/a pool token fdv/mc 2025-02-19 13:19:59 +03:00
tom affdc8a636 tokens page 2025-02-19 09:42:22 +01:00
tom fbe9e2e555 Merge branch 'main' of github.com:blockscout/frontend into chakra-v3 2025-02-18 15:05:52 +01:00
tom c7860dd0f0 accounts and verified contracts pages 2025-02-17 20:16:26 +01:00
2073256bf2 Support metadata_tag type in search (#2559)
* Support metadata_tag type in search

* Update ui/searchResults/SearchResultListItem.tsx

Co-authored-by: tom goriunov <[email protected]>

---------

Co-authored-by: tom goriunov <[email protected]>
2025-02-13 10:15:44 +01:00
tom goriunovandGitHub cd5fa2ee92 Arbitrum messages claiming (#2533)
* txn withdrawals page stub

* add base page layout

* add ConnectWallet alert

* save search term in page query param

* add links to the new page

* add functionality to claim button

* combine "Connect wallet" and "Claim" buttons

* Refactor rollup configuration to introduce ParentChain structure and deprecate legacy environment variables

* handle txn claim

* allow to pass array of RPC urls for parent chain config

* display token value and completion tx hash

* fix csp

* write tests for arbitrum l2 txn withdrawals

* fix ts

* review fixes

* update screenshots and hide button if the txn is not confirmed yet
2025-02-11 10:36:36 +01:00
tom goriunovandGitHub 85cfaf056d Zilliqa: Validator views (#2557)
* list of validators

* validator details page

* clean up

* review fixes
2025-02-11 09:59:02 +01:00
tom goriunovandGitHub 586d537080 Show Celestia Blobs on Arbitrum chains (#2562)
* DA info

* ENV variable

* celestia batch page

* tests

* fix ts

* [skip ci] fixes
2025-02-11 09:42:33 +01:00
tom goriunovandGitHub 1b0a9ff17f UX changes for BS / Merits login (#2541)
* UX changes for BS / Merits login

Fixes #2535

* fix ts

* refetch user balance after unified login

* fixes
2025-02-07 16:03:39 +01:00
tom f003493c2e noves assets flow tab 2025-02-07 10:10:59 +01:00
Igor StuevandGitHub b7f9247b3c Pools: support quote_token fdv and market_cap values (#2546) 2025-02-04 15:14:18 +01:00
Igor StuevandGitHub 38b2a65b8e Create new Type to show DEX tag in summary header (#2543)
* Create new Type to show DEX tag in summary header

* Add new response variable for interpreter
2025-02-04 15:14:01 +01:00
Igor StuevandGitHub 22d8c16bf4 Show decoded target address in User operations (#2520) 2025-02-04 15:13:18 +01:00
tom db50c51ed2 styles for sort button 2025-02-03 13:58:16 +01:00
tom goriunovandGitHub 4daa8b4027 Support EIP-7702 addresses (#2523)
* tx info customizations

* authorizations tab

* implement change for address page

* amends
2025-01-31 14:26:11 +01:00