### Description
Before this pull request, when calling `GET /api/v1/vaas?txHash={h}` for a hash that has multiple VAAs associated with it, we were just returning one. After this pull request, the API should return all of the VAAs associated with that transaction hash.
Tracking issue: https://github.com/wormhole-foundation/wormhole-explorer/issues/563
### Description
Tracking issue: https://github.com/wormhole-foundation/wormhole-explorer/issues/569
This pull request adds support for the "Base" blockchain in different parts of the codebase:
* The functions `domain.TranslateEmitterAddress`, `domain.EncodeTrxHashByChainID` and `domain.DecodeNativeAddressToHex`.
* The `tx-tracker` service: it now connects to a Base RPC node to fetch origin transaction metadata.
### Description
Tracking issue: https://github.com/wormhole-foundation/wormhole-explorer/issues/535.
This pull request fixes an inconsistency between the endpoints `GET /api/v1/x-chain-activity` and `GET /api/v1/top-chain-pairs-by-num-transfers`.
The inconsistency arose because the endpoints computed the data in slightly different ways.
It was resolved by modifying the `GET /api/v1/top-chain-pairs-by-num-transfers` endpoint to use the same data source as `GET /api/v1/x-chain-activity`.
### Summary
This pull request changes the retry logic in the `tx-tracker`.
When failing to process a transaction, the associated SQS message will be left to expire and will reappear after `visibilityTimeout` seconds. As a side effect, there will be several retries before giving up.
### Description
This pull request removes two unused fields from the `GlobalTransaction.OriginTx` JSON model:
* `timestamp`: this field is always set to the VAA's timestamp, making it redundant. Moreover, for EVM chains we need one extra RPC node request to get it. So better get rid of it.
* `chainId`: this field is always set to the VAA's emitter chain, making it redundant.
### Summary
This pull request modifies the API service to expose two endpoints for the Wormhole Scan UI:
* `GET /api/v1/transactions`: data needed to render the transactions list page.
* `GET /api/v1/transactions/{chain}/{id}/{sequence}`: data needed to render the transaction detail page.
Parse amount from metadata fields
Modify parser client to ParseWithMetadata
Add support to new vaa payload parser parse endpoint
Co-authored-by: Fernando Torres <fert1335@gmail.com>
### Description
This pull request implements an improvement in the processing logic of the `tx-tracker` service to avoid processing a message more than once.
### Description
This pull request implements improvements in the `tx-tracker` service:
* Adjust SQS visibilityTimeout.
* Process PythNet messages concurrently (this will make it easier for the service to catch up if there are a lot of messages in the input queue).
* Add more context information to error messages.
### Summary
The `api` component was importing and initializing the notional cache, but not using it.
This pull request removes the unnecessary dependency.
### Description
Tracking issue: https://github.com/wormhole-foundation/wormhole-explorer/issues/499
This pull request adds support in the `tx-tracker` service for the blockchains Terra, Injective, Acala and Karura.
Also, deployment settings were updated with reasonable defaults.
### Summary
Tracking issue: https://github.com/wormhole-foundation/wormhole-explorer/issues/415
When the `tx-tracker` service processes a VAA, sometimes the transaction is not finalized (e.g.:for chains with slow finality, VAAs with low consistency level, out-of-sync nodes). This problem was observed on chains like Solana, Ethereum and Polygon, but could have happened on other chains.
This pull request adds the logic needed to wait and retry processing the VAA, hoping that the originating transaction reaches finality.
Also, the `tx-tracker` service now uses a worker pool to process transactions, which will lead to higher throughput. This will benefit the WormholeScan UI, specially in the case when a large number of VAAs are emitted in a short period of time.