Documentation ¶
Index ¶
- Constants
- type AddressSolTransactionResp
- type AddressSplTransactionResp
- type AddressSummaryData
- type AddressTransactionRequest
- type ChainExplorerAdaptor
- func (cea *ChainExplorerAdaptor) GetAccountBalance(req *account.AccountBalanceRequest) (*account.AccountBalanceResponse, error)
- func (cea *ChainExplorerAdaptor) GetMultiAccountBalance(req *account.AccountBalanceRequest) ([]*account.AccountBalanceResponse, error)
- func (cea *ChainExplorerAdaptor) GetTokenList(req *token.TokenRequest) ([]token.TokenResponse, error)
- func (cea *ChainExplorerAdaptor) GetTxByAddress(request *account.AccountTxRequest) (*account.TransactionResponse[account.AccountTxResponse], error)
- func (cea *ChainExplorerAdaptor) GetTxByHash(request *transaction.TxRequest) (*transaction.TxResponse, error)
- type TokenListResp
- type Transaction
Constants ¶
View Source
const ChainExplorerName = "solscan"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AddressSolTransactionResp ¶
type AddressSolTransactionResp struct { Total uint64 `json:"total"` Data []struct { Slot int64 `json:"slot"` BlockTime int64 `json:"blockTime"` TxHash string `json:"txHash"` Src string `json:"src"` Decimals int64 `json:"decimals"` Dst string `json:"dst"` Lamport int64 `json:"lamport"` Status string `json:"status"` Fee int64 `json:"fee"` } `json:"data"` }
type AddressSplTransactionResp ¶
type AddressSplTransactionResp struct { Total uint64 `json:"total"` Data []struct { Slot int64 `json:"slot"` BlockTime int64 `json:"blockTime"` Signature []string `json:"signature"` ChangeType string `json:"changeType"` ChangeAmount string `json:"changeAmount"` Decimals int64 `json:"decimals"` PostBalance string `json:"postBalance"` PreBalance string `json:"preBalance"` TokenAddress string `json:"tokenAddress"` Owner string `json:"owner"` Fee int64 `json:"fee"` Address string `json:"address"` Symbol string `json:"symbol"` TokenName string `json:"tokenName"` } `json:"data"` }
type AddressSummaryData ¶
type AddressSummaryData struct { TokenAccount string `json:"tokenAccount"` TokenAddress string `json:"tokenAddress"` TokenAmount struct { Amount string `json:"amount"` Decimals int64 `json:"decimals"` UiAmount int64 `json:"uiAmount"` UiAmountString string `json:"uiAmountString"` } `json:"tokenAmount"` Decimals int64 `json:"decimals"` RentEpoch float64 `json:"rentEpoch"` Lamports int64 `json:"lamports"` TokenSymbol string `json:"tokenSymbol"` TokenName string `json:"tokenName"` TokenIcon string `json:"tokenIcon"` }
type AddressTransactionRequest ¶
type AddressTransactionRequest struct { Page uint64 `json:"page"` Offset uint64 `json:"offset"` Address string `url:"address"` StartBlock uint64 `url:"startblock"` EndBlock uint64 `url:"endblock"` Sort chain.SortType `url:"sort"` }
func (AddressTransactionRequest) ToQueryParamMap ¶
func (req AddressTransactionRequest) ToQueryParamMap() map[string]any
func (AddressTransactionRequest) ToQueryUrl ¶
func (req AddressTransactionRequest) ToQueryUrl() string
type ChainExplorerAdaptor ¶
type ChainExplorerAdaptor struct { explorer.ChainExplorerAdaptor // contains filtered or unexported fields }
func NewChainExplorerAdaptor ¶
func (*ChainExplorerAdaptor) GetAccountBalance ¶
func (cea *ChainExplorerAdaptor) GetAccountBalance(req *account.AccountBalanceRequest) (*account.AccountBalanceResponse, error)
GetAccountBalance 获取账户余额
func (*ChainExplorerAdaptor) GetMultiAccountBalance ¶
func (cea *ChainExplorerAdaptor) GetMultiAccountBalance(req *account.AccountBalanceRequest) ([]*account.AccountBalanceResponse, error)
GetMultiAccountBalance 获取多个账户余额
func (*ChainExplorerAdaptor) GetTokenList ¶
func (cea *ChainExplorerAdaptor) GetTokenList(req *token.TokenRequest) ([]token.TokenResponse, error)
func (*ChainExplorerAdaptor) GetTxByAddress ¶
func (cea *ChainExplorerAdaptor) GetTxByAddress(request *account.AccountTxRequest) (*account.TransactionResponse[account.AccountTxResponse], error)
func (*ChainExplorerAdaptor) GetTxByHash ¶
func (cea *ChainExplorerAdaptor) GetTxByHash(request *transaction.TxRequest) (*transaction.TxResponse, error)
type TokenListResp ¶
type TokenListResp struct { Data []struct { Address string `json:"address"` CoingeckoInfo *struct { CoingeckoRank int `json:"coingeckoRank"` MarketCapRank int `json:"marketCapRank"` MarketData struct { CurrentPrice float64 `json:"currentPrice"` Ath float64 `json:"ath"` AthChangePercentage float64 `json:"athChangePercentage"` AthDate time.Time `json:"athDate"` Atl float64 `json:"atl"` AtlChangePercentage float64 `json:"atlChangePercentage"` AtlDate time.Time `json:"atlDate"` MarketCap int64 `json:"marketCap"` MarketCapRank int `json:"marketCapRank"` FullyDilutedValuation int64 `json:"fullyDilutedValuation"` TotalVolume int64 `json:"totalVolume"` PriceHigh24H float64 `json:"priceHigh24h"` PriceLow24H float64 `json:"priceLow24h"` PriceChange24H float64 `json:"priceChange24h"` PriceChangePercentage24H float64 `json:"priceChangePercentage24h"` PriceChangePercentage7D float64 `json:"priceChangePercentage7d"` PriceChangePercentage14D float64 `json:"priceChangePercentage14d"` PriceChangePercentage30D float64 `json:"priceChangePercentage30d"` PriceChangePercentage60D int `json:"priceChangePercentage60d"` PriceChangePercentage200D *float64 `json:"priceChangePercentage200d"` PriceChangePercentage1Y *float64 `json:"priceChangePercentage1y"` MarketCapChange24H float64 `json:"marketCapChange24h"` MarketCapChangePercentage24H float64 `json:"marketCapChangePercentage24h"` TotalSupply float64 `json:"totalSupply"` MaxSupply *int64 `json:"maxSupply"` CirculatingSupply float64 `json:"circulatingSupply"` LastUpdated time.Time `json:"lastUpdated"` } `json:"marketData"` } `json:"coingeckoInfo"` Decimals int `json:"decimals"` Extensions struct { CoingeckoId string `json:"coingeckoId"` SerumV3Usdc string `json:"serumV3Usdc,omitempty"` SerumV3Usdt string `json:"serumV3Usdt,omitempty"` Website string `json:"website,omitempty"` CoinMarketcapId string `json:"coinMarketcapId,omitempty"` Discord string `json:"discord,omitempty"` Medium string `json:"medium,omitempty"` Telegram string `json:"telegram,omitempty"` Twitter string `json:"twitter,omitempty"` Description string `json:"description,omitempty"` } `json:"extensions"` Holder int `json:"holder"` Icon string `json:"icon"` IsViolate bool `json:"isViolate"` MarketCapFD float64 `json:"marketCapFD"` MarketCapRank *int `json:"marketCapRank,omitempty"` MintAddress string `json:"mintAddress"` PriceUst interface{} `json:"priceUst"` SolAlphaVolume *float64 `json:"solAlphaVolume"` Tags []string `json:"tags,omitempty"` TokenName string `json:"tokenName"` TokenSymbol string `json:"tokenSymbol"` Reputation string `json:"reputation"` Twitter string `json:"twitter,omitempty"` Website string `json:"website,omitempty"` OnChainExtensions string `json:"onChainExtensions"` Supply struct { Amount float64 `json:"amount"` UiAmount float64 `json:"uiAmount"` UiAmountString string `json:"uiAmountString"` } `json:"supply"` ChainId int `json:"chainId"` Image string `json:"image,omitempty"` Source string `json:"source,omitempty"` } `json:"data"` Total int `json:"total"` }
type Transaction ¶
type Transaction struct { BlockTime int `json:"blockTime"` Slot int `json:"slot"` TxHash string `json:"txHash"` Fee int `json:"fee"` Status string `json:"status"` Lamport int `json:"lamport"` Signer []string `json:"signer"` LogMessage []string `json:"logMessage"` InputAccount []struct { Account string `json:"account"` Signer bool `json:"signer"` Writable bool `json:"writable"` PreBalance int `json:"preBalance"` PostBalance int `json:"postBalance"` } `json:"inputAccount"` RecentBlockhash string `json:"recentBlockhash"` InnerInstructions []struct { Index int `json:"index"` ParsedInstructions []struct { ProgramId string `json:"programId"` Program string `json:"program"` Type string `json:"type"` Name string `json:"name"` Params struct { ExtensionTypes []string `json:"extensionTypes,omitempty"` Mint string `json:"mint,omitempty"` NewAccount string `json:"newAccount,omitempty"` Source string `json:"source,omitempty"` TransferAmountSOL float64 `json:"transferAmount(SOL),omitempty"` ProgramOwner string `json:"programOwner,omitempty"` Account string `json:"account,omitempty"` Owner string `json:"owner,omitempty"` } `json:"params"` } `json:"parsedInstructions"` } `json:"innerInstructions"` TokenBalances []struct { Account string `json:"account"` Amount struct { PostAmount string `json:"postAmount"` PreAmount int `json:"preAmount"` } `json:"amount"` Token struct { Decimals int `json:"decimals"` TokenAddress string `json:"tokenAddress"` Name string `json:"name"` Symbol string `json:"symbol"` Icon string `json:"icon"` } `json:"token"` } `json:"tokenBalances"` ParsedInstruction []struct { ProgramId string `json:"programId"` Type string `json:"type"` Data string `json:"data"` DataEncode string `json:"dataEncode"` Name string `json:"name"` Params struct { Authority string `json:"authority,omitempty"` AssociatedAccount string `json:"associatedAccount,omitempty"` TokenAddress string `json:"tokenAddress,omitempty"` TokenProgramId string `json:"tokenProgramId,omitempty"` Source string `json:"source"` Destination string `json:"destination"` Amount int `json:"amount"` } `json:"params"` Program string `json:"program,omitempty"` } `json:"parsedInstruction"` Confirmations interface{} `json:"confirmations"` Version int `json:"version"` TokenTransfers []interface{} `json:"tokenTransfers"` SolTransfers []interface{} `json:"solTransfers"` SerumTransactions []interface{} `json:"serumTransactions"` RaydiumTransactions []interface{} `json:"raydiumTransactions"` UnknownTransfers []interface{} `json:"unknownTransfers"` }
Click to show internal directories.
Click to hide internal directories.