Documentation
¶
Index ¶
- Variables
- func GetDisplayableEventName(event EventName) string
- func IsUserIndexed(event EventName) bool
- type APIAttestationResponse
- type APIAttesterSlashingResponse
- type APIDepositResponse
- type APIEpochResponse
- type APIEth1AddressBlockResponse
- type APIEth1AddressItxResponse
- type APIEth1AddressTxResponse
- type APIEth1AddressUncleResponse
- type APIEth1TokenResponse
- type APIProposerSlashingResponse
- type APIRocketpoolStatsResponse
- type APISlotResponse
- type APISyncCommitteeResponse
- type APIValidatorResponse
- type APIVoluntaryExitResponse
- type AccessList
- func (*AccessList) Descriptor() ([]byte, []int)deprecated
- func (x *AccessList) GetAddress() []byte
- func (x *AccessList) GetStorageKeys() [][]byte
- func (*AccessList) ProtoMessage()
- func (x *AccessList) ProtoReflect() protoreflect.Message
- func (x *AccessList) Reset()
- func (x *AccessList) String() string
- type AdConfig
- type AdConfigurationPageData
- type AddValidatorWatchlistModal
- type AddressIndexOrPubkey
- type AdvertiseWithUsPageData
- type ApiEth1AddressResponse
- type ApiPricing
- type ApiResponse
- type ApiRocketpoolValidatorResponse
- type ApiStatistics
- type ApiValidatorAttestationsResponse
- type ApiValidatorBalanceHistoryResponse
- type ApiValidatorBlsChangeResponse
- type ApiValidatorDailyStatsResponse
- type ApiValidatorDepositsResponse
- type ApiValidatorEth1Response
- type ApiValidatorExecutionPerformanceResponse
- type ApiValidatorIncomeHistoryResponse
- type ApiValidatorPerformanceResponse
- type ApiValidatorProposalsResponse
- type ApiValidatorQueueResponse
- type ApiValidatorWithdrawalResponse
- type ApiWithdrawalCredentialsResponse
- type Attestation
- type AttestationData
- type AttesterSlashing
- type AuthData
- type BLSChange
- type BLSToExecutionChange
- type BeaconCommitteItem
- type Block
- type BlockComparisonContainer
- type BlockContainer
- type BlockPageAttestation
- type BlockPageAttesterSlashing
- type BlockPageData
- type BlockPageDeposit
- type BlockPageMinMaxSlot
- type BlockPageProposerSlashing
- type BlockPageTransaction
- type BlockPageVoluntaryExits
- type BlockTag
- type BlockVote
- type BlocksPageDataBlocks
- type BroadcastPageData
- type BroadcastStatusPageData
- type BulkMutations
- type BurnPageData
- type BurnPageDataBlock
- type CanonBlock
- type ChainConfig
- type ChainHead
- type ChangeWithdrawalCredentialsPageData
- type ChartDataPoint
- type ChartsPageData
- type ChartsPageDataChart
- type Checkpoint
- type ClElFloat64
- type ClElInt64
- type Config
- type ContractMetadata
- type CorrelationData
- type CorrelationDataResponse
- type CreateNodeJobUserError
- type CsrfData
- type DailyProposalCount
- type DashboardData
- type DashboardRequest
- type DashboardValidatorBalanceHistory
- type DataTableResponse
- type DataTableSaveState
- type DataTableSaveStateColumns
- type DataTableSaveStateOrder
- type DataTableSaveStateSearch
- type DatabaseConfig
- type Deposit
- type DepositContractInteraction
- type DepositsPageData
- type DiscordComponent
- type DiscordComponentButton
- type DiscordEmbed
- type DiscordEmbedField
- type DiscordReq
- type ERC20Metadata
- type ERC20TokenPrice
- type ETh1ERC1155Indexed
- func (*ETh1ERC1155Indexed) Descriptor() ([]byte, []int)deprecated
- func (x *ETh1ERC1155Indexed) GetBlockNumber() uint64
- func (x *ETh1ERC1155Indexed) GetFrom() []byte
- func (x *ETh1ERC1155Indexed) GetOperator() []byte
- func (x *ETh1ERC1155Indexed) GetParentHash() []byte
- func (x *ETh1ERC1155Indexed) GetTime() *timestamp.Timestamp
- func (x *ETh1ERC1155Indexed) GetTo() []byte
- func (x *ETh1ERC1155Indexed) GetTokenAddress() []byte
- func (x *ETh1ERC1155Indexed) GetTokenId() []byte
- func (x *ETh1ERC1155Indexed) GetValue() []byte
- func (*ETh1ERC1155Indexed) ProtoMessage()
- func (x *ETh1ERC1155Indexed) ProtoReflect() protoreflect.Message
- func (x *ETh1ERC1155Indexed) Reset()
- func (x *ETh1ERC1155Indexed) String() string
- type Email
- type EmailAttachment
- type Empty
- type EpochAssignments
- type EpochData
- type EpochPageData
- type EpochPageMinMaxSlot
- type EpochsPageData
- type ErrorResponse
- type Eth1AddressBalance
- type Eth1AddressMetadata
- type Eth1AddressPageData
- type Eth1AddressPageTabs
- type Eth1AddressSearchItem
- type Eth1Block
- func (*Eth1Block) Descriptor() ([]byte, []int)deprecated
- func (x *Eth1Block) GetBaseFee() []byte
- func (x *Eth1Block) GetBloom() []byte
- func (x *Eth1Block) GetCoinbase() []byte
- func (x *Eth1Block) GetDifficulty() []byte
- func (x *Eth1Block) GetExtra() []byte
- func (x *Eth1Block) GetGasLimit() uint64
- func (x *Eth1Block) GetGasUsed() uint64
- func (x *Eth1Block) GetHash() []byte
- func (x *Eth1Block) GetMixDigest() []byte
- func (x *Eth1Block) GetNumber() uint64
- func (x *Eth1Block) GetParentHash() []byte
- func (x *Eth1Block) GetReceiptHash() []byte
- func (x *Eth1Block) GetRoot() []byte
- func (x *Eth1Block) GetTime() *timestamp.Timestamp
- func (x *Eth1Block) GetTransactions() []*Eth1Transaction
- func (x *Eth1Block) GetTxHash() []byte
- func (x *Eth1Block) GetUncleHash() []byte
- func (x *Eth1Block) GetUncles() []*Eth1Block
- func (x *Eth1Block) GetWithdrawals() []*Eth1Withdrawal
- func (*Eth1Block) ProtoMessage()
- func (x *Eth1Block) ProtoReflect() protoreflect.Message
- func (x *Eth1Block) Reset()
- func (x *Eth1Block) String() string
- type Eth1BlockIndexed
- func (*Eth1BlockIndexed) Descriptor() ([]byte, []int)deprecated
- func (x *Eth1BlockIndexed) GetBaseFee() []byte
- func (x *Eth1BlockIndexed) GetCoinbase() []byte
- func (x *Eth1BlockIndexed) GetDifficulty() []byte
- func (x *Eth1BlockIndexed) GetGasLimit() uint64
- func (x *Eth1BlockIndexed) GetGasUsed() uint64
- func (x *Eth1BlockIndexed) GetHash() []byte
- func (x *Eth1BlockIndexed) GetHighestGasPrice() []byte
- func (x *Eth1BlockIndexed) GetInternalTransactionCount() uint64
- func (x *Eth1BlockIndexed) GetLowestGasPrice() []byte
- func (x *Eth1BlockIndexed) GetMev() []byte
- func (x *Eth1BlockIndexed) GetNumber() uint64
- func (x *Eth1BlockIndexed) GetParentHash() []byte
- func (x *Eth1BlockIndexed) GetTime() *timestamp.Timestamp
- func (x *Eth1BlockIndexed) GetTransactionCount() uint64
- func (x *Eth1BlockIndexed) GetTxReward() []byte
- func (x *Eth1BlockIndexed) GetUncleCount() uint64
- func (x *Eth1BlockIndexed) GetUncleHash() []byte
- func (x *Eth1BlockIndexed) GetUncleReward() []byte
- func (*Eth1BlockIndexed) ProtoMessage()
- func (x *Eth1BlockIndexed) ProtoReflect() protoreflect.Message
- func (x *Eth1BlockIndexed) Reset()
- func (x *Eth1BlockIndexed) String() string
- type Eth1BlockPageData
- type Eth1BlockPageTransaction
- type Eth1BlockParsed
- type Eth1Data
- type Eth1DecodedEventData
- type Eth1Deposit
- type Eth1ERC20Indexed
- func (*Eth1ERC20Indexed) Descriptor() ([]byte, []int)deprecated
- func (x *Eth1ERC20Indexed) GetBlockNumber() uint64
- func (x *Eth1ERC20Indexed) GetFrom() []byte
- func (x *Eth1ERC20Indexed) GetParentHash() []byte
- func (x *Eth1ERC20Indexed) GetTime() *timestamp.Timestamp
- func (x *Eth1ERC20Indexed) GetTo() []byte
- func (x *Eth1ERC20Indexed) GetTokenAddress() []byte
- func (x *Eth1ERC20Indexed) GetValue() []byte
- func (*Eth1ERC20Indexed) ProtoMessage()
- func (x *Eth1ERC20Indexed) ProtoReflect() protoreflect.Message
- func (x *Eth1ERC20Indexed) Reset()
- func (x *Eth1ERC20Indexed) String() string
- type Eth1ERC721Indexed
- func (*Eth1ERC721Indexed) Descriptor() ([]byte, []int)deprecated
- func (x *Eth1ERC721Indexed) GetBlockNumber() uint64
- func (x *Eth1ERC721Indexed) GetFrom() []byte
- func (x *Eth1ERC721Indexed) GetParentHash() []byte
- func (x *Eth1ERC721Indexed) GetTime() *timestamp.Timestamp
- func (x *Eth1ERC721Indexed) GetTo() []byte
- func (x *Eth1ERC721Indexed) GetTokenAddress() []byte
- func (x *Eth1ERC721Indexed) GetTokenId() []byte
- func (*Eth1ERC721Indexed) ProtoMessage()
- func (x *Eth1ERC721Indexed) ProtoReflect() protoreflect.Message
- func (x *Eth1ERC721Indexed) Reset()
- func (x *Eth1ERC721Indexed) String() string
- type Eth1EventData
- type Eth1InternalTransaction
- func (*Eth1InternalTransaction) Descriptor() ([]byte, []int)deprecated
- func (x *Eth1InternalTransaction) GetErrorMsg() string
- func (x *Eth1InternalTransaction) GetFrom() []byte
- func (x *Eth1InternalTransaction) GetPath() string
- func (x *Eth1InternalTransaction) GetTo() []byte
- func (x *Eth1InternalTransaction) GetType() string
- func (x *Eth1InternalTransaction) GetValue() []byte
- func (*Eth1InternalTransaction) ProtoMessage()
- func (x *Eth1InternalTransaction) ProtoReflect() protoreflect.Message
- func (x *Eth1InternalTransaction) Reset()
- func (x *Eth1InternalTransaction) String() string
- type Eth1InternalTransactionIndexed
- func (*Eth1InternalTransactionIndexed) Descriptor() ([]byte, []int)deprecated
- func (x *Eth1InternalTransactionIndexed) GetBlockNumber() uint64
- func (x *Eth1InternalTransactionIndexed) GetFrom() []byte
- func (x *Eth1InternalTransactionIndexed) GetParentHash() []byte
- func (x *Eth1InternalTransactionIndexed) GetTime() *timestamp.Timestamp
- func (x *Eth1InternalTransactionIndexed) GetTo() []byte
- func (x *Eth1InternalTransactionIndexed) GetType() string
- func (x *Eth1InternalTransactionIndexed) GetValue() []byte
- func (*Eth1InternalTransactionIndexed) ProtoMessage()
- func (x *Eth1InternalTransactionIndexed) ProtoReflect() protoreflect.Message
- func (x *Eth1InternalTransactionIndexed) Reset()
- func (x *Eth1InternalTransactionIndexed) String() string
- type Eth1InternalTransactionParsed
- type Eth1Log
- func (*Eth1Log) Descriptor() ([]byte, []int)deprecated
- func (x *Eth1Log) GetAddress() []byte
- func (x *Eth1Log) GetData() []byte
- func (x *Eth1Log) GetRemoved() bool
- func (x *Eth1Log) GetTopics() [][]byte
- func (*Eth1Log) ProtoMessage()
- func (x *Eth1Log) ProtoReflect() protoreflect.Message
- func (x *Eth1Log) Reset()
- func (x *Eth1Log) String() string
- type Eth1TokenPageData
- type Eth1TokenTxParsed
- type Eth1Transaction
- func (*Eth1Transaction) Descriptor() ([]byte, []int)deprecated
- func (x *Eth1Transaction) GetAccessList() []*AccessList
- func (x *Eth1Transaction) GetChainId() []byte
- func (x *Eth1Transaction) GetCommulativeGasUsed() uint64
- func (x *Eth1Transaction) GetContractAddress() []byte
- func (x *Eth1Transaction) GetData() []byte
- func (x *Eth1Transaction) GetErrorMsg() string
- func (x *Eth1Transaction) GetFrom() []byte
- func (x *Eth1Transaction) GetGas() uint64
- func (x *Eth1Transaction) GetGasPrice() []byte
- func (x *Eth1Transaction) GetGasUsed() uint64
- func (x *Eth1Transaction) GetHash() []byte
- func (x *Eth1Transaction) GetItx() []*Eth1InternalTransaction
- func (x *Eth1Transaction) GetLogs() []*Eth1Log
- func (x *Eth1Transaction) GetLogsBloom() []byte
- func (x *Eth1Transaction) GetMaxFeePerGas() []byte
- func (x *Eth1Transaction) GetMaxPriorityFeePerGas() []byte
- func (x *Eth1Transaction) GetNonce() uint64
- func (x *Eth1Transaction) GetStatus() uint64
- func (x *Eth1Transaction) GetTo() []byte
- func (x *Eth1Transaction) GetType() uint32
- func (x *Eth1Transaction) GetValue() []byte
- func (*Eth1Transaction) ProtoMessage()
- func (x *Eth1Transaction) ProtoReflect() protoreflect.Message
- func (x *Eth1Transaction) Reset()
- func (x *Eth1Transaction) String() string
- type Eth1TransactionIndexed
- func (*Eth1TransactionIndexed) Descriptor() ([]byte, []int)deprecated
- func (x *Eth1TransactionIndexed) GetBlockNumber() uint64
- func (x *Eth1TransactionIndexed) GetErrorMsg() string
- func (x *Eth1TransactionIndexed) GetFrom() []byte
- func (x *Eth1TransactionIndexed) GetGasPrice() []byte
- func (x *Eth1TransactionIndexed) GetHash() []byte
- func (x *Eth1TransactionIndexed) GetInvokesContract() bool
- func (x *Eth1TransactionIndexed) GetIsContractCreation() bool
- func (x *Eth1TransactionIndexed) GetMethodId() []byte
- func (x *Eth1TransactionIndexed) GetTime() *timestamp.Timestamp
- func (x *Eth1TransactionIndexed) GetTo() []byte
- func (x *Eth1TransactionIndexed) GetTxFee() []byte
- func (x *Eth1TransactionIndexed) GetValue() []byte
- func (*Eth1TransactionIndexed) ProtoMessage()
- func (x *Eth1TransactionIndexed) ProtoReflect() protoreflect.Message
- func (x *Eth1TransactionIndexed) Reset()
- func (x *Eth1TransactionIndexed) String() string
- type Eth1TransactionParsed
- type Eth1TxData
- type Eth1UncleIndexed
- func (*Eth1UncleIndexed) Descriptor() ([]byte, []int)deprecated
- func (x *Eth1UncleIndexed) GetBaseFee() []byte
- func (x *Eth1UncleIndexed) GetBlockNumber() uint64
- func (x *Eth1UncleIndexed) GetDifficulty() []byte
- func (x *Eth1UncleIndexed) GetGasLimit() uint64
- func (x *Eth1UncleIndexed) GetGasUsed() uint64
- func (x *Eth1UncleIndexed) GetNumber() uint64
- func (x *Eth1UncleIndexed) GetReward() []byte
- func (x *Eth1UncleIndexed) GetTime() *timestamp.Timestamp
- func (*Eth1UncleIndexed) ProtoMessage()
- func (x *Eth1UncleIndexed) ProtoReflect() protoreflect.Message
- func (x *Eth1UncleIndexed) Reset()
- func (x *Eth1UncleIndexed) String() string
- type Eth1UncleParsed
- type Eth1Withdrawal
- func (*Eth1Withdrawal) Descriptor() ([]byte, []int)deprecated
- func (x *Eth1Withdrawal) GetAddress() []byte
- func (x *Eth1Withdrawal) GetAmount() []byte
- func (x *Eth1Withdrawal) GetIndex() uint64
- func (x *Eth1Withdrawal) GetValidatorIndex() uint64
- func (*Eth1Withdrawal) ProtoMessage()
- func (x *Eth1Withdrawal) ProtoReflect() protoreflect.Message
- func (x *Eth1Withdrawal) Reset()
- func (x *Eth1Withdrawal) String() string
- type Eth1WithdrawalIndexed
- func (*Eth1WithdrawalIndexed) Descriptor() ([]byte, []int)deprecated
- func (x *Eth1WithdrawalIndexed) GetAddress() []byte
- func (x *Eth1WithdrawalIndexed) GetAmount() []byte
- func (x *Eth1WithdrawalIndexed) GetBlockNumber() uint64
- func (x *Eth1WithdrawalIndexed) GetIndex() uint64
- func (x *Eth1WithdrawalIndexed) GetTime() *timestamp.Timestamp
- func (x *Eth1WithdrawalIndexed) GetValidatorIndex() uint64
- func (*Eth1WithdrawalIndexed) ProtoMessage()
- func (x *Eth1WithdrawalIndexed) ProtoReflect() protoreflect.Message
- func (x *Eth1WithdrawalIndexed) Reset()
- func (x *Eth1WithdrawalIndexed) String() string
- type Eth2Deposit
- type EthOneDepositLeaderBoardPageData
- type EthOneDepositLeaderboardData
- type EthOneDepositsData
- type EthStoreDay
- type EthStoreStatistics
- type EthTwoDepositData
- type EtherscanContractMetadata
- type EventName
- type EventNameCheckbox
- type EventNameDesc
- type ExecBlockProposer
- type ExecutionBlockApiResponse
- type ExecutionPayload
- type ExecutionPerformanceResponse
- type ExplorerConfig
- type ExplorerConfigValue
- type ExplorerConfigurationCategory
- type ExplorerConfigurationKey
- type ExplorerConfigurationKeyMap
- type ExplorerConfigurationMap
- func (configMap ExplorerConfigurationMap) GetConfigValue(category ExplorerConfigurationCategory, configKey ExplorerConfigurationKey) (ExplorerConfigValue, error)
- func (configMap ExplorerConfigurationMap) GetStringValue(category ExplorerConfigurationCategory, configKey ExplorerConfigurationKey) (string, error)
- func (configMap ExplorerConfigurationMap) GetUInt64Value(category ExplorerConfigurationCategory, configKey ExplorerConfigurationKey) (uint64, error)
- type ExplorerConfigurationPageData
- type FilterSubscription
- type FinalityCheckpoints
- type ForkVersion
- type GasNowHistory
- type GasNowPageData
- type GenericChartData
- type GenericChartDataSeries
- type GetBlockTimings
- type GoogleRecaptchaResponse
- type GraffitiwallData
- type HeatmapData
- type HistoricEthPrice
- type IndexPageData
- type IndexPageDataBlocks
- type IndexPageDataEpochs
- type IndexPageEpochHistory
- type IndexedAttestation
- type LatestState
- type MachineMetricNode
- func (*MachineMetricNode) Descriptor() ([]byte, []int)deprecated
- func (x *MachineMetricNode) GetClientBuild() uint64
- func (x *MachineMetricNode) GetClientName() string
- func (x *MachineMetricNode) GetClientVersion() string
- func (x *MachineMetricNode) GetCpuProcessSecondsTotal() uint64
- func (x *MachineMetricNode) GetDiskBeaconchainBytesTotal() uint64
- func (x *MachineMetricNode) GetExporterVersion() string
- func (x *MachineMetricNode) GetMachine() string
- func (x *MachineMetricNode) GetMemoryProcessBytes() uint64
- func (x *MachineMetricNode) GetNetworkLibp2PBytesTotalReceive() uint64
- func (x *MachineMetricNode) GetNetworkLibp2PBytesTotalTransmit() uint64
- func (x *MachineMetricNode) GetNetworkPeersConnected() uint64
- func (x *MachineMetricNode) GetSyncBeaconHeadSlot() uint64
- func (x *MachineMetricNode) GetSyncEth1Connected() bool
- func (x *MachineMetricNode) GetSyncEth1FallbackConfigured() bool
- func (x *MachineMetricNode) GetSyncEth1FallbackConnected() bool
- func (x *MachineMetricNode) GetSyncEth2FallbackConfigured() bool
- func (x *MachineMetricNode) GetSyncEth2FallbackConnected() bool
- func (x *MachineMetricNode) GetSyncEth2Synced() bool
- func (x *MachineMetricNode) GetTimestamp() uint64
- func (*MachineMetricNode) ProtoMessage()
- func (x *MachineMetricNode) ProtoReflect() protoreflect.Message
- func (x *MachineMetricNode) Reset()
- func (x *MachineMetricNode) String() string
- type MachineMetricSystem
- func (*MachineMetricSystem) Descriptor() ([]byte, []int)deprecated
- func (x *MachineMetricSystem) GetCpuCores() uint64
- func (x *MachineMetricSystem) GetCpuNodeIdleSecondsTotal() uint64
- func (x *MachineMetricSystem) GetCpuNodeIowaitSecondsTotal() uint64
- func (x *MachineMetricSystem) GetCpuNodeSystemSecondsTotal() uint64
- func (x *MachineMetricSystem) GetCpuNodeUserSecondsTotal() uint64
- func (x *MachineMetricSystem) GetCpuThreads() uint64
- func (x *MachineMetricSystem) GetDiskNodeBytesFree() uint64
- func (x *MachineMetricSystem) GetDiskNodeBytesTotal() uint64
- func (x *MachineMetricSystem) GetDiskNodeIoSeconds() uint64
- func (x *MachineMetricSystem) GetDiskNodeReadsTotal() uint64
- func (x *MachineMetricSystem) GetDiskNodeWritesTotal() uint64
- func (x *MachineMetricSystem) GetExporterVersion() string
- func (x *MachineMetricSystem) GetMachine() string
- func (x *MachineMetricSystem) GetMemoryNodeBytesBuffers() uint64
- func (x *MachineMetricSystem) GetMemoryNodeBytesCached() uint64
- func (x *MachineMetricSystem) GetMemoryNodeBytesFree() uint64
- func (x *MachineMetricSystem) GetMemoryNodeBytesTotal() uint64
- func (x *MachineMetricSystem) GetMiscNodeBootTsSeconds() uint64
- func (x *MachineMetricSystem) GetMiscOs() string
- func (x *MachineMetricSystem) GetNetworkNodeBytesTotalReceive() uint64
- func (x *MachineMetricSystem) GetNetworkNodeBytesTotalTransmit() uint64
- func (x *MachineMetricSystem) GetTimestamp() uint64
- func (*MachineMetricSystem) ProtoMessage()
- func (x *MachineMetricSystem) ProtoReflect() protoreflect.Message
- func (x *MachineMetricSystem) Reset()
- func (x *MachineMetricSystem) String() string
- type MachineMetricSystemUser
- type MachineMetricValidator
- func (*MachineMetricValidator) Descriptor() ([]byte, []int)deprecated
- func (x *MachineMetricValidator) GetClientBuild() uint64
- func (x *MachineMetricValidator) GetClientName() string
- func (x *MachineMetricValidator) GetClientVersion() string
- func (x *MachineMetricValidator) GetCpuProcessSecondsTotal() uint64
- func (x *MachineMetricValidator) GetExporterVersion() string
- func (x *MachineMetricValidator) GetMachine() string
- func (x *MachineMetricValidator) GetMemoryProcessBytes() uint64
- func (x *MachineMetricValidator) GetSyncEth2FallbackConfigured() bool
- func (x *MachineMetricValidator) GetSyncEth2FallbackConnected() bool
- func (x *MachineMetricValidator) GetTimestamp() uint64
- func (x *MachineMetricValidator) GetValidatorActive() uint64
- func (x *MachineMetricValidator) GetValidatorTotal() uint64
- func (*MachineMetricValidator) ProtoMessage()
- func (x *MachineMetricValidator) ProtoReflect() protoreflect.Message
- func (x *MachineMetricValidator) Reset()
- func (x *MachineMetricValidator) String() string
- type MainMenuItem
- type ManageNotificationModal
- type MempoolTxPageData
- type Meta
- type MethodSignature
- type MethodSignatureImportStatus
- type MinimalBlock
- type MinimalTaggedValidators
- type MobilePricing
- type MobileSettingsData
- type MobileSubscription
- type MobileSubscriptionTransactionGeneric
- type MyCryptoSignature
- type NavigationGroup
- type NavigationLink
- type NetworkEventModal
- type NodeJob
- type NodeJobStatus
- type NodeJobType
- type NodeJobValidatorInfo
- type Notification
- type NotificationChannel
- type NotificationChannelsModal
- type OAuthAppData
- type OAuthCodeData
- type PageData
- type PageRates
- type PairedDevice
- type PoolInfo
- type PoolsResp
- type PremiumData
- type Price
- type ProposerSlashing
- type RateLimitError
- type RawMempoolResponse
- type RawMempoolTransaction
- type Relay
- type RelayBlock
- type RelayBlockSlice
- type RelayDataApiResponse
- type RelayInfo
- type RelayInfoContainer
- type RelaysData
- type RelaysResp
- type RelaysRespBlock
- type RocketpoolPageData
- type RocketpoolPageDataDAOMember
- type RocketpoolPageDataDAOProposal
- type RocketpoolPageDataDAOProposalMemberVotes
- type RocketpoolPageDataMinipool
- type RocketpoolPageDataNode
- type RocketpoolValidatorPageData
- type SearchAheadBlocksResult
- type SearchAheadEpochsResult
- type SearchAheadEth1Result
- type SearchAheadGraffitiResult
- type SearchAheadSlotsResult
- type SearchAheadTransactionsResult
- type SearchAheadValidatorsResult
- type SeriesDataItem
- type SignedBLSToExecutionChange
- type SlotVizEpochs
- type SlotVizPageData
- type SlotVizSlots
- type SourcifyContractMetadata
- type StakeWithUsPageData
- type StakingCalculatorPageData
- type Stats
- type StatsAdditionalsBeaconnode
- type StatsAdditionalsValidator
- type StatsDataStruct
- type StatsMeta
- type StatsProcess
- type StatsSystem
- type StatsTopDepositors
- type StripeSubscription
- type Subscription
- type SyncAggregate
- type SyncCommitteesStats
- type Tag
- type TagMetadata
- type TagMetadataSlice
- type TaggedValidators
- type Transaction
- type Transfer
- type TransitDiscord
- type TransitDiscordContent
- type TransitEmail
- type TransitEmailContent
- type TransitPush
- type TransitPushContent
- type TransitWebhook
- type TransitWebhookContent
- type User
- type UserAuthorizeConfirmPageData
- type UserNotificationChannels
- type UserNotificationsCenterPageData
- type UserNotificationsPageData
- type UserPremiumSubscription
- type UserSettingsPageData
- type UserSubscription
- type UserValidatorNotificationTableData
- type UserWebhook
- type UserWebhookRow
- type UserWebhookRowError
- type UserWebhookSubscriptions
- type UserWithPremium
- type UsersNotificationsRequest
- type Validator
- type ValidatorAttestation
- type ValidatorAttestationSlashing
- type ValidatorBalance
- type ValidatorBalanceHistory
- type ValidatorBalanceHistoryChartData
- type ValidatorBalanceStatistic
- type ValidatorDeposits
- type ValidatorEarnings
- type ValidatorEffectiveness
- type ValidatorHistory
- type ValidatorIncomeHistory
- type ValidatorMissedAttestationsStatistic
- type ValidatorPageData
- type ValidatorParticipation
- type ValidatorPerformance
- type ValidatorProposal
- type ValidatorProposerSlashing
- type ValidatorQueue
- type ValidatorRank
- type ValidatorSlashing
- type ValidatorStatsTablePageData
- type ValidatorStatsTableRow
- type ValidatorSyncDutiesStatistic
- type ValidatorSyncParticipation
- type ValidatorWithdrawal
- type ValidatorsBLSChange
- type ValidatorsPageData
- type ValidatorsPageDataValidators
- type VisChartData
- type VisPageData
- type VisVotesPageData
- type VoluntaryExit
- type VotesVisChartData
- type WebhookEvent
- type WebhookPageData
- type WeiString
- type WidgetResponse
- type WithdrawalStats
- type Withdrawals
- type WithdrawalsByEpoch
- type WithdrawalsNotification
- type WithdrawalsPageData
Constants ¶
This section is empty.
Variables ¶
var AddWatchlistEvents = []EventNameDesc{ { Desc: "Validator is Offline", Event: ValidatorIsOfflineEventName, Info: template.HTML(`<i data-toggle="tooltip" data-html="true" title="<div class='text-left'>Will trigger a notifcation:<br><ul><li>Once you have been offline for 3 epochs</li><li>Every 32 Epochs (~3 hours) during your downtime</li><li>Once you are back online again</li></ul></div>" class="fas fa-question-circle"></i>`), }, { Desc: "Proposals missed", Event: ValidatorMissedProposalEventName, }, { Desc: "Proposals submitted", Event: ValidatorExecutedProposalEventName, }, { Desc: "Validator got slashed", Event: ValidatorGotSlashedEventName, }, { Desc: "Sync committee", Event: SyncCommitteeSoon, }, { Desc: "Attestations missed", Event: ValidatorMissedAttestationEventName, Warning: template.HTML(`<i data-toggle="tooltip" title="Will trigger every epoch (6.4 minutes) during downtime" class="fas fa-exclamation-circle text-warning"></i>`), }, { Desc: "Withdrawal processed", Event: ValidatorReceivedWithdrawalEventName, Info: template.HTML(`<i data-toggle="tooltip" data-html="true" title="<div class='text-left'>Will trigger a notifcation when:<br><ul><li>A partial withdrawal is processed</li><li>Your validator exits and its full balance is withdrawn</li></ul> <div>Requires that your validator has 0x01 credentials</div></div>" class="fas fa-question-circle"></i>`), }, }
this is the source of truth for the validator events that are supported by the user/notification page
var EventLabel map[EventName]string = map[EventName]string{ ValidatorBalanceDecreasedEventName: "Your validator(s) balance decreased", ValidatorMissedProposalEventName: "Your validator(s) missed a proposal", ValidatorExecutedProposalEventName: "Your validator(s) submitted a proposal", ValidatorMissedAttestationEventName: "Your validator(s) missed an attestation", ValidatorGotSlashedEventName: "Your validator(s) got slashed", ValidatorDidSlashEventName: "Your validator(s) slashed another validator", ValidatorIsOfflineEventName: "Your validator(s) state changed", ValidatorReceivedDepositEventName: "Your validator(s) received a deposit", ValidatorReceivedWithdrawalEventName: "A withdrawal was initiated for your validators", NetworkSlashingEventName: "A slashing event has been registered by the network", NetworkValidatorActivationQueueFullEventName: "The activation queue is full", NetworkValidatorActivationQueueNotFullEventName: "The activation queue is empty", NetworkValidatorExitQueueFullEventName: "The validator exit queue is full", NetworkValidatorExitQueueNotFullEventName: "The validator exit queue is empty", NetworkLivenessIncreasedEventName: "The network is experiencing liveness issues", EthClientUpdateEventName: "A ethereum client has a new available update", MonitoringMachineOfflineEventName: "Your machine(s) might be offline", MonitoringMachineDiskAlmostFullEventName: "Your machine(s) disk space is running low", MonitoringMachineCpuLoadEventName: "Your machine(s) has a high CPU load", MonitoringMachineMemoryUsageEventName: "Your machine(s) has a high memory load", MonitoringMachineSwitchedToETH2FallbackEventName: "Your machine(s) is using its consensus client fallback", MonitoringMachineSwitchedToETH1FallbackEventName: "Your machine(s) is using its execution client fallback", TaxReportEventName: "You have an available tax report", RocketpoolCommissionThresholdEventName: "Your configured rocket pool commission threshold is reached", RocketpoolNewClaimRoundStartedEventName: "Your rocket pool claim round is available", RocketpoolCollateralMinReached: "You reached the rocketpool min collateral", RocketpoolCollateralMaxReached: "You reached the rocketpool max collateral", SyncCommitteeSoon: "Your validator(s) will soon be part of the sync committee", }
var EventNames = []EventName{ ValidatorBalanceDecreasedEventName, ValidatorExecutedProposalEventName, ValidatorMissedProposalEventName, ValidatorMissedAttestationEventName, ValidatorGotSlashedEventName, ValidatorDidSlashEventName, ValidatorIsOfflineEventName, ValidatorReceivedDepositEventName, ValidatorReceivedWithdrawalEventName, NetworkSlashingEventName, NetworkValidatorActivationQueueFullEventName, NetworkValidatorActivationQueueNotFullEventName, NetworkValidatorExitQueueFullEventName, NetworkValidatorExitQueueNotFullEventName, NetworkLivenessIncreasedEventName, EthClientUpdateEventName, MonitoringMachineOfflineEventName, MonitoringMachineDiskAlmostFullEventName, MonitoringMachineCpuLoadEventName, MonitoringMachineSwitchedToETH2FallbackEventName, MonitoringMachineSwitchedToETH1FallbackEventName, MonitoringMachineMemoryUsageEventName, TaxReportEventName, RocketpoolCommissionThresholdEventName, RocketpoolNewClaimRoundStartedEventName, RocketpoolCollateralMinReached, RocketpoolCollateralMaxReached, SyncCommitteeSoon, }
var File_eth1_proto protoreflect.FileDescriptor
var File_machine_proto protoreflect.FileDescriptor
var NetworkNotificationEvents = []EventNameDesc{ { Desc: "Network Notifications", Event: NetworkLivenessIncreasedEventName, }, }
this is the source of truth for the network events that are supported by the user/notification page
var NodeJobTypes = []NodeJobType{ BLSToExecutionChangesNodeJobType, VoluntaryExitsNodeJobType, }
var NotificationChannelLabels map[NotificationChannel]template.HTML = map[NotificationChannel]template.HTML{
EmailNotificationChannel: "Email Notification",
PushNotificationChannel: "Push Notification",
WebhookNotificationChannel: `Webhook Notification (<a href="/user/webhooks">configure</a>)`,
WebhookDiscordNotificationChannel: "Discord Notification",
}
var NotificationChannels = []NotificationChannel{ EmailNotificationChannel, PushNotificationChannel, WebhookNotificationChannel, WebhookDiscordNotificationChannel, }
var UserIndexEvents = []EventName{ EthClientUpdateEventName, MonitoringMachineCpuLoadEventName, EthClientUpdateEventName, MonitoringMachineOfflineEventName, MonitoringMachineDiskAlmostFullEventName, MonitoringMachineCpuLoadEventName, MonitoringMachineMemoryUsageEventName, MonitoringMachineSwitchedToETH2FallbackEventName, MonitoringMachineSwitchedToETH1FallbackEventName, }
Functions ¶
func GetDisplayableEventName ¶
func IsUserIndexed ¶
Types ¶
type APIAttestationResponse ¶
type APIAttestationResponse struct {
Aggregationbits string `json:"aggregationbits"`
Beaconblockroot string `json:"beaconblockroot"`
BlockIndex int64 `json:"block_index"`
BlockRoot string `json:"block_root"`
BlockSlot int64 `json:"block_slot"`
Committeeindex int64 `json:"committeeindex"`
Signature string `json:"signature"`
Slot int64 `json:"slot"`
SourceEpoch int64 `json:"source_epoch"`
SourceRoot string `json:"source_root"`
TargetEpoch int64 `json:"target_epoch"`
TargetRoot string `json:"target_root"`
Validators []int64 `json:"validators"`
}
type APIAttesterSlashingResponse ¶
type APIAttesterSlashingResponse struct {
Attestation1_beaconblockroot string `json:"attestation1_beaconblockroot"`
Attestation1_index uint64 `json:"attestation1_index"`
Attestation1_indices []uint64 `json:"attestation1_indices"`
Attestation1_signature string `json:"attestation1_signature"`
Attestation1_slot uint64 `json:"attestation1_slot"`
Attestation1_source_epoch uint64 `json:"attestation1_source_epoch"`
Attestation1_source_root string `json:"attestation1_source_root"`
Attestation1_target_epoch uint64 `json:"attestation1_target_epoch"`
Attestation1_target_root string `json:"attestation1_target_root"`
Attestation2_beaconblockroot string `json:"attestation2_beaconblockroot"`
Attestation2_index uint64 `json:"attestation2_index"`
Attestation2_indices []uint64 `json:"attestation2_indices"`
Attestation2_signature string `json:"attestation2_signature"`
Attestation2_slot uint64 `json:"attestation2_slot"`
Attestation2_source_epoch uint64 `json:"attestation2_source_epoch"`
Attestation2_source_root string `json:"attestation2_source_root"`
Attestation2_target_epoch uint64 `json:"attestation2_target_epoch"`
Attestation2_target_root string `json:"attestation2_target_root"`
BlockIndex uint64 `json:"block_index"`
BlockRoot string `json:"block_root"`
BlockSlot uint64 `json:"block_slot"`
}
type APIDepositResponse ¶
type APIDepositResponse struct {
Amount uint64 `json:"amount"`
BlockIndex uint64 `json:"block_index"`
BlockRoot string `json:"block_root"`
BlockSlot uint64 `json:"block_slot"`
Proof string `json:"proof"`
Publickey string `json:"publickey"`
Signature string `json:"signature"`
Withdrawalcredentials string `json:"withdrawalcredentials"`
}
type APIEpochResponse ¶
type APIEpochResponse struct {
Epoch uint64 `json:"epoch"`
Ts uint64 `json:"ts"`
AttestationsCount uint64 `json:"attestationscount"`
AttesterSlashingsCount uint64 `json:"attesterslashingscount"`
AverageValidatorBalance uint64 `json:"averagevalidatorbalance"`
BlocksCount uint64 `json:"blockscount"`
DepositsCount uint64 `json:"depositscount"`
EligibleEther uint64 `json:"eligibleether"`
Finalized bool `json:"finalized"`
GlobalParticipationRate uint64 `json:"globalparticipationrate"`
MissedBlocks uint64 `json:"missedblocks"`
OrphanedBlocks uint64 `json:"orphanedblocks"`
ProposedBlocks uint64 `json:"proposedblocks"`
ProposerSlashingsCount uint64 `json:"proposerslashingscount"`
ScheduledBlocks uint64 `json:"scheduledblocks"`
TotalValidatorBalance uint64 `json:"totalvalidatorbalance"`
ValidatorsCount uint64 `json:"validatorscount"`
VoluntaryExitsCount uint64 `json:"voluntaryexitscount"`
VotedEther uint64 `json:"votedether"`
RewardsExported uint64 `json:"rewards_exported"`
WithdrawalCount uint64 `json:"withdrawalcount"`
}
type APIEth1AddressBlockResponse ¶
type APIEth1AddressBlockResponse struct {
ProducedBlocks []Eth1BlockParsed `json:"blocks"`
Page string `json:"page"`
}
type APIEth1AddressItxResponse ¶
type APIEth1AddressItxResponse struct {
InternalTransactions []Eth1InternalTransactionParsed `json:"internal_transactions"`
Page string `json:"page"`
}
type APIEth1AddressTxResponse ¶
type APIEth1AddressTxResponse struct {
Transactions []Eth1TransactionParsed `json:"transactions"`
Page string `json:"page"`
}
type APIEth1AddressUncleResponse ¶
type APIEth1AddressUncleResponse struct {
ProducedUncles []Eth1UncleParsed `json:"uncles"`
Page string `json:"page"`
}
type APIEth1TokenResponse ¶
type APIEth1TokenResponse struct {
TokenTxs []*Eth1TokenTxParsed `json:"transactions"`
Page string `json:"page"`
}
type APIProposerSlashingResponse ¶
type APIProposerSlashingResponse struct {
BlockIndex uint64 `json:"block_index"`
BlockRoot string `json:"block_root"`
BlockSlot uint64 `json:"block_slot"`
Header1Bodyroot string `json:"header1_bodyroot"`
Header1Parentroot string `json:"header1_parentroot"`
Header1Signature string `json:"header1_signature"`
Header1Slot uint64 `json:"header1_slot"`
Header1Stateroot string `json:"header1_stateroot"`
Header2Bodyroot string `json:"header2_bodyroot"`
Header2Parentroot string `json:"header2_parentroot"`
Header2Signature string `json:"header2_signature"`
Header2Slot uint64 `json:"header2_slot"`
Header2Stateroot string `json:"header2_stateroot"`
ProposerIndex uint64 `json:"proposerindex"`
}
type APIRocketpoolStatsResponse ¶
type APIRocketpoolStatsResponse struct {
ClaimIntervalTime string `json:"claim_interval_time"`
ClaimIntervalTimeStart int64 `json:"claim_interval_time_start"`
CurrentNodeDemand float64 `json:"current_node_demand"`
CurrentNodeFee float64 `json:"current_node_fee"`
EffectiveRPLStaked float64 `json:"effective_rpl_staked"`
MinipoolCount int64 `json:"minipool_count"`
NodeCount int64 `json:"node_count"`
NodeOperatorRewards float64 `json:"node_operator_rewards"`
OdaoMemberCount int64 `json:"odao_member_count"`
RethApr float64 `json:"reth_apr"`
RethExchangeRate float64 `json:"reth_exchange_rate"`
RethSupply float64 `json:"reth_supply"`
RplPrice int64 `json:"rpl_price"`
TotalEthBalance float64 `json:"total_eth_balance"`
TotalEthStaking float64 `json:"total_eth_staking"`
}
type APISlotResponse ¶
type APISlotResponse struct {
Attestationscount uint64 `json:"attestationscount"`
Attesterslashingscount uint64 `json:"attesterslashingscount"`
Blockroot string `json:"blockroot"`
Depositscount uint64 `json:"depositscount"`
Epoch uint64 `json:"epoch"`
Eth1dataBlockhash string `json:"eth1data_blockhash"`
Eth1dataDepositcount uint64 `json:"eth1data_depositcount"`
Eth1dataDepositroot string `json:"eth1data_depositroot"`
ExecBaseFeePerGas uint64 `json:"exec_base_fee_per_gas" extensions:"x-nullable"`
ExecBlockHash string `json:"exec_block_hash" extensions:"x-nullable"`
ExecBlockNumber uint64 `json:"exec_block_number" extensions:"x-nullable"`
ExecExtraData string `json:"exec_extra_data" extensions:"x-nullable"`
ExecFeeRecipient string `json:"exec_fee_recipient" extensions:"x-nullable"`
ExecGasLimit uint64 `json:"exec_gas_limit" extensions:"x-nullable"`
ExecGasUsed uint64 `json:"exec_gas_used" extensions:"x-nullable"`
ExecLogsBloom string `json:"exec_logs_bloom" extensions:"x-nullable"`
ExecParentHash string `json:"exec_parent_hash" extensions:"x-nullable"`
ExecRandom string `json:"exec_random" extensions:"x-nullable"`
ExecReceiptsRoot string `json:"exec_receipts_root" extensions:"x-nullable"`
ExecStateRoot string `json:"exec_state_root" extensions:"x-nullable"`
ExecTimestamp uint64 `json:"exec_timestamp" extensions:"x-nullable"`
ExecTransactionsCount uint64 `json:"exec_transactions_count" extensions:"x-nullable"`
Graffiti string `json:"graffiti"`
GraffitiText string `json:"graffiti_text"`
Parentroot string `json:"parentroot"`
Proposer uint64 `json:"proposer"`
Proposerslashingscount uint64 `json:"proposerslashingscount"`
Randaoreveal string `json:"randaoreveal"`
Signature string `json:"signature"`
Slot uint64 `json:"slot"`
Stateroot string `json:"stateroot"`
Status string `json:"status"`
SyncaggregateBits string `json:"syncaggregate_bits"`
SyncaggregateParticipation float64 `json:"syncaggregate_participation"`
SyncaggregateSignature string `json:"syncaggregate_signature"`
Voluntaryexitscount uint64 `json:"voluntaryexitscount"`
WithdrawalCount uint64 `json:"withdrawalcount"`
}
type APIValidatorResponse ¶
type APIValidatorResponse struct {
ActivationEligibilityEpoch uint64 `json:"activation_eligibility_epoch"`
ActivationEpoch uint64 `json:"activation_epoch"`
Balance uint64 `json:"balance"`
EffectiveBalance uint64 `json:"effective_balance"`
ExitEpoch uint64 `json:"exit_epoch"`
LastAttestationSlot uint64 `json:"last_attestation_slot"`
Name string `json:"name"`
Pubkey string `json:"pubkey"`
Slashed bool `json:"slashed"`
Status string `json:"status"`
ValidatorIndex uint64 `json:"validator_index"`
WithdrawableEpoch uint64 `json:"withdrawable_epoch"`
WithdrawalCredentials string `json:"withdrawal_credentials"`
}
type AccessList ¶
type AccessList struct {
Address []byte `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
StorageKeys [][]byte `protobuf:"bytes,2,rep,name=storage_keys,json=storageKeys,proto3" json:"storage_keys,omitempty"`
// contains filtered or unexported fields
}
func (*AccessList) Descriptor
deprecated
func (*AccessList) Descriptor() ([]byte, []int)
Deprecated: Use AccessList.ProtoReflect.Descriptor instead.
func (*AccessList) GetAddress ¶
func (x *AccessList) GetAddress() []byte
func (*AccessList) GetStorageKeys ¶
func (x *AccessList) GetStorageKeys() [][]byte
func (*AccessList) ProtoMessage ¶
func (*AccessList) ProtoMessage()
func (*AccessList) ProtoReflect ¶
func (x *AccessList) ProtoReflect() protoreflect.Message
func (*AccessList) Reset ¶
func (x *AccessList) Reset()
func (*AccessList) String ¶
func (x *AccessList) String() string
type AdConfig ¶
type AdConfig struct {
Id string `db:"id"`
TemplateId string `db:"template_id"`
JQuerySelector string `db:"jquery_selector"`
InsertMode string `db:"insert_mode"`
RefreshInterval uint64 `db:"refresh_interval"`
Enabled bool `db:"enabled"`
ForAllUsers bool `db:"for_all_users"`
BannerId uint64 `db:"banner_id"`
HtmlContent string `db:"html_content"`
}
AdConfig is a struct to hold the configuration for one specific ad banner placement
type AdConfigurationPageData ¶
type AddValidatorWatchlistModal ¶
type AddValidatorWatchlistModal struct {
CsrfField template.HTML
ValidatorIndex uint64
ValidatorPubkey string
Events []EventNameCheckbox
}
type AddressIndexOrPubkey ¶
type AdvertiseWithUsPageData ¶
type ApiEth1AddressResponse ¶
type ApiEth1AddressResponse struct {
Address string `json:"address"`
Ether string `json:"ether"`
Tokens []struct {
Address string `json:"address"`
Balance string `json:"balance"`
Symbol string `json:"symbol"`
Decimals string `json:"decimals,omitempty"`
Price float64 `json:"price,omitempty"`
Currency string `json:"currency,omitempty"`
} `json:"tokens"`
}
type ApiPricing ¶
type ApiResponse ¶
type ApiResponse struct {
Status string `json:"status"`
Data interface{} `json:"data"`
}
type ApiRocketpoolValidatorResponse ¶
type ApiRocketpoolValidatorResponse struct {
ClaimedSmoothingPool float64 `json:"claimed_smoothing_pool"`
Index uint64 `json:"index"`
MinipoolAddress string `json:"minipool_address"`
MinipoolDepositType string `json:"minipool_deposit_type"`
MinipoolNodeFee float64 `json:"minipool_node_fee"`
MinipoolStatus string `json:"minipool_status"`
MinipoolStatusTime uint64 `json:"minipool_status_time"`
NodeAddress string `json:"node_address"`
NodeMaxRplStake float64 `json:"node_max_rpl_stake"`
NodeMinRplStake float64 `json:"node_min_rpl_stake"`
NodeRplStake float64 `json:"node_rpl_stake"`
NodeTimezoneLocation string `json:"node_timezone_location"`
PenaltyCount uint64 `json:"penalty_count"`
RplCumulativeRewards float64 `json:"rpl_cumulative_rewards"`
SmoothingPoolOptedIn bool `json:"smoothing_pool_opted_in"`
UnclaimedRplRewards float64 `json:"unclaimed_rpl_rewards"`
UnclaimedSmoothingPool float64 `json:"unclaimed_smoothing_pool"`
}
type ApiStatistics ¶
type ApiValidatorAttestationsResponse ¶
type ApiValidatorAttestationsResponse struct {
AttesterSlot uint64 `json:"attesterslot"`
CommitteeIndex uint64 `json:"committeeindex"`
Epoch uint64 `json:"epoch"`
InclusionSlot uint64 `json:"inclusionslot"`
Status uint64 `json:"status"`
ValidatorIndex uint64 `json:"validatorindex"`
Week uint64 `json:"week"`
WeekStart time.Time `json:"week_start"`
WeekEnd time.Time `json:"week_end"`
}
type ApiValidatorBalanceHistoryResponse ¶
type ApiValidatorBalanceHistoryResponse struct {
Balance uint64 `json:"balance"`
EffectiveBalance uint64 `json:"effectivebalance"`
Epoch uint64 `json:"epoch"`
Validatorindex uint64 `json:"validatorindex"`
Week uint64 `json:"week"`
WeekStart time.Time `json:"week_start"`
WeekEnd time.Time `json:"week_end"`
}
type ApiValidatorBlsChangeResponse ¶
type ApiValidatorBlsChangeResponse struct {
Epoch uint64 `db:"epoch" json:"epoch,omitempty"`
Slot uint64 `db:"slot" json:"slot,omitempty"`
BlockRoot string `db:"block_rot" json:"blockroot,omitempty"`
Validatorindex uint64 `db:"validatorindex" json:"validatorindex,omitempty"`
BlsPubkey string `db:"pubkey" json:"bls_pubkey,omitempty"`
Signature string `db:"signature" json:"bls_signature,omitempty"`
Address string `db:"address" json:"address,omitempty"`
WithdrawalCredentialsOld string `db:"withdrawalcredentials_0x00" json:"withdrawalcredentials_0x00,omitempty"`
WithdrawalCredentialsNew string `db:"withdrawalcredentials_0x01" json:"withdrawalcredentials_0x01,omitempty"`
}
type ApiValidatorDailyStatsResponse ¶
type ApiValidatorDailyStatsResponse struct {
ValidatorIndex uint64 `json:"validatorindex"`
AttesterSlashings uint64 `json:"attester_slashings"`
Day uint64 `json:"day"`
DayStart time.Time `json:"day_start"`
DayEnd time.Time `json:"day_end"`
Deposits uint64 `json:"deposits"`
DepositsAmount uint64 `json:"deposits_amount"`
Withdrawals uint64 `json:"withdrawals"`
WithdrawalsAmount uint64 `json:"withdrawals_amount"`
EndBalance uint64 `json:"end_balance"`
EndEffectiveBalance uint64 `json:"end_effective_balance"`
MaxBalance uint64 `json:"max_balance"`
MaxEffectiveBalance uint64 `json:"max_effective_balance"`
MinBalance uint64 `json:"min_balance"`
MinEffectiveBalance uint64 `json:"min_effective_balance"`
MissedAttestations uint64 `json:"missed_attestations"`
MissedBlocks uint64 `json:"missed_blocks"`
MissedSync uint64 `json:"missed_sync"`
OrphanedAttestations uint64 `json:"orphaned_attestations"`
OrphanedBlocks uint64 `json:"orphaned_blocks"`
OrphanedSync uint64 `json:"orphaned_sync"`
ParticipatedSync uint64 `json:"participated_sync"`
ProposedBlocks uint64 `json:"proposed_blocks"`
ProposerSlashings uint64 `json:"proposer_slashings"`
StartBalance uint64 `json:"start_balance"`
StartEffectiveBalance uint64 `json:"start_effective_balance"`
}
type ApiValidatorDepositsResponse ¶
type ApiValidatorDepositsResponse struct {
Amount uint64 `json:"amount"`
BlockNumber uint64 `json:"block_number"`
BlockTs uint64 `json:"block_ts"`
FromAddress string `json:"from_address"`
MerkletreeIndex string `json:"merkletree_index"`
Publickey string `json:"publickey"`
Removed bool `json:"removed"`
Signature string `json:"signature"`
TxHash string `json:"tx_hash"`
TxIndex uint64 `json:"tx_index"`
TxInput string `json:"tx_input"`
ValidSignature bool `json:"valid_signature"`
WithdrawalCredentials string `json:"withdrawal_credentials"`
}
type ApiValidatorIncomeHistoryResponse ¶
type ApiValidatorIncomeHistoryResponse struct {
Income struct {
AttestationSourceReward uint64 `json:"attestation_source_reward"`
AttestationTargetReward uint64 `json:"attestation_target_reward"`
AttestationHeadReward uint64 `json:"attestation_head_reward"`
} `json:"income"`
Epoch uint64 `json:"epoch"`
ValidatorIndex uint64 `json:"validatorindex"`
Week uint64 `json:"week"`
WeekStart time.Time `json:"week_start"`
WeekEnd time.Time `json:"week_end"`
}
type ApiValidatorPerformanceResponse ¶
type ApiValidatorPerformanceResponse struct {
Balance uint64 `json:"balance"`
Performance1d uint64 `json:"performance1d"`
Performance31d uint64 `json:"performance31d"`
Performance365d uint64 `json:"performance365d"`
Performance7d uint64 `json:"performance7d"`
Rank7d uint64 `json:"rank7d"`
Validatorindex uint64 `json:"validatorindex"`
}
type ApiValidatorProposalsResponse ¶
type ApiValidatorProposalsResponse struct {
Attestationscount uint64 `db:"attestationscount" json:"attestationscount"`
Attesterslashingscount uint64 `db:"attesterslashingscount" json:"attesterslashingscount"`
Blockroot string `db:"blockroot" json:"blockroot"`
Depositscount uint64 `db:"depositscount" json:"depositscount"`
Epoch uint64 `db:"epoch" json:"epoch"`
Eth1dataBlockhash string `db:"eth1data_blockhash" json:"eth1data_blockhash"`
Eth1dataDepositcount uint64 `db:"eth1data_depositcount" json:"eth1data_depositcount"`
Eth1dataDepositroot string `db:"eth1data_depositroot" json:"eth1data_depositroot"`
ExecBaseFeePerGas *uint64 `db:"exec_base_fee_per_gas" json:"exec_base_fee_per_gas,omitempty"`
ExecBlockHash *string `db:"exec_block_hash" json:"exec_block_hash,omitempty"`
ExecBlockNumber *uint64 `db:"exec_block_number" json:"exec_block_number,omitempty"`
ExecExtra_data *string `db:"exec_extra_data" json:"exec_extra_data,omitempty"`
ExecFeeRecipient *string `db:"exec_fee_recipient" json:"exec_fee_recipient,omitempty"`
ExecGasLimit *uint64 `db:"exec_gas_limit" json:"exec_gas_limit,omitempty"`
ExecGasUsed *uint64 `db:"exec_gas_used" json:"exec_gas_used,omitempty"`
ExecLogsBloom *string `db:"exec_logs_bloom" json:"exec_logs_bloom,omitempty"`
ExecParentHash *string `db:"exec_parent_hash" json:"exec_parent_hash,omitempty"`
ExecRandom *string `db:"exec_random" json:"exec_random,omitempty"`
ExecReceiptsRoot *string `db:"exec_receipts_root" json:"exec_receipts_root,omitempty"`
ExecStateRoot *string `db:"exec_state_root" json:"exec_state_root,omitempty"`
ExecTimestamp *uint64 `db:"exec_timestamp" json:"exec_timestamp,omitempty"`
ExecTransactionsCount *uint64 `db:"exec_transactions_count" json:"exec_transactions_count,omitempty"`
Graffiti string `db:"graffiti" json:"graffiti"`
GraffitiText string `db:"graffiti_text" json:"graffiti_text"`
Parentroot string `db:"parentroot" json:"parentroot"`
Proposer uint64 `db:"proposer" json:"proposer"`
Proposerslashingscount uint64 `db:"proposerslashingscount" json:"proposerslashingscount"`
Randaoreveal string `db:"randaoreveal" json:"randaoreveal"`
Signature string `db:"signature" json:"signature"`
Slot uint64 `db:"slot" json:"slot"`
Stateroot string `db:"stateroot" json:"stateroot"`
Status string `db:"status" json:"status"`
SyncaggregateBits string `db:"syncaggregate_bits" json:"syncaggregate_bits"`
SyncaggregateParticipation float64 `db:"syncaggregate_participation" json:"syncaggregate_participation"`
SyncaggregateSignature string `db:"syncaggregate_signature" json:"syncaggregate_signature"`
Voluntaryexitscount uint64 `db:"voluntaryexitscount" json:"voluntaryexitscount"`
}
convert this json object to a golang struct called ApiValidatorProposalsResponse
type ApiValidatorWithdrawalResponse ¶
type ApiValidatorWithdrawalResponse struct {
Epoch uint64 `json:"epoch,omitempty"`
Slot uint64 `json:"slot,omitempty"`
BlockRoot string `json:"blockroot,omitempty"`
Index uint64 `json:"withdrawalindex"`
ValidatorIndex uint64 `json:"validatorindex"`
Address string `json:"address"`
Amount uint64 `json:"amount"`
}
type Attestation ¶
type Attestation struct {
AggregationBits []byte
Attesters []uint64
Data *AttestationData
Signature []byte
}
Attestation is a struct to hold attestation header data
type AttestationData ¶
type AttestationData struct {
Slot uint64
CommitteeIndex uint64
BeaconBlockRoot []byte
Source *Checkpoint
Target *Checkpoint
}
AttestationData to hold attestation detail data
type AttesterSlashing ¶
type AttesterSlashing struct {
Attestation1 *IndexedAttestation
Attestation2 *IndexedAttestation
}
AttesterSlashing is a struct to hold attester slashing
type BLSChange ¶
type BLSChange struct {
Slot uint64 `db:"slot" json:"slot,omitempty"`
BlockRoot []byte `db:"block_rot" json:"blockroot,omitempty"`
Validatorindex uint64 `db:"validatorindex" json:"validatorindex,omitempty"`
BlsPubkey []byte `db:"pubkey" json:"pubkey,omitempty"`
Address []byte `db:"address" json:"address,omitempty"`
Signature []byte `db:"signature" json:"signature,omitempty"`
}
type BLSToExecutionChange ¶
type BeaconCommitteItem ¶
type BeaconCommitteItem struct {
ValidatorIndices []uint64
}
BeaconCommitteItem is a struct to hold beacon committee data
type Block ¶
type Block struct {
Status uint64
Proposer uint64
BlockRoot []byte
Slot uint64
ParentRoot []byte
StateRoot []byte
Signature []byte
RandaoReveal []byte
Graffiti []byte
Eth1Data *Eth1Data
BodyRoot []byte
ProposerSlashings []*ProposerSlashing
AttesterSlashings []*AttesterSlashing
Attestations []*Attestation
Deposits []*Deposit
VoluntaryExits []*VoluntaryExit
SyncAggregate *SyncAggregate // warning: sync aggregate may be nil, for phase0 blocks
ExecutionPayload *ExecutionPayload // warning: payload may be nil, for phase0/altair blocks
Canonical bool
SignedBLSToExecutionChange []*SignedBLSToExecutionChange
}
Block is a struct to hold block data
type BlockComparisonContainer ¶
type BlockComparisonContainer struct {
Epoch uint64
Db *MinimalBlock
Node *MinimalBlock
}
BlockComparisonContainer is a struct to hold block comparison data
type BlockContainer ¶
type BlockContainer struct {
Status uint64
Proposer uint64
Block *ethpb.BeaconBlockContainer
}
BlockContainer is a struct to hold block container data
type BlockPageAttestation ¶
type BlockPageAttestation struct {
BlockSlot uint64 `db:"block_slot"`
BlockIndex uint64 `db:"block_index"`
AggregationBits []byte `db:"aggregationbits"`
Validators pq.Int64Array `db:"validators"`
Signature []byte `db:"signature"`
Slot uint64 `db:"slot"`
CommitteeIndex uint64 `db:"committeeindex"`
BeaconBlockRoot []byte `db:"beaconblockroot"`
SourceEpoch uint64 `db:"source_epoch"`
SourceRoot []byte `db:"source_root"`
TargetEpoch uint64 `db:"target_epoch"`
TargetRoot []byte `db:"target_root"`
}
BlockPageAttestation is a struct to hold attestations on the block page
type BlockPageAttesterSlashing ¶
type BlockPageAttesterSlashing struct {
BlockSlot uint64 `db:"block_slot"`
BlockIndex uint64 `db:"block_index"`
Attestation1Indices pq.Int64Array `db:"attestation1_indices"`
Attestation1Signature []byte `db:"attestation1_signature"`
Attestation1Slot uint64 `db:"attestation1_slot"`
Attestation1Index uint64 `db:"attestation1_index"`
Attestation1BeaconBlockRoot []byte `db:"attestation1_beaconblockroot"`
Attestation1SourceEpoch uint64 `db:"attestation1_source_epoch"`
Attestation1SourceRoot []byte `db:"attestation1_source_root"`
Attestation1TargetEpoch uint64 `db:"attestation1_target_epoch"`
Attestation1TargetRoot []byte `db:"attestation1_target_root"`
Attestation2Indices pq.Int64Array `db:"attestation2_indices"`
Attestation2Signature []byte `db:"attestation2_signature"`
Attestation2Slot uint64 `db:"attestation2_slot"`
Attestation2Index uint64 `db:"attestation2_index"`
Attestation2BeaconBlockRoot []byte `db:"attestation2_beaconblockroot"`
Attestation2SourceEpoch uint64 `db:"attestation2_source_epoch"`
Attestation2SourceRoot []byte `db:"attestation2_source_root"`
Attestation2TargetEpoch uint64 `db:"attestation2_target_epoch"`
Attestation2TargetRoot []byte `db:"attestation2_target_root"`
SlashedValidators []int64
}
BlockPageAttesterSlashing is a struct to hold data for attester slashings on the block page
type BlockPageData ¶
type BlockPageData struct {
Epoch uint64 `db:"epoch"`
EpochFinalized bool `db:"epoch_finalized"`
EpochParticipationRate float64 `db:"epoch_participation_rate"`
Slot uint64 `db:"slot"`
Ts time.Time
NextSlot uint64
PreviousSlot uint64
Proposer uint64 `db:"proposer"`
Status uint64 `db:"status"`
BlockRoot []byte `db:"blockroot"`
ParentRoot []byte `db:"parentroot"`
StateRoot []byte `db:"stateroot"`
Signature []byte `db:"signature"`
RandaoReveal []byte `db:"randaoreveal"`
Graffiti []byte `db:"graffiti"`
ProposerName string `db:"name"`
Eth1dataDepositroot []byte `db:"eth1data_depositroot"`
Eth1dataDepositcount uint64 `db:"eth1data_depositcount"`
Eth1dataBlockhash []byte `db:"eth1data_blockhash"`
SyncAggregateBits []byte `db:"syncaggregate_bits"`
SyncAggregateSignature []byte `db:"syncaggregate_signature"`
SyncAggParticipation float64 `db:"syncaggregate_participation"`
ProposerSlashingsCount uint64 `db:"proposerslashingscount"`
AttesterSlashingsCount uint64 `db:"attesterslashingscount"`
AttestationsCount uint64 `db:"attestationscount"`
DepositsCount uint64 `db:"depositscount"`
WithdrawalCount uint64 `db:"withdrawalcount"`
BLSChangeCount uint64 `db:"bls_change_count"`
VoluntaryExitscount uint64 `db:"voluntaryexitscount"`
SlashingsCount uint64
VotesCount uint64
VotingValidatorsCount uint64
Mainnet bool
ExecParentHash []byte `db:"exec_parent_hash"`
ExecFeeRecipient []byte `db:"exec_fee_recipient"`
ExecStateRoot []byte `db:"exec_state_root"`
ExecReceiptsRoot []byte `db:"exec_receipts_root"`
ExecLogsBloom []byte `db:"exec_logs_bloom"`
ExecRandom []byte `db:"exec_random"`
ExecBlockNumber sql.NullInt64 `db:"exec_block_number"`
ExecGasLimit sql.NullInt64 `db:"exec_gas_limit"`
ExecGasUsed sql.NullInt64 `db:"exec_gas_used"`
ExecTimestamp sql.NullInt64 `db:"exec_timestamp"`
ExecTime time.Time
ExecExtraData []byte `db:"exec_extra_data"`
ExecBaseFeePerGas sql.NullInt64 `db:"exec_base_fee_per_gas"`
ExecBlockHash []byte `db:"exec_block_hash"`
ExecTransactionsCount uint64 `db:"exec_transactions_count"`
Transactions []*BlockPageTransaction
Withdrawals []*Withdrawals
ExecutionData *Eth1BlockPageData
Attestations []*BlockPageAttestation // Attestations included in this block
VoluntaryExits []*BlockPageVoluntaryExits
Votes []*BlockVote // Attestations that voted for that block
AttesterSlashings []*BlockPageAttesterSlashing
ProposerSlashings []*BlockPageProposerSlashing
SyncCommittee []uint64 // TODO: Setting it to contain the validator index
Tags TagMetadataSlice `db:"tags"`
IsValidMev bool `db:"is_valid_mev"`
}
BlockPageData is a struct block data used in the block page
func (*BlockPageData) MarshalJSON ¶
func (u *BlockPageData) MarshalJSON() ([]byte, error)
type BlockPageDeposit ¶
type BlockPageDeposit struct {
PublicKey []byte `db:"publickey"`
WithdrawalCredentials []byte `db:"withdrawalcredentials"`
Amount uint64 `db:"amount"`
Signature []byte `db:"signature"`
}
BlockPageDeposit is a struct to hold data for deposits on the block page
type BlockPageMinMaxSlot ¶
BlockPageMinMaxSlot is a struct to hold min/max slot data
type BlockPageProposerSlashing ¶
type BlockPageProposerSlashing struct {
BlockSlot uint64 `db:"block_slot"`
BlockIndex uint64 `db:"block_index"`
BlockRoot []byte `db:"block_root" json:"block_root"`
ProposerIndex uint64 `db:"proposerindex"`
Header1Slot uint64 `db:"header1_slot"`
Header1ParentRoot []byte `db:"header1_parentroot"`
Header1StateRoot []byte `db:"header1_stateroot"`
Header1BodyRoot []byte `db:"header1_bodyroot"`
Header1Signature []byte `db:"header1_signature"`
Header2Slot uint64 `db:"header2_slot"`
Header2ParentRoot []byte `db:"header2_parentroot"`
Header2StateRoot []byte `db:"header2_stateroot"`
Header2BodyRoot []byte `db:"header2_bodyroot"`
Header2Signature []byte `db:"header2_signature"`
}
BlockPageProposerSlashing is a struct to hold data for proposer slashings on the block page
type BlockPageTransaction ¶
type BlockPageTransaction struct {
BlockSlot uint64 `db:"block_slot"`
BlockIndex uint64 `db:"block_index"`
TxHash []byte `db:"txhash"`
AccountNonce uint64 `db:"nonce"`
// big endian
Price []byte `db:"gas_price"`
PricePretty string
GasLimit uint64 `db:"gas_limit"`
Sender []byte `db:"sender"`
Recipient []byte `db:"recipient"`
// big endian
Amount []byte `db:"amount"`
AmountPretty string
Payload []byte `db:"payload"`
MaxPriorityFeePerGas uint64 `db:"max_priority_fee_per_gas"`
MaxFeePerGas uint64 `db:"max_fee_per_gas"`
}
BlockPageTransaction is a struct to hold execution transactions on the block page
type BlockPageVoluntaryExits ¶
type BlockPageVoluntaryExits struct {
ValidatorIndex uint64 `db:"validatorindex"`
Signature []byte `db:"signature"`
}
BlockPageVoluntaryExits is a struct to hold data for voluntary exits on the block page
type BlockVote ¶
type BlockVote struct {
Validator uint64 `db:"validator"`
IncludedIn uint64 `db:"included_in"`
CommitteeIndex uint64 `db:"committee_index"`
}
BlockVote stores a vote for a given block
type BlocksPageDataBlocks ¶
type BlocksPageDataBlocks struct {
TotalCount uint64 `db:"total_count"`
Epoch uint64 `json:"epoch"`
Slot uint64 `json:"slot"`
Ts time.Time `json:"ts"`
Proposer uint64 `db:"proposer" json:"proposer"`
ProposerFormatted template.HTML `json:"proposer_formatted"`
BlockRoot []byte `db:"blockroot" json:"block_root"`
BlockRootFormatted string `json:"block_root_formatted"`
ParentRoot []byte `db:"parentroot" json:"parent_root"`
Attestations uint64 `db:"attestationscount" json:"attestations"`
Deposits uint64 `db:"depositscount" json:"deposits"`
Withdrawals uint64 `db:"withdrawalcount" json:"withdrawals"`
Exits uint64 `db:"voluntaryexitscount" json:"exits"`
Proposerslashings uint64 `db:"proposerslashingscount" json:"proposerslashings"`
Attesterslashings uint64 `db:"attesterslashingscount" json:"attesterslashings"`
SyncAggParticipation float64 `db:"syncaggregate_participation" json:"sync_aggregate_participation"`
Status uint64 `db:"status" json:"status"`
StatusFormatted template.HTML `json:"status_formatted"`
Votes uint64 `db:"votes" json:"votes"`
Graffiti []byte `db:"graffiti"`
ProposerName string `db:"name"`
}
IndexPageDataBlocks is a struct to hold detail data for the main web page
type BroadcastPageData ¶
type BroadcastStatusPageData ¶
type BroadcastStatusPageData struct {
Job *NodeJob
JobTypeLabel string
JobTitle string
JobJson string
Validators *[]NodeJobValidatorInfo
}
type BulkMutations ¶
type BulkMutations struct {
Keys []string
Muts []*gcp_bigtable.Mutation
}
type BurnPageData ¶
type BurnPageData struct {
TotalBurned float64 `json:"total_burned"`
Blocks []*BurnPageDataBlock `json:"blocks"`
BaseFeeTrend int `json:"base_fee_trend"`
BurnRate1h float64 `json:"burn_rate_1_h"`
BurnRate24h float64 `json:"burn_rate_24_h"`
BlockUtilization float64 `json:"block_utilization"`
Emission float64 `json:"emission"`
Price float64 `json:"price_usd"`
Currency string `json:"currency"`
}
type BurnPageDataBlock ¶
type BurnPageDataBlock struct {
Number int64 `json:"number"`
Hash string `json:"hash"`
GasTarget int64 `json:"gas_target" db:"gaslimit"`
GasUsed int64 `json:"gas_used" db:"gasused"`
Rewards float64 `json:"mining_reward" db:"miningreward"`
Txn int `json:"tx_count" db:"tx_count"`
Age time.Time `json:"time" db:"time"`
BaseFeePerGas float64 `json:"base_fee_per_gas" db:"basefeepergas"`
BurnedFees float64 `json:"burned_fees" db:"burnedfees"`
}
type CanonBlock ¶
type CanonBlock struct {
BlockRoot []byte `db:"blockroot"`
Slot uint64 `db:"slot"`
Canonical bool `db:"-"`
}
CanonBlock is a struct to hold canon block data
type ChainConfig ¶
type ChainConfig struct {
PresetBase string `yaml:"PRESET_BASE"`
ConfigName string `yaml:"CONFIG_NAME"`
TerminalTotalDifficulty string `yaml:"TERMINAL_TOTAL_DIFFICULTY"`
TerminalBlockHash string `yaml:"TERMINAL_BLOCK_HASH"`
TerminalBlockHashActivationEpoch uint64 `yaml:"TERMINAL_BLOCK_HASH_ACTIVATION_EPOCH"`
MinGenesisActiveValidatorCount uint64 `yaml:"MIN_GENESIS_ACTIVE_VALIDATOR_COUNT"`
MinGenesisTime int64 `yaml:"MIN_GENESIS_TIME"`
GenesisForkVersion string `yaml:"GENESIS_FORK_VERSION"`
GenesisDelay uint64 `yaml:"GENESIS_DELAY"`
AltairForkVersion string `yaml:"ALTAIR_FORK_VERSION"`
AltairForkEpoch uint64 `yaml:"ALTAIR_FORK_EPOCH"`
BellatrixForkVersion string `yaml:"BELLATRIX_FORK_VERSION"`
BellatrixForkEpoch uint64 `yaml:"BELLATRIX_FORK_EPOCH"`
CappellaForkVersion string `yaml:"CAPELLA_FORK_VERSION"`
CappellaForkEpoch uint64 `yaml:"CAPELLA_FORK_EPOCH"`
DenebForkVersion string `yaml:"DENEB_FORK_VERSION"`
DenebForkEpoch uint64 `yaml:"DENEB_FORK_EPOCH"`
ShardingForkVersion string `yaml:"SHARDING_FORK_VERSION"`
ShardingForkEpoch uint64 `yaml:"SHARDING_FORK_EPOCH"`
SecondsPerSlot uint64 `yaml:"SECONDS_PER_SLOT"`
SecondsPerEth1Block uint64 `yaml:"SECONDS_PER_ETH1_BLOCK"`
MinValidatorWithdrawabilityDelay uint64 `yaml:"MIN_VALIDATOR_WITHDRAWABILITY_DELAY"`
ShardCommitteePeriod uint64 `yaml:"SHARD_COMMITTEE_PERIOD"`
Eth1FollowDistance uint64 `yaml:"ETH1_FOLLOW_DISTANCE"`
InactivityScoreBias uint64 `yaml:"INACTIVITY_SCORE_BIAS"`
InactivityScoreRecoveryRate uint64 `yaml:"INACTIVITY_SCORE_RECOVERY_RATE"`
EjectionBalance uint64 `yaml:"EJECTION_BALANCE"`
MinPerEpochChurnLimit uint64 `yaml:"MIN_PER_EPOCH_CHURN_LIMIT"`
ChurnLimitQuotient uint64 `yaml:"CHURN_LIMIT_QUOTIENT"`
ProposerScoreBoost uint64 `yaml:"PROPOSER_SCORE_BOOST"`
DepositChainID uint64 `yaml:"DEPOSIT_CHAIN_ID"`
DepositNetworkID uint64 `yaml:"DEPOSIT_NETWORK_ID"`
DepositContractAddress string `yaml:"DEPOSIT_CONTRACT_ADDRESS"`
// phase0
// https://github.com/ethereum/consensus-specs/blob/dev/presets/mainnet/phase0.yaml
MaxCommitteesPerSlot uint64 `yaml:"MAX_COMMITTEES_PER_SLOT"`
TargetCommitteeSize uint64 `yaml:"TARGET_COMMITTEE_SIZE"`
MaxValidatorsPerCommittee uint64 `yaml:"MAX_VALIDATORS_PER_COMMITTEE"`
ShuffleRoundCount uint64 `yaml:"SHUFFLE_ROUND_COUNT"`
HysteresisQuotient uint64 `yaml:"HYSTERESIS_QUOTIENT"`
HysteresisDownwardMultiplier uint64 `yaml:"HYSTERESIS_DOWNWARD_MULTIPLIER"`
HysteresisUpwardMultiplier uint64 `yaml:"HYSTERESIS_UPWARD_MULTIPLIER"`
SafeSlotsToUpdateJustified uint64 `yaml:"SAFE_SLOTS_TO_UPDATE_JUSTIFIED"`
MinDepositAmount uint64 `yaml:"MIN_DEPOSIT_AMOUNT"`
MaxEffectiveBalance uint64 `yaml:"MAX_EFFECTIVE_BALANCE"`
EffectiveBalanceIncrement uint64 `yaml:"EFFECTIVE_BALANCE_INCREMENT"`
MinAttestationInclusionDelay uint64 `yaml:"MIN_ATTESTATION_INCLUSION_DELAY"`
SlotsPerEpoch uint64 `yaml:"SLOTS_PER_EPOCH"`
MinSeedLookahead uint64 `yaml:"MIN_SEED_LOOKAHEAD"`
MaxSeedLookahead uint64 `yaml:"MAX_SEED_LOOKAHEAD"`
EpochsPerEth1VotingPeriod uint64 `yaml:"EPOCHS_PER_ETH1_VOTING_PERIOD"`
SlotsPerHistoricalRoot uint64 `yaml:"SLOTS_PER_HISTORICAL_ROOT"`
MinEpochsToInactivityPenalty uint64 `yaml:"MIN_EPOCHS_TO_INACTIVITY_PENALTY"`
EpochsPerHistoricalVector uint64 `yaml:"EPOCHS_PER_HISTORICAL_VECTOR"`
EpochsPerSlashingsVector uint64 `yaml:"EPOCHS_PER_SLASHINGS_VECTOR"`
HistoricalRootsLimit uint64 `yaml:"HISTORICAL_ROOTS_LIMIT"`
ValidatorRegistryLimit uint64 `yaml:"VALIDATOR_REGISTRY_LIMIT"`
BaseRewardFactor uint64 `yaml:"BASE_REWARD_FACTOR"`
WhistleblowerRewardQuotient uint64 `yaml:"WHISTLEBLOWER_REWARD_QUOTIENT"`
ProposerRewardQuotient uint64 `yaml:"PROPOSER_REWARD_QUOTIENT"`
InactivityPenaltyQuotient uint64 `yaml:"INACTIVITY_PENALTY_QUOTIENT"`
MinSlashingPenaltyQuotient uint64 `yaml:"MIN_SLASHING_PENALTY_QUOTIENT"`
ProportionalSlashingMultiplier uint64 `yaml:"PROPORTIONAL_SLASHING_MULTIPLIER"`
MaxProposerSlashings uint64 `yaml:"MAX_PROPOSER_SLASHINGS"`
MaxAttesterSlashings uint64 `yaml:"MAX_ATTESTER_SLASHINGS"`
MaxAttestations uint64 `yaml:"MAX_ATTESTATIONS"`
MaxDeposits uint64 `yaml:"MAX_DEPOSITS"`
MaxVoluntaryExits uint64 `yaml:"MAX_VOLUNTARY_EXITS"`
// altair
// https://github.com/ethereum/consensus-specs/blob/dev/presets/mainnet/altair.yaml
InvactivityPenaltyQuotientAltair uint64 `yaml:"INACTIVITY_PENALTY_QUOTIENT_ALTAIR"`
MinSlashingPenaltyQuotientAltair uint64 `yaml:"MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR"`
ProportionalSlashingMultiplierAltair uint64 `yaml:"PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR"`
SyncCommitteeSize uint64 `yaml:"SYNC_COMMITTEE_SIZE"`
EpochsPerSyncCommitteePeriod uint64 `yaml:"EPOCHS_PER_SYNC_COMMITTEE_PERIOD"`
MinSyncCommitteeParticipants uint64 `yaml:"MIN_SYNC_COMMITTEE_PARTICIPANTS"`
// bellatrix
// https://github.com/ethereum/consensus-specs/blob/dev/presets/mainnet/bellatrix.yaml
InvactivityPenaltyQuotientBellatrix uint64 `yaml:"INACTIVITY_PENALTY_QUOTIENT_BELLATRIX"`
MinSlashingPenaltyQuotientBellatrix uint64 `yaml:"MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX"`
ProportionalSlashingMultiplierBellatrix uint64 `yaml:"PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX"`
MaxBytesPerTransaction uint64 `yaml:"MAX_BYTES_PER_TRANSACTION"`
MaxTransactionsPerPayload uint64 `yaml:"MAX_TRANSACTIONS_PER_PAYLOAD"`
BytesPerLogsBloom uint64 `yaml:"BYTES_PER_LOGS_BLOOM"`
MaxExtraDataBytes uint64 `yaml:"MAX_EXTRA_DATA_BYTES"`
// capella
// https://github.com/ethereum/consensus-specs/blob/dev/presets/minimal/capella.yaml
MaxWithdrawalsPerPayload uint64 `yaml:"MAX_WITHDRAWALS_PER_PAYLOAD"`
MaxValidatorsPerWithdrawalSweep uint64 `yaml:"MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP"`
MaxBlsToExecutionChange uint64 `yaml:"MAX_BLS_TO_EXECUTION_CHANGES"`
}
https://github.com/ethereum/consensus-specs/blob/dev/configs/mainnet.yaml
type ChainHead ¶
type ChainHead struct {
HeadSlot uint64
HeadEpoch uint64
HeadBlockRoot []byte
FinalizedSlot uint64
FinalizedEpoch uint64
FinalizedBlockRoot []byte
JustifiedSlot uint64
JustifiedEpoch uint64
JustifiedBlockRoot []byte
PreviousJustifiedSlot uint64
PreviousJustifiedEpoch uint64
PreviousJustifiedBlockRoot []byte
}
ChainHead is a struct to hold chain head data
type ChartDataPoint ¶
type ChartsPageData ¶
type ChartsPageData []*ChartsPageDataChart
ChartsPageData is an array to hold charts for the charts-page
type ChartsPageDataChart ¶
type ChartsPageDataChart struct {
Order int
Path string
Data *GenericChartData
Height int
}
ChartsPageDataChart is a struct to hold a chart for the charts-page
type Checkpoint ¶
Checkpoint is a struct to hold checkpoint data
type ClElFloat64 ¶
type Config ¶
type Config struct {
ReaderDatabase struct {
Username string `yaml:"user" envconfig:"READER_DB_USERNAME"`
Password string `yaml:"password" envconfig:"READER_DB_PASSWORD"`
Name string `yaml:"name" envconfig:"READER_DB_NAME"`
Host string `yaml:"host" envconfig:"READER_DB_HOST"`
Port string `yaml:"port" envconfig:"READER_DB_PORT"`
} `yaml:"readerDatabase"`
WriterDatabase struct {
Username string `yaml:"user" envconfig:"WRITER_DB_USERNAME"`
Password string `yaml:"password" envconfig:"WRITER_DB_PASSWORD"`
Name string `yaml:"name" envconfig:"WRITER_DB_NAME"`
Host string `yaml:"host" envconfig:"WRITER_DB_HOST"`
Port string `yaml:"port" envconfig:"WRITER_DB_PORT"`
} `yaml:"writerDatabase"`
Bigtable struct {
Project string `yaml:"project" envconfig:"BIGTABLE_PROJECT"`
Instance string `yaml:"instance" envconfig:"BIGTABLE_INSTANCE"`
} `yaml:"bigtable"`
LastAttestationCachePath string `yaml:"lastAttestationCachePath" envconfig:"LAST_ATTESTATION_CACHE_PATH"`
Chain struct {
Name string `yaml:"name" envconfig:"CHAIN_NAME"`
GenesisTimestamp uint64 `yaml:"genesisTimestamp" envconfig:"CHAIN_GENESIS_TIMESTAMP"`
GenesisValidatorsRoot string `yaml:"genesisValidatorsRoot" envconfig:"CHAIN_GENESIS_VALIDATORS_ROOT"`
DomainBLSToExecutionChange string `yaml:"domainBLSToExecutionChange" envconfig:"CHAIN_DOMAIN_BLS_TO_EXECUTION_CHANGE"`
DomainVoluntaryExit string `yaml:"domainVoluntaryExit" envconfig:"CHAIN_DOMAIN_VOLUNTARY_EXIT"`
ConfigPath string `yaml:"configPath" envconfig:"CHAIN_CONFIG_PATH"`
Config ChainConfig
} `yaml:"chain"`
Eth1ErigonEndpoint string `yaml:"eth1ErigonEndpoint" envconfig:"ETH1_ERIGON_ENDPOINT"`
Eth1GethEndpoint string `yaml:"eth1GethEndpoint" envconfig:"ETH1_GETH_ENDPOINT"`
EtherscanAPIKey string `yaml:"etherscanApiKey" envconfig:"ETHERSCAN_API_KEY"`
RedisCacheEndpoint string `yaml:"redisCacheEndpoint" envconfig:"REDIS_CACHE_ENDPOINT"`
TieredCacheProvider string `yaml:"tieredCacheProvider" envconfig:"CACHE_PROVIDER"`
ReportServiceStatus bool `yaml:"reportServiceStatus" envconfig:"REPORT_SERVICE_STATUS"`
Indexer struct {
Enabled bool `yaml:"enabled" envconfig:"INDEXER_ENABLED"`
FixCanonOnStartup bool `yaml:"fixCanonOnStartup" envconfig:"INDEXER_FIX_CANON_ON_STARTUP"`
FullIndexOnStartup bool `yaml:"fullIndexOnStartup" envconfig:"INDEXER_FULL_INDEX_ON_STARTUP"`
IndexMissingEpochsOnStartup bool `yaml:"indexMissingEpochsOnStartup" envconfig:"INDEXER_MISSING_INDEX_ON_STARTUP"`
CheckAllBlocksOnStartup bool `yaml:"checkAllBlocksOnStartup" envconfig:"INDEXER_CHECK_ALL_BLOCKS_ON_STARTUP"`
UpdateAllEpochStatistics bool `yaml:"updateAllEpochStatistics" envconfig:"INDEXER_UPDATE_ALL_EPOCH_STATISTICS"`
Node struct {
Port string `yaml:"port" envconfig:"INDEXER_NODE_PORT"`
Host string `yaml:"host" envconfig:"INDEXER_NODE_HOST"`
Type string `yaml:"type" envconfig:"INDEXER_NODE_TYPE"`
PageSize int32 `yaml:"pageSize" envconfig:"INDEXER_NODE_PAGE_SIZE"`
} `yaml:"node"`
// Deprecated Please use Phase0 config DEPOSIT_CONTRACT_ADDRESS
Eth1DepositContractAddress string `yaml:"eth1DepositContractAddress" envconfig:"INDEXER_ETH1_DEPOSIT_CONTRACT_ADDRESS"`
Eth1DepositContractFirstBlock uint64 `yaml:"eth1DepositContractFirstBlock" envconfig:"INDEXER_ETH1_DEPOSIT_CONTRACT_FIRST_BLOCK"`
OneTimeExport struct {
Enabled bool `yaml:"enabled" envconfig:"INDEXER_ONETIMEEXPORT_ENABLED"`
StartEpoch uint64 `yaml:"startEpoch" envconfig:"INDEXER_ONETIMEEXPORT_START_EPOCH"`
EndEpoch uint64 `yaml:"endEpoch" envconfig:"INDEXER_ONETIMEEXPORT_END_EPOCH"`
Epochs []uint64 `yaml:"epochs" envconfig:"INDEXER_ONETIMEEXPORT_EPOCHS"`
} `yaml:"onetimeexport"`
PubKeyTagsExporter struct {
Enabled bool `yaml:"enabled" envconfig:"PUBKEY_TAGS_EXPORTER_ENABLED"`
} `yaml:"pubkeyTagsExporter"`
} `yaml:"indexer"`
Frontend struct {
Debug bool `yaml:"debug" envconfig:"FRONTEND_DEBUG"`
BeaconchainETHPoolBridgeSecret string `yaml:"beaconchainETHPoolBridgeSecret" envconfig:"FRONTEND_BEACONCHAIN_ETHPOOL_BRIDGE_SECRET"`
Kong string `yaml:"kong" envconfig:"FRONTEND_KONG"`
OnlyAPI bool `yaml:"onlyAPI" envconfig:"FRONTEND_ONLY_API"`
CsrfAuthKey string `yaml:"csrfAuthKey" envconfig:"FRONTEND_CSRF_AUTHKEY"`
CsrfInsecure bool `yaml:"csrfInsecure" envconfig:"FRONTEND_CSRF_INSECURE"`
DisableCharts bool `yaml:"disableCharts" envconfig:"disableCharts"`
RecaptchaSiteKey string `yaml:"recaptchaSiteKey" envconfig:"FRONTEND_RECAPTCHA_SITEKEY"`
RecaptchaSecretKey string `yaml:"recaptchaSecretKey" envconfig:"FRONTEND_RECAPTCHA_SECRETKEY"`
Enabled bool `yaml:"enabled" envconfig:"FRONTEND_ENABLED"`
// Imprint is deprdecated place imprint file into the legal directory
Imprint string `yaml:"imprint" envconfig:"FRONTEND_IMPRINT"`
LegalDir string `yaml:"legalDir" envconfig:"FRONTEND_LEGAL"`
SiteDomain string `yaml:"siteDomain" envconfig:"FRONTEND_SITE_DOMAIN"`
SiteName string `yaml:"siteName" envconfig:"FRONTEND_SITE_NAME"`
SiteSubtitle string `yaml:"siteSubtitle" envconfig:"FRONTEND_SITE_SUBTITLE"`
Server struct {
Port string `yaml:"port" envconfig:"FRONTEND_SERVER_PORT"`
Host string `yaml:"host" envconfig:"FRONTEND_SERVER_HOST"`
} `yaml:"server"`
ReaderDatabase struct {
Username string `yaml:"user" envconfig:"FRONTEND_READER_DB_USERNAME"`
Password string `yaml:"password" envconfig:"FRONTEND_READER_DB_PASSWORD"`
Name string `yaml:"name" envconfig:"FRONTEND_READER_DB_NAME"`
Host string `yaml:"host" envconfig:"FRONTEND_READER_DB_HOST"`
Port string `yaml:"port" envconfig:"FRONTEND_READER_DB_PORT"`
} `yaml:"readerDatabase"`
WriterDatabase struct {
Username string `yaml:"user" envconfig:"FRONTEND_WRITER_DB_USERNAME"`
Password string `yaml:"password" envconfig:"FRONTEND_WRITER_DB_PASSWORD"`
Name string `yaml:"name" envconfig:"FRONTEND_WRITER_DB_NAME"`
Host string `yaml:"host" envconfig:"FRONTEND_WRITER_DB_HOST"`
Port string `yaml:"port" envconfig:"FRONTEND_WRITER_DB_PORT"`
} `yaml:"writerDatabase"`
Stripe struct {
SecretKey string `yaml:"secretKey" envconfig:"FRONTEND_STRIPE_SECRET_KEY"`
PublicKey string `yaml:"publicKey" envconfig:"FRONTEND_STRIPE_PUBLIC_KEY"`
Sapphire string `yaml:"sapphire" envconfig:"FRONTEND_STRIPE_SAPPHIRE"`
Emerald string `yaml:"emerald" envconfig:"FRONTEND_STRIPE_EMERALD"`
Diamond string `yaml:"diamond" envconfig:"FRONTEND_STRIPE_DIAMOND"`
Whale string `yaml:"whale" envconfig:"FRONTEND_STRIPE_WHALE"`
Goldfish string `yaml:"goldfish" envconfig:"FRONTEND_STRIPE_GOLDFISH"`
Plankton string `yaml:"plankton" envconfig:"FRONTEND_STRIPE_PLANKTON"`
Webhook string `yaml:"webhook" envconfig:"FRONTEND_STRIPE_WEBHOOK"`
}
SessionSecret string `yaml:"sessionSecret" envconfig:"FRONTEND_SESSION_SECRET"`
JwtSigningSecret string `yaml:"jwtSigningSecret" envconfig:"FRONTEND_JWT_SECRET"`
JwtIssuer string `yaml:"jwtIssuer" envconfig:"FRONTEND_JWT_ISSUER"`
JwtValidityInMinutes int `yaml:"jwtValidityInMinutes" envconfig:"FRONTEND_JWT_VALIDITY_INMINUTES"`
MaxMailsPerEmailPerDay int `yaml:"maxMailsPerEmailPerDay" envconfig:"FRONTEND_MAX_MAIL_PER_EMAIL_PER_DAY"`
Mail struct {
SMTP struct {
Server string `yaml:"server" envconfig:"FRONTEND_MAIL_SMTP_SERVER"`
Host string `yaml:"host" envconfig:"FRONTEND_MAIL_SMTP_HOST"`
User string `yaml:"user" envconfig:"FRONTEND_MAIL_SMTP_USER"`
Password string `yaml:"password" envconfig:"FRONTEND_MAIL_SMTP_PASSWORD"`
} `yaml:"smtp"`
Mailgun struct {
Domain string `yaml:"domain" envconfig:"FRONTEND_MAIL_MAILGUN_DOMAIN"`
PrivateKey string `yaml:"privateKey" envconfig:"FRONTEND_MAIL_MAILGUN_PRIVATE_KEY"`
Sender string `yaml:"sender" envconfig:"FRONTEND_MAIL_MAILGUN_SENDER"`
} `yaml:"mailgun"`
} `yaml:"mail"`
GATag string `yaml:"gatag" envconfig:"GATAG"`
VerifyAppSubs bool `yaml:"verifyAppSubscriptions" envconfig:"FRONTEND_VERIFY_APP_SUBSCRIPTIONS"`
AppSubsAppleSecret string `yaml:"appSubsAppleSecret" envconfig:"FRONTEND_APP_SUBS_APPLE_SECRET"`
AppSubsGoogleJSONPath string `yaml:"appSubsGoogleJsonPath" envconfig:"FRONTEND_APP_SUBS_GOOGLE_JSON_PATH"`
DisableStatsInserts bool `yaml:"disableStatsInserts" envconfig:"FRONTEND_DISABLE_STATS_INSERTS"`
ShowDonors struct {
Enabled bool `yaml:"enabled" envconfig:"FRONTEND_SHOW_DONORS_ENABLED"`
URL string `yaml:"gitcoinURL" envconfig:"FRONTEND_GITCOIN_URL"`
} `yaml:"showDonors"`
Countdown struct {
Enabled bool `yaml:"enabled" envconfig:"FRONTEND_COUNTDOWN_ENABLED"`
Title template.HTML `yaml:"title" envconfig:"FRONTEND_COUNTDOWN_TITLE"`
Timestamp uint64 `yaml:"timestamp" envconfig:"FRONTEND_COUNTDOWN_TIMESTAMP"`
Info string `yaml:"info" envconfig:"FRONTEND_COUNTDOWN_INFO"`
} `yaml:"countdown"`
Validator struct {
ShowProposerRewards bool `yaml:"showProposerRewards" envconfig:"FRONTEND_SHOW_PROPOSER_REWARDS"`
} `yaml:"validator"`
HttpReadTimeout time.Duration `yaml:"httpReadTimeout" envconfig:"FRONTEND_HTTP_READ_TIMEOUT"`
HttpWriteTimeout time.Duration `yaml:"httpWriteTimeout" envconfig:"FRONTEND_HTTP_WRITE_TIMEOUT"`
HttpIdleTimeout time.Duration `yaml:"httpIdleTimeout" envconfig:"FRONTEND_HTTP_IDLE_TIMEOUT"`
} `yaml:"frontend"`
Metrics struct {
Enabled bool `yaml:"enabled" envconfig:"METRICS_ENABLED"`
Address string `yaml:"address" envconfig:"METRICS_ADDRESS"`
Pprof bool `yaml:"pprof" envconfig:"METRICS_PPROF"`
} `yaml:"metrics"`
Notifications struct {
Enabled bool `yaml:"enabled" envconfig:"NOTIFICATIONS_ENABLED"`
Sender bool `yaml:"sender" envconfig:"NOTIFICATIONS_SENDER"`
UserDBNotifications bool `yaml:"userDbNotifications" envconfig:"USERDB_NOTIFICATIONS_ENABLED"`
FirebaseCredentialsPath string `yaml:"firebaseCredentialsPath" envconfig:"NOTIFICATIONS_FIREBASE_CRED_PATH"`
ValidatorBalanceDecreasedNotificationsEnabled bool `yaml:"validatorBalanceDecreasedNotificationsEnabled" envconfig:"VALIDATOR_BALANCE_DECREASED_NOTIFICATIONS_ENABLED"`
PubkeyCachePath string `yaml:"pubkeyCachePath" envconfig:"NOTIFICATIONS_PUBKEY_CACHE_PATH"`
} `yaml:"notifications"`
SSVExporter struct {
Enabled bool `yaml:"enabled" envconfig:"SSV_EXPORTER_ENABLED"`
Address string `yaml:"address" envconfig:"SSV_EXPORTER_ADDRESS"`
} `yaml:"SSVExporter"`
RocketpoolExporter struct {
Enabled bool `yaml:"enabled" envconfig:"ROCKETPOOL_EXPORTER_ENABLED"`
} `yaml:"rocketpoolExporter"`
MevBoostRelayExporter struct {
Enabled bool `yaml:"enabled" envconfig:"MEVBOOSTRELAY_EXPORTER_ENABLED"`
} `yaml:"mevBoostRelayExporter"`
Pprof struct {
Enabled bool `yaml:"enabled" envconfig:"PPROF_ENABLED"`
Port string `yaml:"port" envconfig:"PPROF_PORT"`
} `yaml:"pprof"`
NodeJobsProcessor struct {
ElEndpoint string `yaml:"elEndpoint" envconfig:"NODE_JOBS_PROCESSOR_EL_ENDPOINT"`
ClEndpoint string `yaml:"clEndpoint" envconfig:"NODE_JOBS_PROCESSOR_CL_ENDPOINT"`
} `yaml:"nodeJobsProcessor"`
}
Config is a struct to hold the configuration data
type ContractMetadata ¶
type CorrelationData ¶
type CorrelationDataResponse ¶
type CreateNodeJobUserError ¶
type CreateNodeJobUserError struct {
Message string
}
func (CreateNodeJobUserError) Error ¶
func (e CreateNodeJobUserError) Error() string
type DailyProposalCount ¶
DailyProposalCount is a struct for the daily proposal count data
type DashboardData ¶
type DashboardData struct {
Csrf string `json:"csrf"`
ValidatorLimit int `json:"valLimit"`
CappellaHasHappened bool
NextWithdrawalRow [][]interface{}
}
DashboardData is a struct to hold data for the dashboard-page
type DashboardRequest ¶
type DashboardRequest struct {
IndicesOrPubKey string `json:"indicesOrPubkey"`
}
type DashboardValidatorBalanceHistory ¶
type DashboardValidatorBalanceHistory struct {
Epoch uint64 `db:"epoch"`
Balance uint64 `db:"balance"`
EffectiveBalance uint64 `db:"effectivebalance"`
ValidatorCount float64 `db:"validatorcount"`
}
DashboardValidatorBalanceHistory is a struct to hold data for the balance-history on the dashboard-page
type DataTableResponse ¶
type DataTableResponse struct {
Draw uint64 `json:"draw"`
RecordsTotal uint64 `json:"recordsTotal"`
RecordsFiltered uint64 `json:"recordsFiltered"`
Data [][]interface{} `json:"data"`
PageLength uint64 `json:"pageLength"`
DisplayStart uint64 `json:"displayStart"`
PagingToken string `json:"pagingToken"`
}
DataTableResponse is a struct to hold data for data table responses
type DataTableSaveState ¶
type DataTableSaveState struct {
Key string `json:"key"`
Time uint64 `json:"time"` // Time stamp of when the object was created
Start uint64 `json:"start"` // Display start point
Length uint64 `json:"length"` // Page length
Order [][]string `json:"order"` // 2D array of column ordering information (see `order` option)
Search DataTableSaveStateSearch `json:"search"`
Columns []DataTableSaveStateColumns `json:"columns"`
}
func (*DataTableSaveState) Scan ¶
func (e *DataTableSaveState) Scan(value interface{}) error
type DataTableSaveStateColumns ¶
type DataTableSaveStateColumns struct {
Visible bool `json:"visible"`
Search DataTableSaveStateSearch `json:"search"`
}
type DataTableSaveStateOrder ¶
type DataTableSaveStateOrder struct {
}
type DataTableSaveStateSearch ¶
type DataTableSaveStateSearch struct {
Search string `json:"search"` // Search term
Regex bool `json:"regex"` // Indicate if the search term should be treated as regex or not
Smart bool `json:"smart"` // Flag to enable DataTables smart search
CaseInsensitive bool `json:"caseInsensitive"` // Case insensitive flag
}
type DatabaseConfig ¶
type Deposit ¶
type Deposit struct {
Proof [][]byte
PublicKey []byte
WithdrawalCredentials []byte
Amount uint64
Signature []byte
}
Deposit is a struct to hold deposit data
type DepositsPageData ¶
type DepositsPageData struct {
*Stats
DepositContract string
DepositChart *ChartsPageDataChart
}
type DiscordComponent ¶
type DiscordComponent struct {
Type uint64 `json:"type"`
Components []DiscordComponentButton `json:"components"`
}
type DiscordComponentButton ¶
type DiscordEmbed ¶
type DiscordEmbed struct {
Color string `json:"color,omitempty"`
Description string `json:"description,omitempty"`
Fields []DiscordEmbedField `json:"fields,omitempty"`
Title string `json:"title,omitempty"`
Type string `json:"type,omitempty"`
}
type DiscordEmbedField ¶
type DiscordReq ¶
type DiscordReq struct {
Content string `json:"content,omitempty"`
Username string `json:"username,omitempty"`
Avatar_url string `json:"avatar_url,omitempty"`
Tts bool `json:"tts,omitempty"`
Embeds []DiscordEmbed `json:"embeds,omitempty"`
AllowedMentions []interface{} `json:"allowedMentions,omitempty"`
Components []DiscordComponent `json:"components,omitempty"`
Files interface{} `json:"files,omitempty"`
Payload string `json:"payload,omitempty"`
Attachments interface{} `json:"attachments,omitempty"`
Flags int `json:"flags,omitempty"`
}
func (*DiscordReq) Scan ¶
func (e *DiscordReq) Scan(value interface{}) error
type ERC20Metadata ¶
type ERC20Metadata struct {
Decimals []byte
Symbol string
Name string
Description string
Logo []byte
LogoFormat string
TotalSupply []byte
OfficialSite string
Price []byte
}
func (ERC20Metadata) MarshalBinary ¶
func (metadata ERC20Metadata) MarshalBinary() ([]byte, error)
func (ERC20Metadata) UnmarshalBinary ¶
func (metadata ERC20Metadata) UnmarshalBinary(data []byte) error
type ERC20TokenPrice ¶
type ETh1ERC1155Indexed ¶
type ETh1ERC1155Indexed struct {
ParentHash []byte `protobuf:"bytes,1,opt,name=parent_hash,json=parentHash,proto3" json:"parent_hash,omitempty"`
BlockNumber uint64 `protobuf:"varint,2,opt,name=block_number,json=blockNumber,proto3" json:"block_number,omitempty"`
TokenAddress []byte `protobuf:"bytes,3,opt,name=token_address,json=tokenAddress,proto3" json:"token_address,omitempty"`
Time *timestamp.Timestamp `protobuf:"bytes,4,opt,name=time,proto3" json:"time,omitempty"`
From []byte `protobuf:"bytes,5,opt,name=from,proto3" json:"from,omitempty"`
To []byte `protobuf:"bytes,6,opt,name=to,proto3" json:"to,omitempty"`
TokenId []byte `protobuf:"bytes,7,opt,name=token_id,json=tokenId,proto3" json:"token_id,omitempty"`
Value []byte `protobuf:"bytes,8,opt,name=value,proto3" json:"value,omitempty"`
// the address approved to make the transfer
Operator []byte `protobuf:"bytes,9,opt,name=operator,proto3" json:"operator,omitempty"`
// contains filtered or unexported fields
}
https://eips.ethereum.org/EIPS/eip-1155
func (*ETh1ERC1155Indexed) Descriptor
deprecated
func (*ETh1ERC1155Indexed) Descriptor() ([]byte, []int)
Deprecated: Use ETh1ERC1155Indexed.ProtoReflect.Descriptor instead.
func (*ETh1ERC1155Indexed) GetBlockNumber ¶
func (x *ETh1ERC1155Indexed) GetBlockNumber() uint64
func (*ETh1ERC1155Indexed) GetFrom ¶
func (x *ETh1ERC1155Indexed) GetFrom() []byte
func (*ETh1ERC1155Indexed) GetOperator ¶
func (x *ETh1ERC1155Indexed) GetOperator() []byte
func (*ETh1ERC1155Indexed) GetParentHash ¶
func (x *ETh1ERC1155Indexed) GetParentHash() []byte
func (*ETh1ERC1155Indexed) GetTime ¶
func (x *ETh1ERC1155Indexed) GetTime() *timestamp.Timestamp
func (*ETh1ERC1155Indexed) GetTo ¶
func (x *ETh1ERC1155Indexed) GetTo() []byte
func (*ETh1ERC1155Indexed) GetTokenAddress ¶
func (x *ETh1ERC1155Indexed) GetTokenAddress() []byte
func (*ETh1ERC1155Indexed) GetTokenId ¶
func (x *ETh1ERC1155Indexed) GetTokenId() []byte
func (*ETh1ERC1155Indexed) GetValue ¶
func (x *ETh1ERC1155Indexed) GetValue() []byte
func (*ETh1ERC1155Indexed) ProtoMessage ¶
func (*ETh1ERC1155Indexed) ProtoMessage()
func (*ETh1ERC1155Indexed) ProtoReflect ¶
func (x *ETh1ERC1155Indexed) ProtoReflect() protoreflect.Message
func (*ETh1ERC1155Indexed) Reset ¶
func (x *ETh1ERC1155Indexed) Reset()
func (*ETh1ERC1155Indexed) String ¶
func (x *ETh1ERC1155Indexed) String() string
type EmailAttachment ¶
type EpochAssignments ¶
type EpochAssignments struct {
ProposerAssignments map[uint64]uint64
AttestorAssignments map[string]uint64
SyncAssignments []uint64
}
EpochAssignments is a struct to hold epoch assignment data
type EpochData ¶
type EpochData struct {
Epoch uint64
Validators []*Validator
ValidatorAssignmentes *EpochAssignments
Blocks map[uint64]map[string]*Block
EpochParticipationStats *ValidatorParticipation
}
EpochData is a struct to hold epoch data
type EpochPageData ¶
type EpochPageData struct {
Epoch uint64 `db:"epoch"`
BlocksCount uint64 `db:"blockscount"`
ProposerSlashingsCount uint64 `db:"proposerslashingscount"`
AttesterSlashingsCount uint64 `db:"attesterslashingscount"`
AttestationsCount uint64 `db:"attestationscount"`
DepositsCount uint64 `db:"depositscount"`
WithdrawalCount uint64 `db:"withdrawalcount"`
DepositTotal uint64 `db:"deposittotal"`
WithdrawalTotal template.HTML `db:"withdrawaltotal"`
VoluntaryExitsCount uint64 `db:"voluntaryexitscount"`
ValidatorsCount uint64 `db:"validatorscount"`
AverageValidatorBalance uint64 `db:"averagevalidatorbalance"`
Finalized bool `db:"finalized"`
EligibleEther uint64 `db:"eligibleether"`
GlobalParticipationRate float64 `db:"globalparticipationrate"`
VotedEther uint64 `db:"votedether"`
Blocks []*IndexPageDataBlocks
SyncParticipationRate float64
Ts time.Time
NextEpoch uint64
PreviousEpoch uint64
ProposedCount uint64
MissedCount uint64
ScheduledCount uint64
OrphanedCount uint64
}
EpochPageData is a struct to hold detailed epoch data for the epoch page
type EpochPageMinMaxSlot ¶
EpochPageMinMaxSlot is a struct for the min/max epoch data
type EpochsPageData ¶
type EpochsPageData struct {
Epoch uint64 `db:"epoch"`
BlocksCount uint64 `db:"blockscount"`
ProposerSlashingsCount uint64 `db:"proposerslashingscount"`
AttesterSlashingsCount uint64 `db:"attesterslashingscount"`
AttestationsCount uint64 `db:"attestationscount"`
DepositsCount uint64 `db:"depositscount"`
WithdrawalCount uint64 `db:"withdrawalcount"`
VoluntaryExitsCount uint64 `db:"voluntaryexitscount"`
ValidatorsCount uint64 `db:"validatorscount"`
AverageValidatorBalance uint64 `db:"averagevalidatorbalance"`
Finalized bool `db:"finalized"`
EligibleEther uint64 `db:"eligibleether"`
GlobalParticipationRate float64 `db:"globalparticipationrate"`
VotedEther uint64 `db:"votedether"`
}
EpochsPageData is a struct to hold epoch data for the epochs page
type ErrorResponse ¶
func (*ErrorResponse) Scan ¶
func (e *ErrorResponse) Scan(value interface{}) error
type Eth1AddressBalance ¶
type Eth1AddressBalance struct {
Address []byte
Token []byte
Balance []byte
Metadata *ERC20Metadata
}
type Eth1AddressMetadata ¶
type Eth1AddressMetadata struct {
Balances []*Eth1AddressBalance
ERC20 *ERC20Metadata
Name string
Tags []template.HTML
EthBalance *Eth1AddressBalance
}
type Eth1AddressPageData ¶
type Eth1AddressPageData struct {
Address string `json:"address"`
IsContract bool
QRCode string `json:"qr_code_base64"`
QRCodeInverse string
Metadata *Eth1AddressMetadata
WithdrawalsSummary template.HTML
BlocksMinedTable *DataTableResponse
UnclesMinedTable *DataTableResponse
TransactionsTable *DataTableResponse
InternalTxnsTable *DataTableResponse
Erc20Table *DataTableResponse
Erc721Table *DataTableResponse
Erc1155Table *DataTableResponse
WithdrawalsTable *DataTableResponse
EtherValue template.HTML
Tabs []Eth1AddressPageTabs
}
type Eth1AddressPageTabs ¶
type Eth1AddressPageTabs struct {
Id string
Href string
Text string
Data *DataTableResponse
}
type Eth1AddressSearchItem ¶
type Eth1Block ¶
type Eth1Block struct {
Hash []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
ParentHash []byte `protobuf:"bytes,2,opt,name=parent_hash,json=parentHash,proto3" json:"parent_hash,omitempty"`
UncleHash []byte `protobuf:"bytes,3,opt,name=uncle_hash,json=uncleHash,proto3" json:"uncle_hash,omitempty"`
Coinbase []byte `protobuf:"bytes,4,opt,name=coinbase,proto3" json:"coinbase,omitempty"`
Root []byte `protobuf:"bytes,5,opt,name=root,proto3" json:"root,omitempty"`
TxHash []byte `protobuf:"bytes,6,opt,name=tx_hash,json=txHash,proto3" json:"tx_hash,omitempty"`
ReceiptHash []byte `protobuf:"bytes,7,opt,name=receipt_hash,json=receiptHash,proto3" json:"receipt_hash,omitempty"`
Difficulty []byte `protobuf:"bytes,8,opt,name=difficulty,proto3" json:"difficulty,omitempty"`
Number uint64 `protobuf:"varint,9,opt,name=number,proto3" json:"number,omitempty"`
GasLimit uint64 `protobuf:"varint,10,opt,name=gas_limit,json=gasLimit,proto3" json:"gas_limit,omitempty"`
GasUsed uint64 `protobuf:"varint,11,opt,name=gas_used,json=gasUsed,proto3" json:"gas_used,omitempty"`
Time *timestamp.Timestamp `protobuf:"bytes,12,opt,name=time,proto3" json:"time,omitempty"`
Extra []byte `protobuf:"bytes,13,opt,name=extra,proto3" json:"extra,omitempty"`
MixDigest []byte `protobuf:"bytes,14,opt,name=mix_digest,json=mixDigest,proto3" json:"mix_digest,omitempty"`
Bloom []byte `protobuf:"bytes,17,opt,name=bloom,proto3" json:"bloom,omitempty"`
BaseFee []byte `protobuf:"bytes,18,opt,name=base_fee,json=baseFee,proto3" json:"base_fee,omitempty"`
Uncles []*Eth1Block `protobuf:"bytes,20,rep,name=uncles,proto3" json:"uncles,omitempty"`
Transactions []*Eth1Transaction `protobuf:"bytes,21,rep,name=transactions,proto3" json:"transactions,omitempty"`
Withdrawals []*Eth1Withdrawal `protobuf:"bytes,22,rep,name=withdrawals,proto3" json:"withdrawals,omitempty"`
// contains filtered or unexported fields
}
Eth1Block is stored in the blocks table under <chainID>:<reversePaddedNumber>
func (*Eth1Block) Descriptor
deprecated
func (*Eth1Block) GetBaseFee ¶
func (*Eth1Block) GetCoinbase ¶
func (*Eth1Block) GetDifficulty ¶
func (*Eth1Block) GetGasLimit ¶
func (*Eth1Block) GetGasUsed ¶
func (*Eth1Block) GetMixDigest ¶
func (*Eth1Block) GetParentHash ¶
func (*Eth1Block) GetReceiptHash ¶
func (*Eth1Block) GetTransactions ¶
func (x *Eth1Block) GetTransactions() []*Eth1Transaction
func (*Eth1Block) GetUncleHash ¶
func (*Eth1Block) GetWithdrawals ¶
func (x *Eth1Block) GetWithdrawals() []*Eth1Withdrawal
func (*Eth1Block) ProtoMessage ¶
func (*Eth1Block) ProtoMessage()
func (*Eth1Block) ProtoReflect ¶
func (x *Eth1Block) ProtoReflect() protoreflect.Message
type Eth1BlockIndexed ¶
type Eth1BlockIndexed struct {
Hash []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
ParentHash []byte `protobuf:"bytes,2,opt,name=parent_hash,json=parentHash,proto3" json:"parent_hash,omitempty"`
UncleHash []byte `protobuf:"bytes,3,opt,name=uncle_hash,json=uncleHash,proto3" json:"uncle_hash,omitempty"`
Coinbase []byte `protobuf:"bytes,4,opt,name=coinbase,proto3" json:"coinbase,omitempty"`
Difficulty []byte `protobuf:"bytes,8,opt,name=difficulty,proto3" json:"difficulty,omitempty"`
Number uint64 `protobuf:"varint,9,opt,name=number,proto3" json:"number,omitempty"`
GasLimit uint64 `protobuf:"varint,10,opt,name=gas_limit,json=gasLimit,proto3" json:"gas_limit,omitempty"`
GasUsed uint64 `protobuf:"varint,11,opt,name=gas_used,json=gasUsed,proto3" json:"gas_used,omitempty"`
Time *timestamp.Timestamp `protobuf:"bytes,12,opt,name=time,proto3" json:"time,omitempty"`
BaseFee []byte `protobuf:"bytes,18,opt,name=base_fee,json=baseFee,proto3" json:"base_fee,omitempty"`
UncleCount uint64 `protobuf:"varint,19,opt,name=uncle_count,json=uncleCount,proto3" json:"uncle_count,omitempty"`
TransactionCount uint64 `protobuf:"varint,20,opt,name=transaction_count,json=transactionCount,proto3" json:"transaction_count,omitempty"`
Mev []byte `protobuf:"bytes,21,opt,name=mev,proto3" json:"mev,omitempty"`
LowestGasPrice []byte `protobuf:"bytes,22,opt,name=lowest_gas_price,json=lowestGasPrice,proto3" json:"lowest_gas_price,omitempty"`
HighestGasPrice []byte `protobuf:"bytes,23,opt,name=highest_gas_price,json=highestGasPrice,proto3" json:"highest_gas_price,omitempty"`
// uint64 duration = 24;
TxReward []byte `protobuf:"bytes,25,opt,name=tx_reward,json=txReward,proto3" json:"tx_reward,omitempty"`
UncleReward []byte `protobuf:"bytes,26,opt,name=uncle_reward,json=uncleReward,proto3" json:"uncle_reward,omitempty"`
// bytes base_fee_change = 27;
// bytes block_utilization_change = 28;
InternalTransactionCount uint64 `` /* 137-byte string literal not displayed */
// contains filtered or unexported fields
}
func (*Eth1BlockIndexed) Descriptor
deprecated
func (*Eth1BlockIndexed) Descriptor() ([]byte, []int)
Deprecated: Use Eth1BlockIndexed.ProtoReflect.Descriptor instead.
func (*Eth1BlockIndexed) GetBaseFee ¶
func (x *Eth1BlockIndexed) GetBaseFee() []byte
func (*Eth1BlockIndexed) GetCoinbase ¶
func (x *Eth1BlockIndexed) GetCoinbase() []byte
func (*Eth1BlockIndexed) GetDifficulty ¶
func (x *Eth1BlockIndexed) GetDifficulty() []byte
func (*Eth1BlockIndexed) GetGasLimit ¶
func (x *Eth1BlockIndexed) GetGasLimit() uint64
func (*Eth1BlockIndexed) GetGasUsed ¶
func (x *Eth1BlockIndexed) GetGasUsed() uint64
func (*Eth1BlockIndexed) GetHash ¶
func (x *Eth1BlockIndexed) GetHash() []byte
func (*Eth1BlockIndexed) GetHighestGasPrice ¶
func (x *Eth1BlockIndexed) GetHighestGasPrice() []byte
func (*Eth1BlockIndexed) GetInternalTransactionCount ¶
func (x *Eth1BlockIndexed) GetInternalTransactionCount() uint64
func (*Eth1BlockIndexed) GetLowestGasPrice ¶
func (x *Eth1BlockIndexed) GetLowestGasPrice() []byte
func (*Eth1BlockIndexed) GetMev ¶
func (x *Eth1BlockIndexed) GetMev() []byte
func (*Eth1BlockIndexed) GetNumber ¶
func (x *Eth1BlockIndexed) GetNumber() uint64
func (*Eth1BlockIndexed) GetParentHash ¶
func (x *Eth1BlockIndexed) GetParentHash() []byte
func (*Eth1BlockIndexed) GetTime ¶
func (x *Eth1BlockIndexed) GetTime() *timestamp.Timestamp
func (*Eth1BlockIndexed) GetTransactionCount ¶
func (x *Eth1BlockIndexed) GetTransactionCount() uint64
func (*Eth1BlockIndexed) GetTxReward ¶
func (x *Eth1BlockIndexed) GetTxReward() []byte
func (*Eth1BlockIndexed) GetUncleCount ¶
func (x *Eth1BlockIndexed) GetUncleCount() uint64
func (*Eth1BlockIndexed) GetUncleHash ¶
func (x *Eth1BlockIndexed) GetUncleHash() []byte
func (*Eth1BlockIndexed) GetUncleReward ¶
func (x *Eth1BlockIndexed) GetUncleReward() []byte
func (*Eth1BlockIndexed) ProtoMessage ¶
func (*Eth1BlockIndexed) ProtoMessage()
func (*Eth1BlockIndexed) ProtoReflect ¶
func (x *Eth1BlockIndexed) ProtoReflect() protoreflect.Message
func (*Eth1BlockIndexed) Reset ¶
func (x *Eth1BlockIndexed) Reset()
func (*Eth1BlockIndexed) String ¶
func (x *Eth1BlockIndexed) String() string
type Eth1BlockPageData ¶
type Eth1BlockPageData struct {
Number uint64
PreviousBlock uint64
NextBlock uint64
TxCount uint64
WithdrawalCount uint64
UncleCount uint64
Hash string
ParentHash string
MinerAddress string
MinerFormatted template.HTML
Reward *big.Int
MevReward *big.Int
MevBribe *big.Int
IsValidMev bool
MevRecipientFormatted template.HTML
TxFees *big.Int
GasUsage template.HTML
GasLimit uint64
LowestGasPrice *big.Int
Ts time.Time
Difficulty *big.Int
BaseFeePerGas *big.Int
BurnedFees *big.Int
Extra string
Txs []Eth1BlockPageTransaction
Uncles []Eth1BlockPageData
State string
}
type Eth1BlockParsed ¶
type Eth1BlockParsed struct {
Hash string `json:"hash,omitempty"`
ParentHash string `json:"parent_hash,omitempty"`
UncleHash string `json:"uncle_hash,omitempty"`
Coinbase string `json:"coinbase,omitempty"`
TxReward string `json:"tx_reward,omitempty"`
Difficulty string `json:"difficulty,omitempty"`
Number uint64 `json:"number,omitempty"`
GasLimit uint64 `json:"gas_limit,omitempty"`
GasUsed uint64 `json:"gas_used,omitempty"`
Time time.Time `json:"time,omitempty"`
BaseFee string `json:"base_fee,omitempty"`
UncleCount uint64 `json:"uncle_count,omitempty"`
TransactionCount uint64 `json:"transaction_count,omitempty"`
InternalTransactionCount uint64 `json:"internal_transaction_count,omitempty"`
Mev string `json:"mev,omitempty"`
LowestGasPrice string `json:"lowest_gas_price,omitempty"`
HighestGasPrice string `json:"highest_gas_price,omitempty"`
// Duration uint64 `json:"duration,omitempty"`
UncleReward string `json:"uncle_reward,omitempty"`
}
type Eth1DecodedEventData ¶
type Eth1Deposit ¶
type Eth1Deposit struct {
TxHash []byte `db:"tx_hash"`
TxInput []byte `db:"tx_input"`
TxIndex uint64 `db:"tx_index"`
BlockNumber uint64 `db:"block_number"`
BlockTs int64 `db:"block_ts"`
FromAddress []byte `db:"from_address"`
PublicKey []byte `db:"publickey"`
WithdrawalCredentials []byte `db:"withdrawal_credentials"`
Amount uint64 `db:"amount"`
Signature []byte `db:"signature"`
MerkletreeIndex []byte `db:"merkletree_index"`
Removed bool `db:"removed"`
ValidSignature bool `db:"valid_signature"`
}
Eth1Deposit is a struct to hold eth1-deposit data
type Eth1ERC20Indexed ¶
type Eth1ERC20Indexed struct {
ParentHash []byte `protobuf:"bytes,1,opt,name=parent_hash,json=parentHash,proto3" json:"parent_hash,omitempty"`
BlockNumber uint64 `protobuf:"varint,2,opt,name=block_number,json=blockNumber,proto3" json:"block_number,omitempty"`
TokenAddress []byte `protobuf:"bytes,3,opt,name=token_address,json=tokenAddress,proto3" json:"token_address,omitempty"`
Time *timestamp.Timestamp `protobuf:"bytes,4,opt,name=time,proto3" json:"time,omitempty"`
From []byte `protobuf:"bytes,5,opt,name=from,proto3" json:"from,omitempty"`
To []byte `protobuf:"bytes,6,opt,name=to,proto3" json:"to,omitempty"`
Value []byte `protobuf:"bytes,7,opt,name=value,proto3" json:"value,omitempty"`
// contains filtered or unexported fields
}
func (*Eth1ERC20Indexed) Descriptor
deprecated
func (*Eth1ERC20Indexed) Descriptor() ([]byte, []int)
Deprecated: Use Eth1ERC20Indexed.ProtoReflect.Descriptor instead.
func (*Eth1ERC20Indexed) GetBlockNumber ¶
func (x *Eth1ERC20Indexed) GetBlockNumber() uint64
func (*Eth1ERC20Indexed) GetFrom ¶
func (x *Eth1ERC20Indexed) GetFrom() []byte
func (*Eth1ERC20Indexed) GetParentHash ¶
func (x *Eth1ERC20Indexed) GetParentHash() []byte
func (*Eth1ERC20Indexed) GetTime ¶
func (x *Eth1ERC20Indexed) GetTime() *timestamp.Timestamp
func (*Eth1ERC20Indexed) GetTo ¶
func (x *Eth1ERC20Indexed) GetTo() []byte
func (*Eth1ERC20Indexed) GetTokenAddress ¶
func (x *Eth1ERC20Indexed) GetTokenAddress() []byte
func (*Eth1ERC20Indexed) GetValue ¶
func (x *Eth1ERC20Indexed) GetValue() []byte
func (*Eth1ERC20Indexed) ProtoMessage ¶
func (*Eth1ERC20Indexed) ProtoMessage()
func (*Eth1ERC20Indexed) ProtoReflect ¶
func (x *Eth1ERC20Indexed) ProtoReflect() protoreflect.Message
func (*Eth1ERC20Indexed) Reset ¶
func (x *Eth1ERC20Indexed) Reset()
func (*Eth1ERC20Indexed) String ¶
func (x *Eth1ERC20Indexed) String() string
type Eth1ERC721Indexed ¶
type Eth1ERC721Indexed struct {
ParentHash []byte `protobuf:"bytes,1,opt,name=parent_hash,json=parentHash,proto3" json:"parent_hash,omitempty"`
BlockNumber uint64 `protobuf:"varint,2,opt,name=block_number,json=blockNumber,proto3" json:"block_number,omitempty"`
TokenAddress []byte `protobuf:"bytes,3,opt,name=token_address,json=tokenAddress,proto3" json:"token_address,omitempty"`
Time *timestamp.Timestamp `protobuf:"bytes,4,opt,name=time,proto3" json:"time,omitempty"`
From []byte `protobuf:"bytes,5,opt,name=from,proto3" json:"from,omitempty"`
To []byte `protobuf:"bytes,6,opt,name=to,proto3" json:"to,omitempty"`
TokenId []byte `protobuf:"bytes,7,opt,name=token_id,json=tokenId,proto3" json:"token_id,omitempty"`
// contains filtered or unexported fields
}
func (*Eth1ERC721Indexed) Descriptor
deprecated
func (*Eth1ERC721Indexed) Descriptor() ([]byte, []int)
Deprecated: Use Eth1ERC721Indexed.ProtoReflect.Descriptor instead.
func (*Eth1ERC721Indexed) GetBlockNumber ¶
func (x *Eth1ERC721Indexed) GetBlockNumber() uint64
func (*Eth1ERC721Indexed) GetFrom ¶
func (x *Eth1ERC721Indexed) GetFrom() []byte
func (*Eth1ERC721Indexed) GetParentHash ¶
func (x *Eth1ERC721Indexed) GetParentHash() []byte
func (*Eth1ERC721Indexed) GetTime ¶
func (x *Eth1ERC721Indexed) GetTime() *timestamp.Timestamp
func (*Eth1ERC721Indexed) GetTo ¶
func (x *Eth1ERC721Indexed) GetTo() []byte
func (*Eth1ERC721Indexed) GetTokenAddress ¶
func (x *Eth1ERC721Indexed) GetTokenAddress() []byte
func (*Eth1ERC721Indexed) GetTokenId ¶
func (x *Eth1ERC721Indexed) GetTokenId() []byte
func (*Eth1ERC721Indexed) ProtoMessage ¶
func (*Eth1ERC721Indexed) ProtoMessage()
func (*Eth1ERC721Indexed) ProtoReflect ¶
func (x *Eth1ERC721Indexed) ProtoReflect() protoreflect.Message
func (*Eth1ERC721Indexed) Reset ¶
func (x *Eth1ERC721Indexed) Reset()
func (*Eth1ERC721Indexed) String ¶
func (x *Eth1ERC721Indexed) String() string
type Eth1EventData ¶
type Eth1InternalTransaction ¶
type Eth1InternalTransaction struct {
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
From []byte `protobuf:"bytes,2,opt,name=from,proto3" json:"from,omitempty"`
To []byte `protobuf:"bytes,3,opt,name=to,proto3" json:"to,omitempty"`
Value []byte `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"`
ErrorMsg string `protobuf:"bytes,5,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
Path string `protobuf:"bytes,6,opt,name=path,proto3" json:"path,omitempty"`
// contains filtered or unexported fields
}
func (*Eth1InternalTransaction) Descriptor
deprecated
func (*Eth1InternalTransaction) Descriptor() ([]byte, []int)
Deprecated: Use Eth1InternalTransaction.ProtoReflect.Descriptor instead.
func (*Eth1InternalTransaction) GetErrorMsg ¶
func (x *Eth1InternalTransaction) GetErrorMsg() string
func (*Eth1InternalTransaction) GetFrom ¶
func (x *Eth1InternalTransaction) GetFrom() []byte
func (*Eth1InternalTransaction) GetPath ¶
func (x *Eth1InternalTransaction) GetPath() string
func (*Eth1InternalTransaction) GetTo ¶
func (x *Eth1InternalTransaction) GetTo() []byte
func (*Eth1InternalTransaction) GetType ¶
func (x *Eth1InternalTransaction) GetType() string
func (*Eth1InternalTransaction) GetValue ¶
func (x *Eth1InternalTransaction) GetValue() []byte
func (*Eth1InternalTransaction) ProtoMessage ¶
func (*Eth1InternalTransaction) ProtoMessage()
func (*Eth1InternalTransaction) ProtoReflect ¶
func (x *Eth1InternalTransaction) ProtoReflect() protoreflect.Message
func (*Eth1InternalTransaction) Reset ¶
func (x *Eth1InternalTransaction) Reset()
func (*Eth1InternalTransaction) String ¶
func (x *Eth1InternalTransaction) String() string
type Eth1InternalTransactionIndexed ¶
type Eth1InternalTransactionIndexed struct {
ParentHash []byte `protobuf:"bytes,1,opt,name=parent_hash,json=parentHash,proto3" json:"parent_hash,omitempty"`
BlockNumber uint64 `protobuf:"varint,2,opt,name=block_number,json=blockNumber,proto3" json:"block_number,omitempty"`
Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"`
Time *timestamp.Timestamp `protobuf:"bytes,4,opt,name=time,proto3" json:"time,omitempty"`
From []byte `protobuf:"bytes,5,opt,name=from,proto3" json:"from,omitempty"`
To []byte `protobuf:"bytes,6,opt,name=to,proto3" json:"to,omitempty"`
Value []byte `protobuf:"bytes,7,opt,name=value,proto3" json:"value,omitempty"`
// contains filtered or unexported fields
}
func (*Eth1InternalTransactionIndexed) Descriptor
deprecated
func (*Eth1InternalTransactionIndexed) Descriptor() ([]byte, []int)
Deprecated: Use Eth1InternalTransactionIndexed.ProtoReflect.Descriptor instead.
func (*Eth1InternalTransactionIndexed) GetBlockNumber ¶
func (x *Eth1InternalTransactionIndexed) GetBlockNumber() uint64
func (*Eth1InternalTransactionIndexed) GetFrom ¶
func (x *Eth1InternalTransactionIndexed) GetFrom() []byte
func (*Eth1InternalTransactionIndexed) GetParentHash ¶
func (x *Eth1InternalTransactionIndexed) GetParentHash() []byte
func (*Eth1InternalTransactionIndexed) GetTime ¶
func (x *Eth1InternalTransactionIndexed) GetTime() *timestamp.Timestamp
func (*Eth1InternalTransactionIndexed) GetTo ¶
func (x *Eth1InternalTransactionIndexed) GetTo() []byte
func (*Eth1InternalTransactionIndexed) GetType ¶
func (x *Eth1InternalTransactionIndexed) GetType() string
func (*Eth1InternalTransactionIndexed) GetValue ¶
func (x *Eth1InternalTransactionIndexed) GetValue() []byte
func (*Eth1InternalTransactionIndexed) ProtoMessage ¶
func (*Eth1InternalTransactionIndexed) ProtoMessage()
func (*Eth1InternalTransactionIndexed) ProtoReflect ¶
func (x *Eth1InternalTransactionIndexed) ProtoReflect() protoreflect.Message
func (*Eth1InternalTransactionIndexed) Reset ¶
func (x *Eth1InternalTransactionIndexed) Reset()
func (*Eth1InternalTransactionIndexed) String ¶
func (x *Eth1InternalTransactionIndexed) String() string
type Eth1Log ¶
type Eth1Log struct {
Address []byte `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
Removed bool `protobuf:"varint,3,opt,name=removed,proto3" json:"removed,omitempty"`
Topics [][]byte `protobuf:"bytes,4,rep,name=topics,proto3" json:"topics,omitempty"`
// contains filtered or unexported fields
}
func (*Eth1Log) Descriptor
deprecated
func (*Eth1Log) GetAddress ¶
func (*Eth1Log) GetRemoved ¶
func (*Eth1Log) ProtoMessage ¶
func (*Eth1Log) ProtoMessage()
func (*Eth1Log) ProtoReflect ¶
func (x *Eth1Log) ProtoReflect() protoreflect.Message
type Eth1TokenPageData ¶
type Eth1TokenPageData struct {
Token string `json:"token"`
Address string `json:"address"`
QRCode string `json:"qr_code_base64"`
QRCodeInverse string
Metadata *ERC20Metadata
Balance *Eth1AddressBalance
Holders template.HTML `json:"holders"`
Transfers template.HTML `json:"transfers"`
Price template.HTML `json:"price"`
MarketCap template.HTML `json:"marketCap"`
DilutedMarketCap template.HTML `json:"dilutedMarketCap"`
Decimals template.HTML `json:"decimals"`
Contract template.HTML `json:"contract"`
WebSite template.HTML `json:"website"`
SocialProfiles template.HTML `json:"socialProfiles"`
TransfersTable *DataTableResponse
HoldersTable *DataTableResponse
}
type Eth1TokenTxParsed ¶
type Eth1TokenTxParsed struct {
ParentHash string `json:"transaction,omitempty"`
BlockNumber uint64 `json:"block,omitempty"`
TokenAddress string `json:"token_address,omitempty"`
Time time.Time `json:"time,omitempty"`
From string `json:"from,omitempty"`
To string `json:"to,omitempty"`
Value string `json:"value,omitempty"`
TokenId string `json:"token_id,omitempty"`
Operator string `json:"operator,omitempty"`
}
type Eth1Transaction ¶
type Eth1Transaction struct {
Type uint32 `protobuf:"varint,1,opt,name=type,proto3" json:"type,omitempty"`
Nonce uint64 `protobuf:"varint,2,opt,name=nonce,proto3" json:"nonce,omitempty"`
GasPrice []byte `protobuf:"bytes,3,opt,name=gas_price,json=gasPrice,proto3" json:"gas_price,omitempty"`
MaxPriorityFeePerGas []byte `` /* 127-byte string literal not displayed */
MaxFeePerGas []byte `protobuf:"bytes,5,opt,name=max_fee_per_gas,json=maxFeePerGas,proto3" json:"max_fee_per_gas,omitempty"`
Gas uint64 `protobuf:"varint,6,opt,name=gas,proto3" json:"gas,omitempty"`
Value []byte `protobuf:"bytes,7,opt,name=value,proto3" json:"value,omitempty"`
Data []byte `protobuf:"bytes,8,opt,name=data,proto3" json:"data,omitempty"`
To []byte `protobuf:"bytes,12,opt,name=to,proto3" json:"to,omitempty"`
From []byte `protobuf:"bytes,13,opt,name=from,proto3" json:"from,omitempty"`
ChainId []byte `protobuf:"bytes,14,opt,name=chain_id,json=chainId,proto3" json:"chain_id,omitempty"`
AccessList []*AccessList `protobuf:"bytes,15,rep,name=access_list,json=accessList,proto3" json:"access_list,omitempty"`
Hash []byte `protobuf:"bytes,16,opt,name=hash,proto3" json:"hash,omitempty"`
// Receipt fields
ContractAddress []byte `protobuf:"bytes,17,opt,name=contract_address,json=contractAddress,proto3" json:"contract_address,omitempty"`
CommulativeGasUsed uint64 `protobuf:"varint,18,opt,name=commulative_gas_used,json=commulativeGasUsed,proto3" json:"commulative_gas_used,omitempty"`
GasUsed uint64 `protobuf:"varint,19,opt,name=gas_used,json=gasUsed,proto3" json:"gas_used,omitempty"`
LogsBloom []byte `protobuf:"bytes,20,opt,name=logs_bloom,json=logsBloom,proto3" json:"logs_bloom,omitempty"`
Status uint64 `protobuf:"varint,21,opt,name=status,proto3" json:"status,omitempty"`
ErrorMsg string `protobuf:"bytes,22,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
Logs []*Eth1Log `protobuf:"bytes,23,rep,name=logs,proto3" json:"logs,omitempty"`
// Internal transactions
Itx []*Eth1InternalTransaction `protobuf:"bytes,24,rep,name=itx,proto3" json:"itx,omitempty"`
// contains filtered or unexported fields
}
func (*Eth1Transaction) Descriptor
deprecated
func (*Eth1Transaction) Descriptor() ([]byte, []int)
Deprecated: Use Eth1Transaction.ProtoReflect.Descriptor instead.
func (*Eth1Transaction) GetAccessList ¶
func (x *Eth1Transaction) GetAccessList() []*AccessList
func (*Eth1Transaction) GetChainId ¶
func (x *Eth1Transaction) GetChainId() []byte
func (*Eth1Transaction) GetCommulativeGasUsed ¶
func (x *Eth1Transaction) GetCommulativeGasUsed() uint64
func (*Eth1Transaction) GetContractAddress ¶
func (x *Eth1Transaction) GetContractAddress() []byte
func (*Eth1Transaction) GetData ¶
func (x *Eth1Transaction) GetData() []byte
func (*Eth1Transaction) GetErrorMsg ¶
func (x *Eth1Transaction) GetErrorMsg() string
func (*Eth1Transaction) GetFrom ¶
func (x *Eth1Transaction) GetFrom() []byte
func (*Eth1Transaction) GetGas ¶
func (x *Eth1Transaction) GetGas() uint64
func (*Eth1Transaction) GetGasPrice ¶
func (x *Eth1Transaction) GetGasPrice() []byte
func (*Eth1Transaction) GetGasUsed ¶
func (x *Eth1Transaction) GetGasUsed() uint64
func (*Eth1Transaction) GetHash ¶
func (x *Eth1Transaction) GetHash() []byte
func (*Eth1Transaction) GetItx ¶
func (x *Eth1Transaction) GetItx() []*Eth1InternalTransaction
func (*Eth1Transaction) GetLogs ¶
func (x *Eth1Transaction) GetLogs() []*Eth1Log
func (*Eth1Transaction) GetLogsBloom ¶
func (x *Eth1Transaction) GetLogsBloom() []byte
func (*Eth1Transaction) GetMaxFeePerGas ¶
func (x *Eth1Transaction) GetMaxFeePerGas() []byte
func (*Eth1Transaction) GetMaxPriorityFeePerGas ¶
func (x *Eth1Transaction) GetMaxPriorityFeePerGas() []byte
func (*Eth1Transaction) GetNonce ¶
func (x *Eth1Transaction) GetNonce() uint64
func (*Eth1Transaction) GetStatus ¶
func (x *Eth1Transaction) GetStatus() uint64
func (*Eth1Transaction) GetTo ¶
func (x *Eth1Transaction) GetTo() []byte
func (*Eth1Transaction) GetType ¶
func (x *Eth1Transaction) GetType() uint32
func (*Eth1Transaction) GetValue ¶
func (x *Eth1Transaction) GetValue() []byte
func (*Eth1Transaction) ProtoMessage ¶
func (*Eth1Transaction) ProtoMessage()
func (*Eth1Transaction) ProtoReflect ¶
func (x *Eth1Transaction) ProtoReflect() protoreflect.Message
func (*Eth1Transaction) Reset ¶
func (x *Eth1Transaction) Reset()
func (*Eth1Transaction) String ¶
func (x *Eth1Transaction) String() string
type Eth1TransactionIndexed ¶
type Eth1TransactionIndexed struct {
Hash []byte `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"`
BlockNumber uint64 `protobuf:"varint,2,opt,name=block_number,json=blockNumber,proto3" json:"block_number,omitempty"`
Time *timestamp.Timestamp `protobuf:"bytes,3,opt,name=time,proto3" json:"time,omitempty"`
MethodId []byte `protobuf:"bytes,4,opt,name=method_id,json=methodId,proto3" json:"method_id,omitempty"`
From []byte `protobuf:"bytes,5,opt,name=from,proto3" json:"from,omitempty"`
To []byte `protobuf:"bytes,6,opt,name=to,proto3" json:"to,omitempty"`
Value []byte `protobuf:"bytes,7,opt,name=value,proto3" json:"value,omitempty"`
TxFee []byte `protobuf:"bytes,8,opt,name=tx_fee,json=txFee,proto3" json:"tx_fee,omitempty"`
GasPrice []byte `protobuf:"bytes,9,opt,name=gas_price,json=gasPrice,proto3" json:"gas_price,omitempty"`
IsContractCreation bool `protobuf:"varint,10,opt,name=is_contract_creation,json=isContractCreation,proto3" json:"is_contract_creation,omitempty"`
InvokesContract bool `protobuf:"varint,11,opt,name=invokes_contract,json=invokesContract,proto3" json:"invokes_contract,omitempty"`
ErrorMsg string `protobuf:"bytes,12,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"`
// contains filtered or unexported fields
}
func (*Eth1TransactionIndexed) Descriptor
deprecated
func (*Eth1TransactionIndexed) Descriptor() ([]byte, []int)
Deprecated: Use Eth1TransactionIndexed.ProtoReflect.Descriptor instead.
func (*Eth1TransactionIndexed) GetBlockNumber ¶
func (x *Eth1TransactionIndexed) GetBlockNumber() uint64
func (*Eth1TransactionIndexed) GetErrorMsg ¶
func (x *Eth1TransactionIndexed) GetErrorMsg() string
func (*Eth1TransactionIndexed) GetFrom ¶
func (x *Eth1TransactionIndexed) GetFrom() []byte
func (*Eth1TransactionIndexed) GetGasPrice ¶
func (x *Eth1TransactionIndexed) GetGasPrice() []byte
func (*Eth1TransactionIndexed) GetHash ¶
func (x *Eth1TransactionIndexed) GetHash() []byte
func (*Eth1TransactionIndexed) GetInvokesContract ¶
func (x *Eth1TransactionIndexed) GetInvokesContract() bool
func (*Eth1TransactionIndexed) GetIsContractCreation ¶
func (x *Eth1TransactionIndexed) GetIsContractCreation() bool
func (*Eth1TransactionIndexed) GetMethodId ¶
func (x *Eth1TransactionIndexed) GetMethodId() []byte
func (*Eth1TransactionIndexed) GetTime ¶
func (x *Eth1TransactionIndexed) GetTime() *timestamp.Timestamp
func (*Eth1TransactionIndexed) GetTo ¶
func (x *Eth1TransactionIndexed) GetTo() []byte
func (*Eth1TransactionIndexed) GetTxFee ¶
func (x *Eth1TransactionIndexed) GetTxFee() []byte
func (*Eth1TransactionIndexed) GetValue ¶
func (x *Eth1TransactionIndexed) GetValue() []byte
func (*Eth1TransactionIndexed) ProtoMessage ¶
func (*Eth1TransactionIndexed) ProtoMessage()
func (*Eth1TransactionIndexed) ProtoReflect ¶
func (x *Eth1TransactionIndexed) ProtoReflect() protoreflect.Message
func (*Eth1TransactionIndexed) Reset ¶
func (x *Eth1TransactionIndexed) Reset()
func (*Eth1TransactionIndexed) String ¶
func (x *Eth1TransactionIndexed) String() string
type Eth1TransactionParsed ¶
type Eth1TransactionParsed struct {
Hash string `json:"hash,omitempty"`
BlockNumber uint64 `json:"block,omitempty"`
Time time.Time `json:"time,omitempty"`
MethodId string `json:"method,omitempty"`
From string `json:"from,omitempty"`
To string `json:"to,omitempty"`
Value string `json:"value,omitempty"`
TxFee string `json:"fee,omitempty"`
GasPrice string `json:"gasPrice,omitempty"`
IsContractCreation bool `json:"is_contract_creation,omitempty"`
InvokesContract bool `json:"invokes_contract,omitempty"`
}
type Eth1TxData ¶
type Eth1TxData struct {
From common.Address
To *common.Address
InternalTxns []Transfer
FromName string
ToName string
Gas struct {
BlockBaseFee []byte
MaxFee []byte
MaxPriorityFee []byte
Used uint64
UsedPerc float64
Limit uint64
TxFee []byte
EffectiveFee []byte
}
Epoch struct {
Finalized bool `db:"finalized"`
Participation float64 `db:"globalparticipationrate"`
}
TypeFormatted string
Type uint8
Nonce uint64
TxnPosition uint
Hash common.Hash
Value []byte
Receipt *geth_types.Receipt
ErrorMsg string
BlockNumber int64
Timestamp uint64
IsPending bool
TargetIsContract bool
IsContractCreation bool
CallData string
Method string
Events []*Eth1EventData
Transfers []*Transfer
DepositContractInteractions []DepositContractInteraction
CurrentEtherPrice template.HTML
HistoricEtherPrice template.HTML
}
type Eth1UncleIndexed ¶
type Eth1UncleIndexed struct {
BlockNumber uint64 `protobuf:"varint,1,opt,name=block_number,json=blockNumber,proto3" json:"block_number,omitempty"`
Number uint64 `protobuf:"varint,2,opt,name=number,proto3" json:"number,omitempty"`
GasLimit uint64 `protobuf:"varint,3,opt,name=gas_limit,json=gasLimit,proto3" json:"gas_limit,omitempty"`
GasUsed uint64 `protobuf:"varint,4,opt,name=gas_used,json=gasUsed,proto3" json:"gas_used,omitempty"`
BaseFee []byte `protobuf:"bytes,5,opt,name=base_fee,json=baseFee,proto3" json:"base_fee,omitempty"`
Difficulty []byte `protobuf:"bytes,6,opt,name=difficulty,proto3" json:"difficulty,omitempty"`
Time *timestamp.Timestamp `protobuf:"bytes,7,opt,name=time,proto3" json:"time,omitempty"`
Reward []byte `protobuf:"bytes,8,opt,name=reward,proto3" json:"reward,omitempty"`
// contains filtered or unexported fields
}
func (*Eth1UncleIndexed) Descriptor
deprecated
func (*Eth1UncleIndexed) Descriptor() ([]byte, []int)
Deprecated: Use Eth1UncleIndexed.ProtoReflect.Descriptor instead.
func (*Eth1UncleIndexed) GetBaseFee ¶
func (x *Eth1UncleIndexed) GetBaseFee() []byte
func (*Eth1UncleIndexed) GetBlockNumber ¶
func (x *Eth1UncleIndexed) GetBlockNumber() uint64
func (*Eth1UncleIndexed) GetDifficulty ¶
func (x *Eth1UncleIndexed) GetDifficulty() []byte
func (*Eth1UncleIndexed) GetGasLimit ¶
func (x *Eth1UncleIndexed) GetGasLimit() uint64
func (*Eth1UncleIndexed) GetGasUsed ¶
func (x *Eth1UncleIndexed) GetGasUsed() uint64
func (*Eth1UncleIndexed) GetNumber ¶
func (x *Eth1UncleIndexed) GetNumber() uint64
func (*Eth1UncleIndexed) GetReward ¶
func (x *Eth1UncleIndexed) GetReward() []byte
func (*Eth1UncleIndexed) GetTime ¶
func (x *Eth1UncleIndexed) GetTime() *timestamp.Timestamp
func (*Eth1UncleIndexed) ProtoMessage ¶
func (*Eth1UncleIndexed) ProtoMessage()
func (*Eth1UncleIndexed) ProtoReflect ¶
func (x *Eth1UncleIndexed) ProtoReflect() protoreflect.Message
func (*Eth1UncleIndexed) Reset ¶
func (x *Eth1UncleIndexed) Reset()
func (*Eth1UncleIndexed) String ¶
func (x *Eth1UncleIndexed) String() string
type Eth1UncleParsed ¶
type Eth1UncleParsed struct {
BlockNumber uint64 `json:"block,omitempty"`
Number uint64 `json:"number,omitempty"`
GasLimit uint64 `json:"gas_limit,omitempty"`
GasUsed uint64 `json:"gas_used,omitempty"`
BaseFee string `json:"base_fee,omitempty"`
Difficulty string `json:"difficulty,omitempty"`
Time time.Time `json:"time,omitempty"`
Reward string `json:"reward,omitempty"`
}
type Eth1Withdrawal ¶
type Eth1Withdrawal struct {
Index uint64 `protobuf:"varint,1,opt,name=index,proto3" json:"index,omitempty"`
ValidatorIndex uint64 `protobuf:"varint,2,opt,name=validator_index,json=validatorIndex,proto3" json:"validator_index,omitempty"`
Address []byte `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"`
Amount []byte `protobuf:"bytes,4,opt,name=amount,proto3" json:"amount,omitempty"`
// contains filtered or unexported fields
}
func (*Eth1Withdrawal) Descriptor
deprecated
func (*Eth1Withdrawal) Descriptor() ([]byte, []int)
Deprecated: Use Eth1Withdrawal.ProtoReflect.Descriptor instead.
func (*Eth1Withdrawal) GetAddress ¶
func (x *Eth1Withdrawal) GetAddress() []byte
func (*Eth1Withdrawal) GetAmount ¶
func (x *Eth1Withdrawal) GetAmount() []byte
func (*Eth1Withdrawal) GetIndex ¶
func (x *Eth1Withdrawal) GetIndex() uint64
func (*Eth1Withdrawal) GetValidatorIndex ¶
func (x *Eth1Withdrawal) GetValidatorIndex() uint64
func (*Eth1Withdrawal) ProtoMessage ¶
func (*Eth1Withdrawal) ProtoMessage()
func (*Eth1Withdrawal) ProtoReflect ¶
func (x *Eth1Withdrawal) ProtoReflect() protoreflect.Message
func (*Eth1Withdrawal) Reset ¶
func (x *Eth1Withdrawal) Reset()
func (*Eth1Withdrawal) String ¶
func (x *Eth1Withdrawal) String() string
type Eth1WithdrawalIndexed ¶
type Eth1WithdrawalIndexed struct {
BlockNumber uint64 `protobuf:"varint,1,opt,name=block_number,json=blockNumber,proto3" json:"block_number,omitempty"`
Index uint64 `protobuf:"varint,2,opt,name=index,proto3" json:"index,omitempty"`
ValidatorIndex uint64 `protobuf:"varint,3,opt,name=validator_index,json=validatorIndex,proto3" json:"validator_index,omitempty"`
Address []byte `protobuf:"bytes,4,opt,name=address,proto3" json:"address,omitempty"`
Amount []byte `protobuf:"bytes,5,opt,name=amount,proto3" json:"amount,omitempty"`
Time *timestamp.Timestamp `protobuf:"bytes,6,opt,name=time,proto3" json:"time,omitempty"`
// contains filtered or unexported fields
}
func (*Eth1WithdrawalIndexed) Descriptor
deprecated
func (*Eth1WithdrawalIndexed) Descriptor() ([]byte, []int)
Deprecated: Use Eth1WithdrawalIndexed.ProtoReflect.Descriptor instead.
func (*Eth1WithdrawalIndexed) GetAddress ¶
func (x *Eth1WithdrawalIndexed) GetAddress() []byte
func (*Eth1WithdrawalIndexed) GetAmount ¶
func (x *Eth1WithdrawalIndexed) GetAmount() []byte
func (*Eth1WithdrawalIndexed) GetBlockNumber ¶
func (x *Eth1WithdrawalIndexed) GetBlockNumber() uint64
func (*Eth1WithdrawalIndexed) GetIndex ¶
func (x *Eth1WithdrawalIndexed) GetIndex() uint64
func (*Eth1WithdrawalIndexed) GetTime ¶
func (x *Eth1WithdrawalIndexed) GetTime() *timestamp.Timestamp
func (*Eth1WithdrawalIndexed) GetValidatorIndex ¶
func (x *Eth1WithdrawalIndexed) GetValidatorIndex() uint64
func (*Eth1WithdrawalIndexed) ProtoMessage ¶
func (*Eth1WithdrawalIndexed) ProtoMessage()
func (*Eth1WithdrawalIndexed) ProtoReflect ¶
func (x *Eth1WithdrawalIndexed) ProtoReflect() protoreflect.Message
func (*Eth1WithdrawalIndexed) Reset ¶
func (x *Eth1WithdrawalIndexed) Reset()
func (*Eth1WithdrawalIndexed) String ¶
func (x *Eth1WithdrawalIndexed) String() string
type Eth2Deposit ¶
type Eth2Deposit struct {
BlockSlot uint64 `db:"block_slot"`
BlockIndex uint64 `db:"block_index"`
BlockRoot []byte `db:"block_root"`
Proof []byte `db:"proof"`
Publickey []byte `db:"publickey"`
Withdrawalcredentials []byte `db:"withdrawalcredentials"`
Amount uint64 `db:"amount"`
Signature []byte `db:"signature"`
}
Eth2Deposit is a struct to hold eth2-deposit data
type EthOneDepositLeaderBoardPageData ¶
type EthOneDepositLeaderBoardPageData struct {
DepositContract string
}
type EthOneDepositLeaderboardData ¶
type EthOneDepositLeaderboardData struct {
FromAddress []byte `db:"from_address"`
Amount uint64 `db:"amount"`
ValidCount uint64 `db:"validcount"`
InvalidCount uint64 `db:"invalidcount"`
TotalCount uint64 `db:"totalcount"`
PendingCount uint64 `db:"pendingcount"`
SlashedCount uint64 `db:"slashedcount"`
ActiveCount uint64 `db:"activecount"`
VoluntaryExitCount uint64 `db:"voluntary_exit_count"`
}
type EthOneDepositsData ¶
type EthOneDepositsData struct {
TxHash []byte `db:"tx_hash"`
TxInput []byte `db:"tx_input"`
TxIndex uint64 `db:"tx_index"`
BlockNumber uint64 `db:"block_number"`
BlockTs time.Time `db:"block_ts"`
FromAddress []byte `db:"from_address"`
PublicKey []byte `db:"publickey"`
WithdrawalCredentials []byte `db:"withdrawal_credentials"`
Amount uint64 `db:"amount"`
Signature []byte `db:"signature"`
MerkletreeIndex []byte `db:"merkletree_index"`
State string `db:"state"`
ValidSignature bool `db:"valid_signature"`
}
EpochsPageData is a struct to hold epoch data for the epochs page
type EthStoreDay ¶
type EthStoreDay struct {
Pool string `db:"pool"`
Day uint64 `db:"day"`
EffectiveBalancesSum decimal.Decimal `db:"effective_balances_sum_wei"`
StartBalancesSum decimal.Decimal `db:"start_balances_sum_wei"`
EndBalancesSum decimal.Decimal `db:"end_balances_sum_wei"`
DepositsSum decimal.Decimal `db:"deposits_sum_wei"`
TxFeesSumWei decimal.Decimal `db:"tx_fees_sum_wei"`
ConsensusRewardsSumWei decimal.Decimal `db:"consensus_rewards_sum_wei"`
TotalRewardsWei decimal.Decimal `db:"total_rewards_wei"`
APR decimal.Decimal `db:"apr"`
}
EthStoreDay is a struct to hold performance data for a specific beaconchain-day. All fields use Gwei unless specified otherwise by the field name
type EthStoreStatistics ¶
type EthTwoDepositData ¶
type EthTwoDepositData struct {
BlockSlot uint64 `db:"block_slot"`
BlockIndex uint64 `db:"block_index"`
Proof []byte `db:"proof"`
Publickey []byte `db:"publickey"`
ValidatorIndex uint64 `db:"validatorindex"`
Withdrawalcredentials []byte `db:"withdrawalcredentials"`
Amount uint64 `db:"amount"`
Signature []byte `db:"signature"`
}
type EtherscanContractMetadata ¶
type EtherscanContractMetadata struct {
Message string `json:"message"`
Result []struct {
Abi string `json:"ABI"`
CompilerVersion string `json:"CompilerVersion"`
ConstructorArguments string `json:"ConstructorArguments"`
ContractName string `json:"ContractName"`
EVMVersion string `json:"EVMVersion"`
Implementation string `json:"Implementation"`
Library string `json:"Library"`
LicenseType string `json:"LicenseType"`
OptimizationUsed string `json:"OptimizationUsed"`
Proxy string `json:"Proxy"`
Runs string `json:"Runs"`
SourceCode string `json:"SourceCode"`
SwarmSource string `json:"SwarmSource"`
} `json:"result"`
Status string `json:"status"`
}
type EventName ¶
type EventName string
const ( ValidatorBalanceDecreasedEventName EventName = "validator_balance_decreased" ValidatorMissedProposalEventName EventName = "validator_proposal_missed" ValidatorExecutedProposalEventName EventName = "validator_proposal_submitted" ValidatorMissedAttestationEventName EventName = "validator_attestation_missed" ValidatorGotSlashedEventName EventName = "validator_got_slashed" ValidatorDidSlashEventName EventName = "validator_did_slash" ValidatorIsOfflineEventName EventName = "validator_is_offline" ValidatorReceivedWithdrawalEventName EventName = "validator_withdrawal" ValidatorReceivedDepositEventName EventName = "validator_received_deposit" NetworkSlashingEventName EventName = "network_slashing" NetworkValidatorActivationQueueFullEventName EventName = "network_validator_activation_queue_full" NetworkValidatorActivationQueueNotFullEventName EventName = "network_validator_activation_queue_not_full" NetworkValidatorExitQueueFullEventName EventName = "network_validator_exit_queue_full" NetworkValidatorExitQueueNotFullEventName EventName = "network_validator_exit_queue_not_full" NetworkLivenessIncreasedEventName EventName = "network_liveness_increased" EthClientUpdateEventName EventName = "eth_client_update" MonitoringMachineOfflineEventName EventName = "monitoring_machine_offline" MonitoringMachineDiskAlmostFullEventName EventName = "monitoring_hdd_almostfull" MonitoringMachineCpuLoadEventName EventName = "monitoring_cpu_load" MonitoringMachineMemoryUsageEventName EventName = "monitoring_memory_usage" MonitoringMachineSwitchedToETH2FallbackEventName EventName = "monitoring_fallback_eth2inuse" MonitoringMachineSwitchedToETH1FallbackEventName EventName = "monitoring_fallback_eth1inuse" TaxReportEventName EventName = "user_tax_report" RocketpoolCommissionThresholdEventName EventName = "rocketpool_commision_threshold" RocketpoolNewClaimRoundStartedEventName EventName = "rocketpool_new_claimround" RocketpoolCollateralMinReached EventName = "rocketpool_colleteral_min" RocketpoolCollateralMaxReached EventName = "rocketpool_colleteral_max" SyncCommitteeSoon EventName = "validator_synccommittee_soon" )
func EventNameFromString ¶
type EventNameCheckbox ¶
type EventNameDesc ¶
type ExecBlockProposer ¶
type ExecutionBlockApiResponse ¶
type ExecutionBlockApiResponse struct {
Hash string `json:"blockHash"`
BlockNumber uint64 `json:"blockNumber"`
Timestamp uint64 `json:"timestamp"`
BlockReward *big.Int `json:"blockReward"`
BlockMevReward *big.Int `json:"blockMevReward"`
FeeRecipientReward *big.Int `json:"producerReward"`
FeeRecipient string `json:"feeRecipient"`
GasLimit uint64 `json:"gasLimit"`
GasUsed uint64 `json:"gasUsed"`
BaseFee *big.Int `json:"baseFee"`
TxCount uint64 `json:"txCount"`
InternalTxCount uint64 `json:"internalTxCount"`
UncleCount uint64 `json:"uncleCount"`
ParentHash string `json:"parentHash"`
UncleHash string `json:"uncleHash"`
Difficulty *big.Int `json:"difficulty"`
PoSData *ExecBlockProposer `json:"posConsensus"`
RelayData *RelayDataApiResponse `json:"relay"`
ConsensusAlgorithm string `json:"consensusAlgorithm"`
}
type ExecutionPayload ¶
type ExecutionPayload struct {
ParentHash []byte
FeeRecipient []byte
StateRoot []byte
ReceiptsRoot []byte
LogsBloom []byte
Random []byte
BlockNumber uint64
GasLimit uint64
GasUsed uint64
Timestamp uint64
ExtraData []byte
BaseFeePerGas uint64
BlockHash []byte
Transactions []*Transaction
Withdrawals []*Withdrawals
}
type ExplorerConfig ¶
type ExplorerConfig struct {
Category ExplorerConfigurationCategory `db:"category"`
Key ExplorerConfigurationKey `db:"key"`
ExplorerConfigValue
}
type ExplorerConfigValue ¶
type ExplorerConfigurationCategory ¶
type ExplorerConfigurationCategory string
type ExplorerConfigurationKey ¶
type ExplorerConfigurationKey string
type ExplorerConfigurationKeyMap ¶
type ExplorerConfigurationKeyMap map[ExplorerConfigurationKey]ExplorerConfigValue
type ExplorerConfigurationMap ¶
type ExplorerConfigurationMap map[ExplorerConfigurationCategory]ExplorerConfigurationKeyMap
func (ExplorerConfigurationMap) GetConfigValue ¶
func (configMap ExplorerConfigurationMap) GetConfigValue(category ExplorerConfigurationCategory, configKey ExplorerConfigurationKey) (ExplorerConfigValue, error)
func (ExplorerConfigurationMap) GetStringValue ¶
func (configMap ExplorerConfigurationMap) GetStringValue(category ExplorerConfigurationCategory, configKey ExplorerConfigurationKey) (string, error)
func (ExplorerConfigurationMap) GetUInt64Value ¶
func (configMap ExplorerConfigurationMap) GetUInt64Value(category ExplorerConfigurationCategory, configKey ExplorerConfigurationKey) (uint64, error)
type ExplorerConfigurationPageData ¶
type ExplorerConfigurationPageData struct {
Configurations ExplorerConfigurationMap
CsrfField template.HTML
}
type FilterSubscription ¶
type FinalityCheckpoints ¶
type FinalityCheckpoints struct {
PreviousJustified struct {
Epoch uint64 `json:"epoch"`
Root string `json:"root"`
} `json:"previous_justified"`
CurrentJustified struct {
Epoch uint64 `json:"epoch"`
Root string `json:"root"`
} `json:"current_justified"`
Finalized struct {
Epoch uint64 `json:"epoch"`
Root string `json:"root"`
} `json:"finalized"`
}
type ForkVersion ¶
type GasNowHistory ¶
type GasNowPageData ¶
type GasNowPageData struct {
Code int `json:"code"`
Data struct {
Rapid *big.Int `json:"rapid"`
Fast *big.Int `json:"fast"`
Standard *big.Int `json:"standard"`
Slow *big.Int `json:"slow"`
Timestamp int64 `json:"timestamp"`
Price float64 `json:"price,omitempty"`
PriceUSD float64 `json:"priceUSD"`
Currency string `json:"currency,omitempty"`
} `json:"data"`
}
type GenericChartData ¶
type GenericChartData struct {
IsNormalChart bool
ShowGapHider bool
XAxisLabelsFormatter template.JS
TooltipFormatter template.JS
TooltipUseHTML bool
TooltipSplit bool
TooltipFollowPointer bool
PlotOptionsSeriesEventsClick template.JS
PlotOptionsPie template.JS
DataLabelsEnabled bool
DataLabelsFormatter template.JS
PlotOptionsSeriesCursor string
Title string `json:"title"`
Subtitle string `json:"subtitle"`
XAxisTitle string `json:"x_axis_title"`
YAxisTitle string `json:"y_axis_title"`
Type string `json:"type"`
StackingMode string `json:"stacking_mode"`
ColumnDataGroupingApproximation string // "average", "averages", "open", "high", "low", "close" and "sum"
Series []*GenericChartDataSeries `json:"series"`
Drilldown interface{} `json:"drilldown"`
}
GenericChartData is a struct to hold chart data
type GenericChartDataSeries ¶
type GenericChartDataSeries struct {
Name string `json:"name"`
Data interface{} `json:"data"`
Stack string `json:"stack,omitempty"`
Type string `json:"type,omitempty"`
Color string `json:"color,omitempty"`
}
GenericChartDataSeries is a struct to hold chart series data
type GetBlockTimings ¶
type GoogleRecaptchaResponse ¶
type GoogleRecaptchaResponse struct {
Success bool `json:"success"`
ChallengeTimestamp string `json:"challenge_ts"`
Hostname string `json:"hostname"`
ErrorCodes []string `json:"error-codes"`
Score float32 `json:"score,omitempty"`
Action string `json:"action,omitempty"`
}
GoogleRecaptchaResponse ...
type GraffitiwallData ¶
type HeatmapData ¶
type HeatmapData struct {
// BalanceHistory DashboardValidatorBalanceHistory `json:"balance_history"`
// Earnings ValidatorEarnings `json:"earnings"`
// Validators [][]interface{} `json:"validators"`
Csrf string `json:"csrf"`
ValidatorLimit int `json:"valLimit"`
Epochs []uint64
Validators []uint64
IncomeData [][3]int64
MinIncome int64
MaxIncome int64
}
type HistoricEthPrice ¶
type HistoricEthPrice struct {
MarketData struct {
CurrentPrice struct {
Aed float64 `json:"aed"`
Ars float64 `json:"ars"`
Aud float64 `json:"aud"`
Bdt float64 `json:"bdt"`
Bhd float64 `json:"bhd"`
Bmd float64 `json:"bmd"`
Brl float64 `json:"brl"`
Btc float64 `json:"btc"`
Cad float64 `json:"cad"`
Chf float64 `json:"chf"`
Clp float64 `json:"clp"`
Cny float64 `json:"cny"`
Czk float64 `json:"czk"`
Dkk float64 `json:"dkk"`
Eth float64 `json:"eth"`
Eur float64 `json:"eur"`
Gbp float64 `json:"gbp"`
Hkd float64 `json:"hkd"`
Huf float64 `json:"huf"`
Idr float64 `json:"idr"`
Ils float64 `json:"ils"`
Inr float64 `json:"inr"`
Jpy float64 `json:"jpy"`
Krw float64 `json:"krw"`
Kwd float64 `json:"kwd"`
Lkr float64 `json:"lkr"`
Ltc float64 `json:"ltc"`
Mmk float64 `json:"mmk"`
Mxn float64 `json:"mxn"`
Myr float64 `json:"myr"`
Ngn float64 `json:"ngn"`
Nok float64 `json:"nok"`
Nzd float64 `json:"nzd"`
Php float64 `json:"php"`
Pkr float64 `json:"pkr"`
Pln float64 `json:"pln"`
Rub float64 `json:"rub"`
Sar float64 `json:"sar"`
Sek float64 `json:"sek"`
Sgd float64 `json:"sgd"`
Thb float64 `json:"thb"`
Try float64 `json:"try"`
Twd float64 `json:"twd"`
Uah float64 `json:"uah"`
Usd float64 `json:"usd"`
Vef float64 `json:"vef"`
Vnd float64 `json:"vnd"`
Xag float64 `json:"xag"`
Xau float64 `json:"xau"`
Xdr float64 `json:"xdr"`
Zar float64 `json:"zar"`
} `json:"current_price"`
MarketCap struct {
Aed float64 `json:"aed"`
Ars float64 `json:"ars"`
Aud float64 `json:"aud"`
Bdt float64 `json:"bdt"`
Bhd float64 `json:"bhd"`
Bmd float64 `json:"bmd"`
Brl float64 `json:"brl"`
Btc float64 `json:"btc"`
Cad float64 `json:"cad"`
Chf float64 `json:"chf"`
Clp float64 `json:"clp"`
Cny float64 `json:"cny"`
Czk float64 `json:"czk"`
Dkk float64 `json:"dkk"`
Eth float64 `json:"eth"`
Eur float64 `json:"eur"`
Gbp float64 `json:"gbp"`
Hkd float64 `json:"hkd"`
Huf float64 `json:"huf"`
Idr float64 `json:"idr"`
Ils float64 `json:"ils"`
Inr float64 `json:"inr"`
Jpy float64 `json:"jpy"`
Krw float64 `json:"krw"`
Kwd float64 `json:"kwd"`
Lkr float64 `json:"lkr"`
Ltc float64 `json:"ltc"`
Mmk float64 `json:"mmk"`
Mxn float64 `json:"mxn"`
Myr float64 `json:"myr"`
Ngn float64 `json:"ngn"`
Nok float64 `json:"nok"`
Nzd float64 `json:"nzd"`
Php float64 `json:"php"`
Pkr float64 `json:"pkr"`
Pln float64 `json:"pln"`
Rub float64 `json:"rub"`
Sar float64 `json:"sar"`
Sek float64 `json:"sek"`
Sgd float64 `json:"sgd"`
Thb float64 `json:"thb"`
Try float64 `json:"try"`
Twd float64 `json:"twd"`
Uah float64 `json:"uah"`
Usd float64 `json:"usd"`
Vef float64 `json:"vef"`
Vnd float64 `json:"vnd"`
Xag float64 `json:"xag"`
Xau float64 `json:"xau"`
Xdr float64 `json:"xdr"`
Zar float64 `json:"zar"`
} `json:"market_cap"`
TotalVolume struct {
Aed float64 `json:"aed"`
Ars float64 `json:"ars"`
Aud float64 `json:"aud"`
Bdt float64 `json:"bdt"`
Bhd float64 `json:"bhd"`
Bmd float64 `json:"bmd"`
Brl float64 `json:"brl"`
Btc float64 `json:"btc"`
Cad float64 `json:"cad"`
Chf float64 `json:"chf"`
Clp float64 `json:"clp"`
Cny float64 `json:"cny"`
Czk float64 `json:"czk"`
Dkk float64 `json:"dkk"`
Eth float64 `json:"eth"`
Eur float64 `json:"eur"`
Gbp float64 `json:"gbp"`
Hkd float64 `json:"hkd"`
Huf float64 `json:"huf"`
Idr float64 `json:"idr"`
Ils float64 `json:"ils"`
Inr float64 `json:"inr"`
Jpy float64 `json:"jpy"`
Krw float64 `json:"krw"`
Kwd float64 `json:"kwd"`
Lkr float64 `json:"lkr"`
Ltc float64 `json:"ltc"`
Mmk float64 `json:"mmk"`
Mxn float64 `json:"mxn"`
Myr float64 `json:"myr"`
Ngn float64 `json:"ngn"`
Nok float64 `json:"nok"`
Nzd float64 `json:"nzd"`
Php float64 `json:"php"`
Pkr float64 `json:"pkr"`
Pln float64 `json:"pln"`
Rub float64 `json:"rub"`
Sar float64 `json:"sar"`
Sek float64 `json:"sek"`
Sgd float64 `json:"sgd"`
Thb float64 `json:"thb"`
Try float64 `json:"try"`
Twd float64 `json:"twd"`
Uah float64 `json:"uah"`
Usd float64 `json:"usd"`
Vef float64 `json:"vef"`
Vnd float64 `json:"vnd"`
Xag float64 `json:"xag"`
Xau float64 `json:"xau"`
Xdr float64 `json:"xdr"`
Zar float64 `json:"zar"`
} `json:"total_volume"`
} `json:"market_data"`
Name string `json:"name"`
Symbol string `json:"symbol"`
}
type IndexPageData ¶
type IndexPageData struct {
NetworkName string `json:"networkName"`
DepositContract string `json:"depositContract"`
ShowSyncingMessage bool
CurrentEpoch uint64 `json:"current_epoch"`
CurrentFinalizedEpoch uint64 `json:"current_finalized_epoch"`
CurrentSlot uint64 `json:"current_slot"`
ScheduledCount uint8 `json:"scheduled_count"`
FinalityDelay uint64 `json:"finality_delay"`
ActiveValidators uint64 `json:"active_validators"`
EnteringValidators uint64 `json:"entering_validators"`
ExitingValidators uint64 `json:"exiting_validators"`
StakedEther string `json:"staked_ether"`
AverageBalance string `json:"average_balance"`
DepositedTotal float64 `json:"deposit_total"`
DepositThreshold float64 `json:"deposit_threshold"`
ValidatorsRemaining float64 `json:"validators_remaining"`
NetworkStartTs int64 `json:"network_start_ts"`
MinGenesisTime int64 `json:"minGenesisTime"`
Blocks []*IndexPageDataBlocks `json:"blocks"`
Epochs []*IndexPageDataEpochs `json:"epochs"`
StakedEtherChartData [][]float64 `json:"staked_ether_chart_data"`
ActiveValidatorsChartData [][]float64 `json:"active_validators_chart_data"`
Subtitle template.HTML `json:"subtitle"`
Genesis bool `json:"genesis"`
GenesisPeriod bool `json:"genesis_period"`
Mainnet bool `json:"mainnet"`
DepositChart *ChartsPageDataChart
DepositDistribution *ChartsPageDataChart
Countdown interface{}
SlotVizData *SlotVizPageData `json:"slotVizData"`
}
IndexPageData is a struct to hold info for the main web page
type IndexPageDataBlocks ¶
type IndexPageDataBlocks struct {
Epoch uint64 `json:"epoch"`
Slot uint64 `json:"slot"`
Ts time.Time `json:"ts"`
Proposer uint64 `db:"proposer" json:"proposer"`
ProposerFormatted template.HTML `json:"proposer_formatted"`
BlockRoot []byte `db:"blockroot" json:"block_root"`
BlockRootFormatted string `json:"block_root_formatted"`
ParentRoot []byte `db:"parentroot" json:"parent_root"`
Attestations uint64 `db:"attestationscount" json:"attestations"`
Deposits uint64 `db:"depositscount" json:"deposits"`
Withdrawals uint64 `db:"withdrawalcount" json:"withdrawals"`
Exits uint64 `db:"voluntaryexitscount" json:"exits"`
Proposerslashings uint64 `db:"proposerslashingscount" json:"proposerslashings"`
Attesterslashings uint64 `db:"attesterslashingscount" json:"attesterslashings"`
SyncAggParticipation float64 `db:"syncaggregate_participation" json:"sync_aggregate_participation"`
Status uint64 `db:"status" json:"status"`
StatusFormatted template.HTML `json:"status_formatted"`
Votes uint64 `db:"votes" json:"votes"`
Graffiti []byte `db:"graffiti"`
ProposerName string `db:"name"`
ExecutionBlockNumber int `db:"exec_block_number" json:"exec_block_number"`
}
IndexPageDataBlocks is a struct to hold detail data for the main web page
type IndexPageDataEpochs ¶
type IndexPageDataEpochs struct {
Epoch uint64 `json:"epoch"`
Ts time.Time `json:"ts"`
Finalized bool `json:"finalized"`
FinalizedFormatted template.HTML `json:"finalized_formatted"`
EligibleEther uint64 `json:"eligibleether"`
EligibleEtherFormatted template.HTML `json:"eligibleether_formatted"`
GlobalParticipationRate float64 `json:"globalparticipationrate"`
GlobalParticipationRateFormatted template.HTML `json:"globalparticipationrate_formatted"`
VotedEther uint64 `json:"votedether"`
VotedEtherFormatted template.HTML `json:"votedether_formatted"`
}
type IndexPageEpochHistory ¶
type IndexPageEpochHistory struct {
Epoch uint64 `db:"epoch"`
ValidatorsCount uint64 `db:"validatorscount"`
EligibleEther uint64 `db:"eligibleether"`
Finalized bool `db:"finalized"`
AverageValidatorBalance uint64 `db:"averagevalidatorbalance"`
}
IndexPageEpochHistory is a struct to hold the epoch history for the main web page
type IndexedAttestation ¶
type IndexedAttestation struct {
Data *AttestationData
AttestingIndices []uint64
Signature []byte
}
IndexedAttestation is a struct to hold indexed attestation data
type LatestState ¶
type LatestState struct {
LastProposedSlot uint64 `json:"lastProposedSlot"`
CurrentSlot uint64 `json:"currentSlot"`
CurrentEpoch uint64 `json:"currentEpoch"`
CurrentFinalizedEpoch uint64 `json:"currentFinalizedEpoch"`
FinalityDelay uint64 `json:"finalityDelay"`
IsSyncing bool `json:"syncing"`
EthPrice float64 `json:"ethPrice"`
EthRoundPrice uint64 `json:"ethRoundPrice"`
EthTruncPrice template.HTML `json:"ethTruncPrice"`
UsdRoundPrice uint64 `json:"usdRoundPrice"`
UsdTruncPrice template.HTML `json:"usdTruncPrice"`
EurRoundPrice uint64 `json:"eurRoundPrice"`
EurTruncPrice template.HTML `json:"eurTruncPrice"`
GbpRoundPrice uint64 `json:"gbpRoundPrice"`
GbpTruncPrice template.HTML `json:"gbpTruncPrice"`
CnyRoundPrice uint64 `json:"cnyRoundPrice"`
CnyTruncPrice template.HTML `json:"cnyTruncPrice"`
RubRoundPrice uint64 `json:"rubRoundPrice"`
RubTruncPrice template.HTML `json:"rubTruncPrice"`
CadRoundPrice uint64 `json:"cadRoundPrice"`
CadTruncPrice template.HTML `json:"cadTruncPrice"`
AudRoundPrice uint64 `json:"audRoundPrice"`
AudTruncPrice template.HTML `json:"audTruncPrice"`
JpyRoundPrice uint64 `json:"jpyRoundPrice"`
JpyTruncPrice template.HTML `json:"jpyTruncPrice"`
Currency string `json:"currency"`
}
LatestState is a struct to hold data for the banner
type MachineMetricNode ¶
type MachineMetricNode struct {
Timestamp uint64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
ExporterVersion string `protobuf:"bytes,2,opt,name=exporter_version,json=exporterVersion,proto3" json:"exporter_version,omitempty"`
// process
CpuProcessSecondsTotal uint64 `` /* 132-byte string literal not displayed */
MemoryProcessBytes uint64 `protobuf:"varint,4,opt,name=memory_process_bytes,json=memoryProcessBytes,proto3" json:"memory_process_bytes,omitempty"`
ClientName string `protobuf:"bytes,5,opt,name=client_name,json=clientName,proto3" json:"client_name,omitempty"`
ClientVersion string `protobuf:"bytes,6,opt,name=client_version,json=clientVersion,proto3" json:"client_version,omitempty"`
ClientBuild uint64 `protobuf:"varint,7,opt,name=client_build,json=clientBuild,proto3" json:"client_build,omitempty"`
SyncEth2FallbackConfigured bool `` /* 144-byte string literal not displayed */
SyncEth2FallbackConnected bool `` /* 141-byte string literal not displayed */
// node
DiskBeaconchainBytesTotal uint64 `` /* 142-byte string literal not displayed */
NetworkLibp2PBytesTotalReceive uint64 `` /* 159-byte string literal not displayed */
NetworkLibp2PBytesTotalTransmit uint64 `` /* 162-byte string literal not displayed */
NetworkPeersConnected uint64 `` /* 128-byte string literal not displayed */
SyncEth1Connected bool `protobuf:"varint,14,opt,name=sync_eth1_connected,json=syncEth1Connected,proto3" json:"sync_eth1_connected,omitempty"`
SyncEth2Synced bool `protobuf:"varint,15,opt,name=sync_eth2_synced,json=syncEth2Synced,proto3" json:"sync_eth2_synced,omitempty"`
SyncBeaconHeadSlot uint64 `protobuf:"varint,16,opt,name=sync_beacon_head_slot,json=syncBeaconHeadSlot,proto3" json:"sync_beacon_head_slot,omitempty"`
SyncEth1FallbackConfigured bool `` /* 145-byte string literal not displayed */
SyncEth1FallbackConnected bool `` /* 142-byte string literal not displayed */
// do not store in bigtable but include them in generated model
Machine *string `protobuf:"bytes,19,opt,name=machine,proto3,oneof" json:"machine,omitempty"`
// contains filtered or unexported fields
}
func (*MachineMetricNode) Descriptor
deprecated
func (*MachineMetricNode) Descriptor() ([]byte, []int)
Deprecated: Use MachineMetricNode.ProtoReflect.Descriptor instead.
func (*MachineMetricNode) GetClientBuild ¶
func (x *MachineMetricNode) GetClientBuild() uint64
func (*MachineMetricNode) GetClientName ¶
func (x *MachineMetricNode) GetClientName() string
func (*MachineMetricNode) GetClientVersion ¶
func (x *MachineMetricNode) GetClientVersion() string
func (*MachineMetricNode) GetCpuProcessSecondsTotal ¶
func (x *MachineMetricNode) GetCpuProcessSecondsTotal() uint64
func (*MachineMetricNode) GetDiskBeaconchainBytesTotal ¶
func (x *MachineMetricNode) GetDiskBeaconchainBytesTotal() uint64
func (*MachineMetricNode) GetExporterVersion ¶
func (x *MachineMetricNode) GetExporterVersion() string
func (*MachineMetricNode) GetMachine ¶
func (x *MachineMetricNode) GetMachine() string
func (*MachineMetricNode) GetMemoryProcessBytes ¶
func (x *MachineMetricNode) GetMemoryProcessBytes() uint64
func (*MachineMetricNode) GetNetworkLibp2PBytesTotalReceive ¶
func (x *MachineMetricNode) GetNetworkLibp2PBytesTotalReceive() uint64
func (*MachineMetricNode) GetNetworkLibp2PBytesTotalTransmit ¶
func (x *MachineMetricNode) GetNetworkLibp2PBytesTotalTransmit() uint64
func (*MachineMetricNode) GetNetworkPeersConnected ¶
func (x *MachineMetricNode) GetNetworkPeersConnected() uint64
func (*MachineMetricNode) GetSyncBeaconHeadSlot ¶
func (x *MachineMetricNode) GetSyncBeaconHeadSlot() uint64
func (*MachineMetricNode) GetSyncEth1Connected ¶
func (x *MachineMetricNode) GetSyncEth1Connected() bool
func (*MachineMetricNode) GetSyncEth1FallbackConfigured ¶
func (x *MachineMetricNode) GetSyncEth1FallbackConfigured() bool
func (*MachineMetricNode) GetSyncEth1FallbackConnected ¶
func (x *MachineMetricNode) GetSyncEth1FallbackConnected() bool
func (*MachineMetricNode) GetSyncEth2FallbackConfigured ¶
func (x *MachineMetricNode) GetSyncEth2FallbackConfigured() bool
func (*MachineMetricNode) GetSyncEth2FallbackConnected ¶
func (x *MachineMetricNode) GetSyncEth2FallbackConnected() bool
func (*MachineMetricNode) GetSyncEth2Synced ¶
func (x *MachineMetricNode) GetSyncEth2Synced() bool
func (*MachineMetricNode) GetTimestamp ¶
func (x *MachineMetricNode) GetTimestamp() uint64
func (*MachineMetricNode) ProtoMessage ¶
func (*MachineMetricNode) ProtoMessage()
func (*MachineMetricNode) ProtoReflect ¶
func (x *MachineMetricNode) ProtoReflect() protoreflect.Message
func (*MachineMetricNode) Reset ¶
func (x *MachineMetricNode) Reset()
func (*MachineMetricNode) String ¶
func (x *MachineMetricNode) String() string
type MachineMetricSystem ¶
type MachineMetricSystem struct {
Timestamp uint64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
ExporterVersion string `protobuf:"bytes,2,opt,name=exporter_version,json=exporterVersion,proto3" json:"exporter_version,omitempty"`
// system
CpuCores uint64 `protobuf:"varint,3,opt,name=cpu_cores,json=cpuCores,proto3" json:"cpu_cores,omitempty"`
CpuThreads uint64 `protobuf:"varint,4,opt,name=cpu_threads,json=cpuThreads,proto3" json:"cpu_threads,omitempty"`
CpuNodeSystemSecondsTotal uint64 `` /* 143-byte string literal not displayed */
CpuNodeUserSecondsTotal uint64 `` /* 137-byte string literal not displayed */
CpuNodeIowaitSecondsTotal uint64 `` /* 143-byte string literal not displayed */
CpuNodeIdleSecondsTotal uint64 `` /* 137-byte string literal not displayed */
MemoryNodeBytesTotal uint64 `` /* 126-byte string literal not displayed */
MemoryNodeBytesFree uint64 `protobuf:"varint,10,opt,name=memory_node_bytes_free,json=memoryNodeBytesFree,proto3" json:"memory_node_bytes_free,omitempty"`
MemoryNodeBytesCached uint64 `` /* 130-byte string literal not displayed */
MemoryNodeBytesBuffers uint64 `` /* 133-byte string literal not displayed */
DiskNodeBytesTotal uint64 `protobuf:"varint,13,opt,name=disk_node_bytes_total,json=diskNodeBytesTotal,proto3" json:"disk_node_bytes_total,omitempty"`
DiskNodeBytesFree uint64 `protobuf:"varint,14,opt,name=disk_node_bytes_free,json=diskNodeBytesFree,proto3" json:"disk_node_bytes_free,omitempty"`
DiskNodeIoSeconds uint64 `protobuf:"varint,15,opt,name=disk_node_io_seconds,json=diskNodeIoSeconds,proto3" json:"disk_node_io_seconds,omitempty"`
DiskNodeReadsTotal uint64 `protobuf:"varint,16,opt,name=disk_node_reads_total,json=diskNodeReadsTotal,proto3" json:"disk_node_reads_total,omitempty"`
DiskNodeWritesTotal uint64 `protobuf:"varint,17,opt,name=disk_node_writes_total,json=diskNodeWritesTotal,proto3" json:"disk_node_writes_total,omitempty"`
NetworkNodeBytesTotalReceive uint64 `` /* 153-byte string literal not displayed */
NetworkNodeBytesTotalTransmit uint64 `` /* 156-byte string literal not displayed */
MiscNodeBootTsSeconds uint64 `` /* 132-byte string literal not displayed */
MiscOs string `protobuf:"bytes,21,opt,name=misc_os,json=miscOs,proto3" json:"misc_os,omitempty"`
// do not store in bigtable but include them in generated model
Machine *string `protobuf:"bytes,22,opt,name=machine,proto3,oneof" json:"machine,omitempty"`
// contains filtered or unexported fields
}
func (*MachineMetricSystem) Descriptor
deprecated
func (*MachineMetricSystem) Descriptor() ([]byte, []int)
Deprecated: Use MachineMetricSystem.ProtoReflect.Descriptor instead.
func (*MachineMetricSystem) GetCpuCores ¶
func (x *MachineMetricSystem) GetCpuCores() uint64
func (*MachineMetricSystem) GetCpuNodeIdleSecondsTotal ¶
func (x *MachineMetricSystem) GetCpuNodeIdleSecondsTotal() uint64
func (*MachineMetricSystem) GetCpuNodeIowaitSecondsTotal ¶
func (x *MachineMetricSystem) GetCpuNodeIowaitSecondsTotal() uint64
func (*MachineMetricSystem) GetCpuNodeSystemSecondsTotal ¶
func (x *MachineMetricSystem) GetCpuNodeSystemSecondsTotal() uint64
func (*MachineMetricSystem) GetCpuNodeUserSecondsTotal ¶
func (x *MachineMetricSystem) GetCpuNodeUserSecondsTotal() uint64
func (*MachineMetricSystem) GetCpuThreads ¶
func (x *MachineMetricSystem) GetCpuThreads() uint64
func (*MachineMetricSystem) GetDiskNodeBytesFree ¶
func (x *MachineMetricSystem) GetDiskNodeBytesFree() uint64
func (*MachineMetricSystem) GetDiskNodeBytesTotal ¶
func (x *MachineMetricSystem) GetDiskNodeBytesTotal() uint64
func (*MachineMetricSystem) GetDiskNodeIoSeconds ¶
func (x *MachineMetricSystem) GetDiskNodeIoSeconds() uint64
func (*MachineMetricSystem) GetDiskNodeReadsTotal ¶
func (x *MachineMetricSystem) GetDiskNodeReadsTotal() uint64
func (*MachineMetricSystem) GetDiskNodeWritesTotal ¶
func (x *MachineMetricSystem) GetDiskNodeWritesTotal() uint64
func (*MachineMetricSystem) GetExporterVersion ¶
func (x *MachineMetricSystem) GetExporterVersion() string
func (*MachineMetricSystem) GetMachine ¶
func (x *MachineMetricSystem) GetMachine() string
func (*MachineMetricSystem) GetMemoryNodeBytesBuffers ¶
func (x *MachineMetricSystem) GetMemoryNodeBytesBuffers() uint64
func (*MachineMetricSystem) GetMemoryNodeBytesCached ¶
func (x *MachineMetricSystem) GetMemoryNodeBytesCached() uint64
func (*MachineMetricSystem) GetMemoryNodeBytesFree ¶
func (x *MachineMetricSystem) GetMemoryNodeBytesFree() uint64
func (*MachineMetricSystem) GetMemoryNodeBytesTotal ¶
func (x *MachineMetricSystem) GetMemoryNodeBytesTotal() uint64
func (*MachineMetricSystem) GetMiscNodeBootTsSeconds ¶
func (x *MachineMetricSystem) GetMiscNodeBootTsSeconds() uint64
func (*MachineMetricSystem) GetMiscOs ¶
func (x *MachineMetricSystem) GetMiscOs() string
func (*MachineMetricSystem) GetNetworkNodeBytesTotalReceive ¶
func (x *MachineMetricSystem) GetNetworkNodeBytesTotalReceive() uint64
func (*MachineMetricSystem) GetNetworkNodeBytesTotalTransmit ¶
func (x *MachineMetricSystem) GetNetworkNodeBytesTotalTransmit() uint64
func (*MachineMetricSystem) GetTimestamp ¶
func (x *MachineMetricSystem) GetTimestamp() uint64
func (*MachineMetricSystem) ProtoMessage ¶
func (*MachineMetricSystem) ProtoMessage()
func (*MachineMetricSystem) ProtoReflect ¶
func (x *MachineMetricSystem) ProtoReflect() protoreflect.Message
func (*MachineMetricSystem) Reset ¶
func (x *MachineMetricSystem) Reset()
func (*MachineMetricSystem) String ¶
func (x *MachineMetricSystem) String() string
type MachineMetricSystemUser ¶
type MachineMetricSystemUser struct {
UserID uint64
Machine string
CurrentData *MachineMetricSystem
CurrentDataInsertTs int64
FiveMinuteOldData *MachineMetricSystem
FiveMinuteOldDataInsertTs int64
}
type MachineMetricValidator ¶
type MachineMetricValidator struct {
Timestamp uint64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
ExporterVersion string `protobuf:"bytes,2,opt,name=exporter_version,json=exporterVersion,proto3" json:"exporter_version,omitempty"`
// process
CpuProcessSecondsTotal uint64 `` /* 132-byte string literal not displayed */
MemoryProcessBytes uint64 `protobuf:"varint,4,opt,name=memory_process_bytes,json=memoryProcessBytes,proto3" json:"memory_process_bytes,omitempty"`
ClientName string `protobuf:"bytes,5,opt,name=client_name,json=clientName,proto3" json:"client_name,omitempty"`
ClientVersion string `protobuf:"bytes,6,opt,name=client_version,json=clientVersion,proto3" json:"client_version,omitempty"`
ClientBuild uint64 `protobuf:"varint,7,opt,name=client_build,json=clientBuild,proto3" json:"client_build,omitempty"`
SyncEth2FallbackConfigured bool `` /* 144-byte string literal not displayed */
SyncEth2FallbackConnected bool `` /* 141-byte string literal not displayed */
// validator
ValidatorTotal uint64 `protobuf:"varint,10,opt,name=validator_total,json=validatorTotal,proto3" json:"validator_total,omitempty"`
ValidatorActive uint64 `protobuf:"varint,11,opt,name=validator_active,json=validatorActive,proto3" json:"validator_active,omitempty"`
// do not store in bigtable but include them in generated model
Machine *string `protobuf:"bytes,12,opt,name=machine,proto3,oneof" json:"machine,omitempty"`
// contains filtered or unexported fields
}
func (*MachineMetricValidator) Descriptor
deprecated
func (*MachineMetricValidator) Descriptor() ([]byte, []int)
Deprecated: Use MachineMetricValidator.ProtoReflect.Descriptor instead.
func (*MachineMetricValidator) GetClientBuild ¶
func (x *MachineMetricValidator) GetClientBuild() uint64
func (*MachineMetricValidator) GetClientName ¶
func (x *MachineMetricValidator) GetClientName() string
func (*MachineMetricValidator) GetClientVersion ¶
func (x *MachineMetricValidator) GetClientVersion() string
func (*MachineMetricValidator) GetCpuProcessSecondsTotal ¶
func (x *MachineMetricValidator) GetCpuProcessSecondsTotal() uint64
func (*MachineMetricValidator) GetExporterVersion ¶
func (x *MachineMetricValidator) GetExporterVersion() string
func (*MachineMetricValidator) GetMachine ¶
func (x *MachineMetricValidator) GetMachine() string
func (*MachineMetricValidator) GetMemoryProcessBytes ¶
func (x *MachineMetricValidator) GetMemoryProcessBytes() uint64
func (*MachineMetricValidator) GetSyncEth2FallbackConfigured ¶
func (x *MachineMetricValidator) GetSyncEth2FallbackConfigured() bool
func (*MachineMetricValidator) GetSyncEth2FallbackConnected ¶
func (x *MachineMetricValidator) GetSyncEth2FallbackConnected() bool
func (*MachineMetricValidator) GetTimestamp ¶
func (x *MachineMetricValidator) GetTimestamp() uint64
func (*MachineMetricValidator) GetValidatorActive ¶
func (x *MachineMetricValidator) GetValidatorActive() uint64
func (*MachineMetricValidator) GetValidatorTotal ¶
func (x *MachineMetricValidator) GetValidatorTotal() uint64
func (*MachineMetricValidator) ProtoMessage ¶
func (*MachineMetricValidator) ProtoMessage()
func (*MachineMetricValidator) ProtoReflect ¶
func (x *MachineMetricValidator) ProtoReflect() protoreflect.Message
func (*MachineMetricValidator) Reset ¶
func (x *MachineMetricValidator) Reset()
func (*MachineMetricValidator) String ¶
func (x *MachineMetricValidator) String() string
type MainMenuItem ¶
type MainMenuItem struct {
Label string
Path string
IsActive bool
HasBigGroups bool // if HasBigGroups is set to true then the NavigationGroups will be ordered horizontally and their Label will be shown
Groups []NavigationGroup
}
type ManageNotificationModal ¶
type ManageNotificationModal struct {
CsrfField template.HTML
ValidatorIndex int64
ValidatorPubkey string
Events []EventNameCheckbox
}
type MempoolTxPageData ¶
type MempoolTxPageData struct {
RawMempoolTransaction
TargetIsContract bool
IsContractCreation bool
}
type Meta ¶
type Meta struct {
Title string
Description string
Path string
Tlabel1 string
Tdata1 string
Tlabel2 string
Tdata2 string
GATag string
NoTrack bool
Templates string
}
Meta is a struct to hold metadata about the page
type MethodSignature ¶
type MinimalBlock ¶
type MinimalBlock struct {
Epoch uint64 `db:"epoch"`
Slot uint64 `db:"slot"`
BlockRoot []byte `db:"blockroot"`
ParentRoot []byte `db:"parentroot"`
Canonical bool `db:"-"`
}
MinimalBlock is a struct to hold minimal block data
type MinimalTaggedValidators ¶
type MobilePricing ¶
type MobileSettingsData ¶
type MobileSettingsData struct {
NotifyToken string `json:"notify_token"`
}
type MobileSubscription ¶
type MobileSubscription struct {
ProductID string `json:"id"`
PriceMicros uint64 `json:"priceMicros"`
Currency string `json:"currency"`
Transaction MobileSubscriptionTransactionGeneric `json:"transaction"`
Valid bool `json:"valid"`
}
type MyCryptoSignature ¶
type NavigationGroup ¶
type NavigationGroup struct {
}
type NavigationLink ¶
type NavigationLink struct {
}
type NetworkEventModal ¶
type NetworkEventModal struct {
CsrfField template.HTML
ValidatorIndex int64
ValidatorPubkey string
Events []EventNameCheckbox
}
type NodeJob ¶
type NodeJob struct {
ID string `db:"id"`
CreatedTime time.Time `db:"created_time"`
SubmittedToNodeTime sql.NullTime `db:"submitted_to_node_time"`
CompletedTime sql.NullTime `db:"completed_time"`
Type NodeJobType `db:"type"`
Status NodeJobStatus `db:"status"`
RawData []byte `db:"data"`
Data interface{} `db:"-"`
}
func NewNodeJob ¶
func (NodeJob) GetBLSToExecutionChangesNodeJobData ¶
func (nj NodeJob) GetBLSToExecutionChangesNodeJobData() ([]*capella.SignedBLSToExecutionChange, bool)
func (NodeJob) GetVoluntaryExitsNodeJobData ¶
func (nj NodeJob) GetVoluntaryExitsNodeJobData() (*phase0.SignedVoluntaryExit, bool)
func (*NodeJob) ParseData ¶
ParseData will try to unmarshal NodeJob.RawData into NodeJob.Data and determine NodeJob.Type by doing so. If it is not able to unmarshal any type it will return an error. It will sanitize NodeJob.RawData on success.
func (*NodeJob) SanitizeRawData ¶
type NodeJobStatus ¶
type NodeJobStatus string
const CompletedNodeJobStatus NodeJobStatus = "COMPLETED" // job has been submitted successfully and result is visible on chain
const FailedNodeJobStatus NodeJobStatus = "FAILED" // job has been submitted successfully but something went wrong
const PendingNodeJobStatus NodeJobStatus = "PENDING" // job is waiting to be submitted
const SubmittedToNodeNodeJobStatus NodeJobStatus = "SUBMITTED_TO_NODE" // job has been submitted successfully
type NodeJobType ¶
type NodeJobType string
const BLSToExecutionChangesNodeJobType NodeJobType = "BLS_TO_EXECUTION_CHANGES"
const UnknownNodeJobType NodeJobType = "UNKNOWN"
const VoluntaryExitsNodeJobType NodeJobType = "VOLUNTARY_EXITS"
type NodeJobValidatorInfo ¶
type Notification ¶
type NotificationChannel ¶
type NotificationChannel string
const ( EmailNotificationChannel NotificationChannel = "email" PushNotificationChannel NotificationChannel = "push" WebhookNotificationChannel NotificationChannel = "webhook" WebhookDiscordNotificationChannel NotificationChannel = "webhook_discord" )
func GetNotificationChannel ¶
func GetNotificationChannel(channel string) (NotificationChannel, error)
type NotificationChannelsModal ¶
type NotificationChannelsModal struct {
CsrfField template.HTML
NotificationChannels []UserNotificationChannels
}
type OAuthAppData ¶
type OAuthCodeData ¶
type PageData ¶
type PageData struct {
Active string
AdConfigurations []*AdConfig
Meta *Meta
ShowSyncingMessage bool
User *User
Data interface{}
Version string
Year int
ChainSlotsPerEpoch uint64
ChainSecondsPerSlot uint64
ChainGenesisTimestamp uint64
CurrentEpoch uint64
LatestFinalizedEpoch uint64
CurrentSlot uint64
FinalizationDelay uint64
Mainnet bool
DepositContract string
Rates PageRates
InfoBanner *template.HTML
ClientsUpdated bool
// IsUserClientUpdated func(uint64) bool
ChainConfig ChainConfig
Lang string
NoAds bool
Debug bool
DebugTemplates []string
DebugSession map[string]interface{}
GasNow *GasNowPageData
GlobalNotification template.HTML
AvailableCurrencies []string
MainMenuItems []MainMenuItem
}
PageData is a struct to hold web page data
type PageRates ¶
type PageRates struct {
EthPrice float64
EthRoundPrice uint64
EthTruncPrice template.HTML
UsdRoundPrice uint64
UsdTruncPrice template.HTML
EurRoundPrice uint64
EurTruncPrice template.HTML
GbpRoundPrice uint64
GbpTruncPrice template.HTML
CnyRoundPrice uint64
CnyTruncPrice template.HTML
RubRoundPrice uint64
RubTruncPrice template.HTML
CadRoundPrice uint64
CadTruncPrice template.HTML
AudRoundPrice uint64
AudTruncPrice template.HTML
JpyRoundPrice uint64
JpyTruncPrice template.HTML
Currency string
CurrentPriceFormatted template.HTML
CurrentPriceKFormatted template.HTML
CurrentSymbol string
ExchangeRate float64
}
type PairedDevice ¶
type PoolInfo ¶
type PoolInfo struct {
Name string `db:"name"`
Count int64 `db:"count"`
AvgPerformance31d float64 `db:"avg_performance_31d"`
AvgPerformance7d float64 `db:"avg_performance_7d"`
AvgPerformance1d float64 `db:"avg_performance_1d"`
EthstoreCompoarison1d float64
EthstoreCompoarison7d float64
EthstoreCompoarison31d float64
}
type PoolsResp ¶
type PoolsResp struct {
PoolsDistribution ChartsPageDataChart
HistoricPoolPerformance ChartsPageDataChart
PoolInfos []*PoolInfo
}
type PremiumData ¶
type ProposerSlashing ¶
ProposerSlashing is a struct to hold proposer slashing data
type RateLimitError ¶
func (*RateLimitError) Error ¶
func (e *RateLimitError) Error() string
type RawMempoolResponse ¶
type RawMempoolResponse struct {
Pending map[string]map[int]*RawMempoolTransaction `json:"pending"`
Queued map[string]map[int]*RawMempoolTransaction `json:"queued"`
BaseFee map[string]map[int]*RawMempoolTransaction `json:"baseFee"`
TxsByHash map[common.Hash]*RawMempoolTransaction
}
func (RawMempoolResponse) FindTxByHash ¶
func (mempool RawMempoolResponse) FindTxByHash(txHashString string) *RawMempoolTransaction
type RawMempoolTransaction ¶
type RawMempoolTransaction struct {
Hash common.Hash `json:"hash"`
From *common.Address `json:"from"`
To *common.Address `json:"to"`
Value *hexutil.Big `json:"value"`
Gas *hexutil.Big `json:"gas"`
GasFeeCap *hexutil.Big `json:"maxFeePerGas,omitempty"`
GasTipCap *hexutil.Big `json:"maxPriorityFeePerGas,omitempty"`
GasPrice *hexutil.Big `json:"gasPrice"`
Nonce *hexutil.Big `json:"nonce"`
Input *string `json:"input"`
TransactionIndex *hexutil.Big `json:"transactionIndex"`
}
type Relay ¶
type Relay struct {
ID string `db:"tag_id"`
Endpoint string `db:"endpoint"`
Link sql.NullString `db:"public_link"`
IsCensoring sql.NullBool `db:"is_censoring"`
IsEthical sql.NullBool `db:"is_ethical"`
ExportFailureCount uint64 `db:"export_failure_count"`
LastExportTryTs time.Time `db:"last_export_try_ts"`
LastExportSuccessTs time.Time `db:"last_export_success_ts"`
Logger logrus.Entry
}
type RelayBlock ¶
type RelayBlock struct {
ID string `db:"tag_id" json:"tag_id"`
BlockSlot uint64 `db:"block_slot" json:"block_slot"`
BlockRoot string `db:"block_root" json:"block_root"`
ExecBlockHash string `db:"exec_block_hash"`
Value uint64 `db:"value" json:"value"`
BuilderPubkey string `db:"builder_pubkey" json:"builder_pubkey"`
ProposerPubkey string `db:"proposer_pubkey" json:"proposer_pubkey"`
ProposerFeeRecipient string `db:"proposer_fee_recipient" json:"proposer_fee_recipient"`
}
type RelayBlockSlice ¶
type RelayBlockSlice []RelayBlock
func (*RelayBlockSlice) Scan ¶
func (s *RelayBlockSlice) Scan(src interface{}) error
type RelayDataApiResponse ¶
type RelayInfo ¶
type RelayInfo struct {
RelayID string `db:"relay_id"`
Name sql.NullString `db:"name"`
Link sql.NullString `db:"link"`
Censors sql.NullBool `db:"censors"`
Ethical sql.NullBool `db:"ethical"`
BlockCount uint64 `db:"block_count"`
UniqueBuilders uint64 `db:"unique_builders"`
NetworkUsage float64 `db:"network_usage"`
TotalValue WeiString `db:"total_value"`
AverageValue WeiString `db:"avg_value"`
MaxValue WeiString `db:"max_value"`
MaxValueSlot uint64 `db:"max_value_slot"`
}
type RelayInfoContainer ¶
type RelaysData ¶
type RelaysResp ¶
type RelaysResp struct {
RelaysInfoContainers [3]RelayInfoContainer
RecentBlocks []*RelaysRespBlock
TopBlocks []*RelaysRespBlock
LastUpdated time.Time
TopBuilders []*struct {
Tags TagMetadataSlice `db:"tags"`
Builder []byte `db:"builder_pubkey"`
BlockCount uint64 `db:"c"`
LatestSlot uint64 `db:"latest_slot"`
BlockPerc float64
}
}
type RelaysRespBlock ¶
type RocketpoolPageData ¶
type RocketpoolPageData struct{}
type RocketpoolPageDataDAOMember ¶
type RocketpoolPageDataDAOMember struct {
TotalCount uint64 `db:"total_count"`
RocketpoolStorageAddress []byte `db:"rocketpool_storage_address"`
Address []byte `db:"address"`
ID string `db:"id"`
URL string `url:"url"`
JoinedTime time.Time `db:"joined_time"`
LastProposalTime time.Time `db:"last_proposal_time"`
RPLBondAmount string `db:"rpl_bond_amount"`
UnbondedValidatorCount uint64 `db:"unbonded_validator_count"`
}
type RocketpoolPageDataDAOProposal ¶
type RocketpoolPageDataDAOProposal struct {
TotalCount uint64 `db:"total_count"`
RocketpoolStorageAddress []byte `db:"rocketpool_storage_address"`
ID uint64 `db:"id"`
DAO string `db:"dao"`
ProposerAddress []byte `db:"proposer_address"`
Message string `db:"message"`
CreatedTime time.Time `db:"created_time"`
StartTime time.Time `db:"start_time"`
EndTime time.Time `db:"end_time"`
ExpiryTime time.Time `db:"expiry_time"`
VotesRequired float64 `db:"votes_required"`
VotesFor float64 `db:"votes_for"`
VotesAgainst float64 `db:"votes_against"`
MemberVoted bool `db:"member_voted"`
MemberSupported bool `db:"member_supported"`
IsCancelled bool `db:"is_cancelled"`
IsExecuted bool `db:"is_executed"`
Payload []byte `db:"payload"`
State string `db:"state"`
MemberVotesJSON []byte `db:"member_votes"`
}
type RocketpoolPageDataMinipool ¶
type RocketpoolPageDataMinipool struct {
TotalCount uint64 `db:"total_count"`
RocketpoolStorageAddress []byte `db:"rocketpool_storage_address"`
ValidatorName string `db:"validator_name"`
ValidatorIndex *uint64 `db:"validator_index"`
Address []byte `db:"address"`
Pubkey []byte `db:"pubkey"`
NodeAddress []byte `db:"node_address"`
NodeFee float64 `db:"node_fee"`
DepositType string `db:"deposit_type"`
Status string `db:"status"`
StatusTime time.Time `db:"status_time"`
PenaltyCount uint64 `db:"penalty_count"`
DepositEth int `db:"node_deposit_balance"`
}
type RocketpoolPageDataNode ¶
type RocketpoolPageDataNode struct {
TotalCount uint64 `db:"total_count"`
RocketpoolStorageAddress []byte `db:"rocketpool_storage_address"`
Address []byte `db:"address"`
TimezoneLocation string `db:"timezone_location"`
RPLStake string `db:"rpl_stake"`
MinRPLStake string `db:"min_rpl_stake"`
MaxRPLStake string `db:"max_rpl_stake"`
CumulativeRPL string `db:"rpl_cumulative_rewards"`
ClaimedSmoothingPool string `db:"claimed_smoothing_pool"`
UnclaimedSmoothingPool string `db:"unclaimed_smoothing_pool"`
UnclaimedRplRewards string `db:"unclaimed_rpl_rewards"`
SmoothingPoolOptIn bool `db:"smoothing_pool_opted_in"`
DepositCredit string `db:"deposit_credit"`
}
type RocketpoolValidatorPageData ¶
type RocketpoolValidatorPageData struct {
NodeAddress *[]byte `db:"node_address"`
MinipoolAddress *[]byte `db:"minipool_address"`
MinipoolNodeFee *float64 `db:"minipool_node_fee"`
MinipoolDepositType *string `db:"minipool_deposit_type"`
MinipoolStatus *string `db:"minipool_status"`
MinipoolStatusTime *time.Time `db:"minipool_status_time"`
NodeTimezoneLocation *string `db:"node_timezone_location"`
NodeRPLStake *string `db:"node_rpl_stake"`
NodeMinRPLStake *string `db:"node_min_rpl_stake"`
NodeMaxRPLStake *string `db:"node_max_rpl_stake"`
CumulativeRPL *string `db:"rpl_cumulative_rewards"`
SmoothingClaimed *string `db:"claimed_smoothing_pool"`
SmoothingUnclaimed *string `db:"unclaimed_smoothing_pool"`
UnclaimedRPL *string `db:"unclaimed_rpl_rewards"`
SmoothingPoolOptIn bool `db:"smoothing_pool_opted_in"`
PenaltyCount int `db:"penalty_count"`
RocketscanUrl string `db:"-"`
NodeDepositBalance *string `db:"node_deposit_balance"`
NodeRefundBalance *string `db:"node_refund_balance"`
UserDepositBalance *string `db:"user_deposit_balance"`
IsVacant bool `db:"is_vacant"`
Version *string `db:"version"`
NodeDepositCredit *string `db:"deposit_credit"`
EffectiveRPLStake *string `db:"effective_rpl_stake"`
}
type SearchAheadBlocksResult ¶
type SearchAheadBlocksResult []struct {
Block uint64 `json:"block,omitempty"`
Hash string `json:"hash,omitempty"`
}
SearchAheadBlockssResult is a struct to hold the search ahead block results
type SearchAheadEpochsResult ¶
type SearchAheadEpochsResult []struct {
Epoch string `db:"epoch" json:"epoch,omitempty"`
}
SearchAheadEpochsResult is a struct to hold the search ahead epochs results
type SearchAheadEth1Result ¶
type SearchAheadEth1Result []struct {
Publickey string `db:"publickey" json:"publickey,omitempty"`
Eth1Address string `db:"from_address" json:"address,omitempty"`
}
SearchAheadEth1Result is a struct to hold the search ahead eth1 results
type SearchAheadGraffitiResult ¶
type SearchAheadGraffitiResult []struct {
Graffiti string `db:"graffiti" json:"graffiti,omitempty"`
Count string `db:"count" json:"count,omitempty"`
}
SearchAheadGraffitiResult is a struct to hold the search ahead blocks results with a given graffiti
type SearchAheadSlotsResult ¶
type SearchAheadSlotsResult []struct {
Slot string `db:"slot" json:"slot,omitempty"`
Root string `db:"blockroot" json:"blockroot,omitempty"`
}
SearchAheadSlotsResult is a struct to hold the search ahead slots results
type SearchAheadValidatorsResult ¶
type SearchAheadValidatorsResult []struct {
Index string `db:"index" json:"index,omitempty"`
Pubkey string `db:"pubkey" json:"pubkey,omitempty"`
}
SearchAheadValidatorsResult is a struct to hold the search ahead validators results
type SeriesDataItem ¶
type SignedBLSToExecutionChange ¶
type SignedBLSToExecutionChange struct {
Message BLSToExecutionChange
Signature []byte
}
type SlotVizEpochs ¶
type SlotVizPageData ¶
type SlotVizPageData struct {
Epochs []*SlotVizEpochs
Selector string
Config ExplorerConfigurationKeyMap
}
type SlotVizSlots ¶
type SourcifyContractMetadata ¶
type SourcifyContractMetadata struct {
Compiler struct {
Version string `json:"version"`
} `json:"compiler"`
Language string `json:"language"`
Output struct {
Abi []struct {
Anonymous bool `json:"anonymous"`
Inputs []struct {
Indexed bool `json:"indexed"`
InternalType string `json:"internalType"`
Name string `json:"name"`
Type string `json:"type"`
} `json:"inputs"`
Name string `json:"name"`
Outputs []struct {
InternalType string `json:"internalType"`
Name string `json:"name"`
Type string `json:"type"`
} `json:"outputs"`
StateMutability string `json:"stateMutability"`
Type string `json:"type"`
} `json:"abi"`
} `json:"output"`
Settings struct {
CompilationTarget struct {
Browser_Stakehavens_sol string `json:"browser/Stakehavens.sol"`
} `json:"compilationTarget"`
EvmVersion string `json:"evmVersion"`
Libraries struct{} `json:"libraries"`
Metadata struct {
BytecodeHash string `json:"bytecodeHash"`
} `json:"metadata"`
Optimizer struct {
Enabled bool `json:"enabled"`
Runs int64 `json:"runs"`
} `json:"optimizer"`
Remappings []interface{} `json:"remappings"`
} `json:"settings"`
Sources struct {
Browser_Stakehavens_sol struct {
Keccak256 string `json:"keccak256"`
Urls []string `json:"urls"`
} `json:"browser/Stakehavens.sol"`
} `json:"sources"`
Version int64 `json:"version"`
}
type StakeWithUsPageData ¶
type StakingCalculatorPageData ¶
type StakingCalculatorPageData struct {
BestValidatorBalanceHistory *[]ValidatorBalanceHistory
WatchlistBalanceHistory [][]interface{}
TotalStaked uint64
}
type Stats ¶
type Stats struct {
TopDepositors *[]StatsTopDepositors
InvalidDepositCount *uint64 `db:"count"`
UniqueValidatorCount *uint64 `db:"count"`
TotalValidatorCount *uint64 `db:"count"`
ActiveValidatorCount *uint64 `db:"count"`
PendingValidatorCount *uint64 `db:"count"`
ValidatorChurnLimit *uint64
LatestValidatorWithdrawalIndex *uint64 `db:"index"`
WithdrawableValidatorCount *uint64 `db:"count"`
// WithdrawableAmount *uint64 `db:"amount"`
PendingBLSChangeValidatorCount *uint64 `db:"count"`
NonWithdrawableCount *uint64 `db:"count"`
TotalAmountWithdrawn *uint64 `db:"amount"`
WithdrawalCount *uint64 `db:"count"`
TotalAmountDeposited *uint64 `db:"amount"`
BLSChangeCount *uint64 `db:"count"`
}
type StatsAdditionalsBeaconnode ¶
type StatsAdditionalsBeaconnode struct {
DiskBeaconchainBytesTotal uint64 `mapstructure:"disk_beaconchain_bytes_total"`
NetworkLibp2pBytesTotalReceive uint64 `mapstructure:"network_libp2p_bytes_total_receive"`
NetworkLibp2pBytesTotalTransmit uint64 `mapstructure:"network_libp2p_bytes_total_transmit"`
NetworkPeersConnected uint64 `mapstructure:"network_peers_connected"`
SyncEth1Connected bool `mapstructure:"sync_eth1_connected"`
SyncEth2Synced bool `mapstructure:"sync_eth2_synced"`
SyncBeaconHeadSlot uint64 `mapstructure:"sync_beacon_head_slot"`
SyncEth1FallbackConfigured bool `mapstructure:"sync_eth1_fallback_configured"`
SyncEth1FallbackConnected bool `mapstructure:"sync_eth1_fallback_connected"`
}
type StatsDataStruct ¶
type StatsDataStruct struct {
Validator interface{} `json:"validator"`
Node interface{} `json:"node"`
System interface{} `json:"system"`
}
type StatsProcess ¶
type StatsProcess struct {
CPUProcessSecondsTotal uint64 `mapstructure:"cpu_process_seconds_total"`
MemoryProcessBytes uint64 `mapstructure:"memory_process_bytes"`
ClientName string `mapstructure:"client_name"`
ClientVersion string `mapstructure:"client_version"`
ClientBuild uint64 `mapstructure:"client_build"`
SyncEth2FallbackConfigured bool `mapstructure:"sync_eth2_fallback_configured"`
SyncEth2FallbackConnected bool `mapstructure:"sync_eth2_fallback_connected"`
}
type StatsSystem ¶
type StatsSystem struct {
CPUCores uint64 `mapstructure:"cpu_cores"`
CPUThreads uint64 `mapstructure:"cpu_threads"`
CPUNodeSystemSecondsTotal uint64 `mapstructure:"cpu_node_system_seconds_total"`
CPUNodeUserSecondsTotal uint64 `mapstructure:"cpu_node_user_seconds_total"`
CPUNodeIowaitSecondsTotal uint64 `mapstructure:"cpu_node_iowait_seconds_total"`
CPUNodeIdleSecondsTotal uint64 `mapstructure:"cpu_node_idle_seconds_total"`
MemoryNodeBytesTotal uint64 `mapstructure:"memory_node_bytes_total"`
MemoryNodeBytesFree uint64 `mapstructure:"memory_node_bytes_free"`
MemoryNodeBytesCached uint64 `mapstructure:"memory_node_bytes_cached"`
MemoryNodeBytesBuffers uint64 `mapstructure:"memory_node_bytes_buffers"`
DiskNodeBytesTotal uint64 `mapstructure:"disk_node_bytes_total"`
DiskNodeBytesFree uint64 `mapstructure:"disk_node_bytes_free"`
DiskNodeIoSeconds uint64 `mapstructure:"disk_node_io_seconds"`
DiskNodeReadsTotal uint64 `mapstructure:"disk_node_reads_total"`
DiskNodeWritesTotal uint64 `mapstructure:"disk_node_writes_total"`
NetworkNodeBytesTotalReceive uint64 `mapstructure:"network_node_bytes_total_receive"`
NetworkNodeBytesTotalTransmit uint64 `mapstructure:"network_node_bytes_total_transmit"`
MiscNodeBootTsSeconds uint64 `mapstructure:"misc_node_boot_ts_seconds"`
MiscOS string `mapstructure:"misc_os"`
}
type StatsTopDepositors ¶
type StripeSubscription ¶
type Subscription ¶
type Subscription struct {
ID *uint64 `db:"id,omitempty"`
UserID *uint64 `db:"user_id,omitempty"`
EventName string `db:"event_name"`
EventFilter string `db:"event_filter"`
LastSent *time.Time `db:"last_sent_ts"`
LastEpoch *uint64 `db:"last_sent_epoch"`
// Channels pq.StringArray `db:"channels"`
CreatedTime time.Time `db:"created_ts"`
CreatedEpoch uint64 `db:"created_epoch"`
EventThreshold float64 `db:"event_threshold"`
UnsubscribeHash sql.NullString `db:"unsubscribe_hash" swaggertype:"string"`
State sql.NullString `db:"internal_state" swaggertype:"string"`
}
type SyncAggregate ¶
type SyncCommitteesStats ¶
type TagMetadata ¶
type TagMetadataSlice ¶
type TagMetadataSlice []TagMetadata
func (*TagMetadataSlice) Scan ¶
func (s *TagMetadataSlice) Scan(src interface{}) error
type TaggedValidators ¶
type Transaction ¶
type Transaction struct {
Raw []byte
// Note: below values may be nil/0 if Raw fails to decode into a valid transaction
TxHash []byte
AccountNonce uint64
// big endian
Price []byte
GasLimit uint64
Sender []byte
Recipient []byte
// big endian
Amount []byte
Payload []byte
MaxPriorityFeePerGas uint64
MaxFeePerGas uint64
}
type TransitDiscord ¶
type TransitDiscordContent ¶
type TransitDiscordContent struct {
Webhook UserWebhook
DiscordRequest DiscordReq `json:"discordRequest"`
}
func (*TransitDiscordContent) Scan ¶
func (e *TransitDiscordContent) Scan(value interface{}) error
type TransitEmail ¶
type TransitEmailContent ¶
type TransitEmailContent struct {
Address string `json:"address,omitempty"`
Subject string `json:"subject,omitempty"`
Email Email `json:"email,omitempty"`
Attachments []EmailAttachment `json:"attachments,omitempty"`
}
func (*TransitEmailContent) Scan ¶
func (e *TransitEmailContent) Scan(value interface{}) error
type TransitPush ¶
type TransitPushContent ¶
func (*TransitPushContent) Scan ¶
func (e *TransitPushContent) Scan(value interface{}) error
type TransitWebhook ¶
type TransitWebhookContent ¶
type TransitWebhookContent struct {
Webhook UserWebhook
Event WebhookEvent `json:"event"`
}
func (*TransitWebhookContent) Scan ¶
func (e *TransitWebhookContent) Scan(value interface{}) error
type UserAuthorizeConfirmPageData ¶
type UserAuthorizeConfirmPageData struct {
AppData *OAuthAppData
AuthData
}
type UserNotificationChannels ¶
type UserNotificationChannels struct {
Channel NotificationChannel `db:"channel"`
Active bool `db:"active"`
}
type UserNotificationsCenterPageData ¶
type UserNotificationsCenterPageData struct {
AuthData
Metrics interface{} `json:"metrics"`
Validators []UserValidatorNotificationTableData `json:"validators"`
Network interface{} `json:"network"`
MonitoringSubscriptions []Subscription `json:"monitoring_subscriptions"`
Machines []string
DashboardLink string `json:"dashboardLink"`
NotificationChannelsModal NotificationChannelsModal
AddValidatorWatchlistModal AddValidatorWatchlistModal
ManageNotificationModal ManageNotificationModal
NetworkEventModal NetworkEventModal
}
type UserPremiumSubscription ¶
type UserSettingsPageData ¶
type UserSettingsPageData struct {
CsrfField template.HTML
AuthData
Subscription UserSubscription
Premium UserPremiumSubscription
PairedDevices []PairedDevice
Sapphire *string
Emerald *string
Diamond *string
ApiStatistics *ApiStatistics
}
type UserSubscription ¶
type UserWebhook ¶
type UserWebhook struct {
ID uint64 `db:"id" json:"id"`
UserID uint64 `db:"user_id" json:"-"`
Url string `db:"url" json:"url"`
Retries uint64 `db:"retries" json:"retries"`
LastSent sql.NullTime `db:"last_sent" json:"lastRetry"`
Response sql.NullString `db:"response" json:"response"`
Request sql.NullString `db:"request" json:"request"`
Destination sql.NullString `db:"destination" json:"destination"`
EventNames pq.StringArray `db:"event_names" json:"-"`
}
type UserWebhookRow ¶
type UserWebhookRow struct {
ID uint64 `db:"id" json:"id"`
UrlFull string
Url template.HTML `db:"url" json:"url"`
Retries template.HTML `db:"retries" json:"retries"`
LastSent template.HTML `db:"last_retry" json:"lastSent"`
Destination template.HTML `db:"destination" json:"destination"`
WebhookError UserWebhookRowError
Response *http.Response `db:"response" json:"response"`
Request *map[string]interface{} `db:"request" json:"request"`
Events []EventNameCheckbox `db:"event_names" json:"-"`
Discord bool
CsrfField template.HTML
}
type UserWebhookRowError ¶
type UserWithPremium ¶
type UserWithPremium struct {
ID uint64 `db:"id"`
Product sql.NullString `db:"product_id"`
}
type Validator ¶
type Validator struct {
Index uint64 `db:"validatorindex"`
PublicKey []byte `db:"pubkey"`
PublicKeyHex string `db:"pubkeyhex"`
Balance uint64 `db:"balance"`
EffectiveBalance uint64 `db:"effectivebalance"`
Slashed bool `db:"slashed"`
ActivationEligibilityEpoch uint64 `db:"activationeligibilityepoch"`
ActivationEpoch uint64 `db:"activationepoch"`
ExitEpoch uint64 `db:"exitepoch"`
WithdrawableEpoch uint64 `db:"withdrawableepoch"`
WithdrawalCredentials []byte `db:"withdrawalcredentials"`
BalanceActivation sql.NullInt64 `db:"balanceactivation"`
Status string `db:"status"`
LastAttestationSlot sql.NullInt64 `db:"lastattestationslot"`
LastProposalSlot sql.NullInt64 `db:"lastproposalslot"`
}
Validator is a struct to hold validator data
type ValidatorAttestation ¶
type ValidatorAttestation struct {
Index uint64
Epoch uint64 `db:"epoch"`
AttesterSlot uint64 `db:"attesterslot"`
CommitteeIndex uint64 `db:"committeeindex"`
Status uint64 `db:"status"`
InclusionSlot uint64 `db:"inclusionslot"`
Delay int64 `db:"delay"`
}
ValidatorAttestation is a struct for the validators attestations data
type ValidatorAttestationSlashing ¶
type ValidatorAttestationSlashing struct {
Epoch uint64 `db:"epoch" json:"epoch,omitempty"`
Slot uint64 `db:"slot" json:"slot,omitempty"`
Proposer uint64 `db:"proposer" json:"proposer,omitempty"`
Attestestation1Indices pq.Int64Array `db:"attestation1_indices" json:"attestation1_indices,omitempty"`
Attestestation2Indices pq.Int64Array `db:"attestation2_indices" json:"attestation2_indices,omitempty"`
}
ValidatorAttestationSlashing is a struct to hold data of an attestation-slashing
type ValidatorBalance ¶
type ValidatorBalance struct {
Epoch uint64 `db:"epoch"`
Balance uint64 `db:"balance"`
EffectiveBalance uint64 `db:"effectivebalance"`
Index uint64 `db:"validatorindex"`
PublicKey []byte `db:"pubkey"`
}
ValidatorBalance is a struct for the validator balance data
type ValidatorBalanceHistory ¶
type ValidatorBalanceHistory struct {
Day uint64 `db:"day"`
Balance uint64 `db:"balance"`
EffectiveBalance uint64 `db:"effectivebalance"`
}
ValidatorBalanceHistory is a struct for the validator balance history data
type ValidatorDeposits ¶
type ValidatorDeposits struct {
Eth1Deposits []Eth1Deposit
LastEth1DepositTs int64
Eth2Deposits []Eth2Deposit
}
type ValidatorEarnings ¶
type ValidatorEarnings struct {
Income1d ClElInt64 `json:"income1d"`
Income7d ClElInt64 `json:"income7d"`
Income31d ClElInt64 `json:"income31d"`
IncomeTotal ClElInt64 `json:"incomeTotal"`
Apr7d ClElFloat64 `json:"apr"`
Apr31d ClElFloat64 `json:"apr31d"`
Apr365d ClElFloat64 `json:"apr365d"`
TotalDeposits int64 `json:"totalDeposits"`
TotalWithdrawals uint64 `json:"totalWithdrawals"`
EarningsInPeriodBalance int64 `json:"earningsInPeriodBalance"`
EarningsInPeriod int64 `json:"earningsInPeriod"`
EpochStart int64 `json:"epochStart"`
EpochEnd int64 `json:"epochEnd"`
LastDayFormatted template.HTML `json:"lastDayFormatted"`
LastWeekFormatted template.HTML `json:"lastWeekFormatted"`
LastMonthFormatted template.HTML `json:"lastMonthFormatted"`
ProposerTotalFormatted template.HTML `json:"proposerTotalFormatted"`
TotalFormatted template.HTML `json:"totalFormatted"`
TotalChangeFormatted template.HTML `json:"totalChangeFormatted"`
TotalBalance template.HTML `json:"totalBalance"`
}
type ValidatorEffectiveness ¶
type ValidatorHistory ¶
type ValidatorHistory struct {
Epoch uint64 `db:"epoch" json:"epoch,omitempty"`
BalanceChange sql.NullInt64 `db:"balancechange" json:"balance_change,omitempty"`
AttesterSlot sql.NullInt64 `db:"attestatation_attesterslot" json:"attester_slot,omitempty"`
InclusionSlot sql.NullInt64 `db:"attestation_inclusionslot" json:"inclusion_slot,omitempty"`
AttestationStatus uint64 `db:"attestation_status" json:"attestation_status,omitempty"`
ProposalStatus sql.NullInt64 `db:"proposal_status" json:"proposal_status,omitempty"`
ProposalSlot sql.NullInt64 `db:"proposal_slot" json:"proposal_slot,omitempty"`
IncomeDetails *itypes.ValidatorEpochIncome `db:"-" json:"income_details,omitempty"`
WithdrawalStatus sql.NullInt64 `db:"withdrawal_status" json:"withdrawal_status,omitempty"`
WithdrawalSlot sql.NullInt64 `db:"withdrawal_slot" json:"withdrawal_slot,omitempty"`
}
type ValidatorIncomeHistory ¶
type ValidatorIncomeHistory struct {
Day int64 `db:"day"` // day can be -1 which is pre-genesis
ClRewards int64 `db:"cl_rewards_gwei"`
EndBalance sql.NullInt64 `db:"end_balance"`
StartBalance sql.NullInt64 `db:"start_balance"`
DepositAmount sql.NullInt64 `db:"deposits_amount"`
WithdrawalAmount sql.NullInt64 `db:"withdrawals_amount"`
}
ValidatorBalanceHistory is a struct for the validator income history data
type ValidatorPageData ¶
type ValidatorPageData struct {
Epoch uint64 `db:"epoch"`
ValidatorIndex uint64 `db:"validatorindex"`
PublicKey []byte `db:"pubkey"`
WithdrawableEpoch uint64 `db:"withdrawableepoch"`
WithdrawCredentials []byte `db:"withdrawalcredentials"`
CurrentBalance uint64 `db:"balance"`
BalanceActivation uint64 `db:"balanceactivation"`
EffectiveBalance uint64 `db:"effectivebalance"`
Slashed bool `db:"slashed"`
SlashedBy uint64
SlashedAt uint64
SlashedFor string
ActivationEligibilityEpoch uint64 `db:"activationeligibilityepoch"`
ActivationEpoch uint64 `db:"activationepoch"`
ExitEpoch uint64 `db:"exitepoch"`
Index uint64 `db:"index"`
LastAttestationSlot *uint64 `db:"lastattestationslot"`
Name string `db:"name"`
Pool string `db:"pool"`
Tags pq.StringArray `db:"tags"`
WithdrawableTs time.Time
ActivationEligibilityTs time.Time
ActivationTs time.Time
ExitTs time.Time
Status string `db:"status"`
BlocksCount uint64
ScheduledBlocksCount uint64
MissedBlocksCount uint64
OrphanedBlocksCount uint64
ProposedBlocksCount uint64
UnmissedBlocksPercentage float64 // missed/(executed+orphaned+scheduled)
AttestationsCount uint64
ExecutedAttestationsCount uint64
MissedAttestationsCount uint64
OrphanedAttestationsCount uint64
UnmissedAttestationsPercentage float64 // missed/(executed+orphaned)
StatusProposedCount uint64
StatusMissedCount uint64
DepositsCount uint64
WithdrawalCount uint64
SlashingsCount uint64
PendingCount uint64
SyncCount uint64 // amount of sync committees the validator was (and is) part of
SlotsPerSyncCommittee uint64
SlotsDoneInCurrentSyncCommittee uint64
ScheduledSyncCountSlots uint64
ParticipatedSyncCountSlots uint64
MissedSyncCountSlots uint64
OrphanedSyncCountSlots uint64
UnmissedSyncPercentage float64 // participated/(participated+missed)
IncomeToday ClElInt64 `json:"incomeToday"`
Income1d ClElInt64 `json:"income1d"`
Income7d ClElInt64 `json:"income7d"`
Income31d ClElInt64 `json:"income31d"`
IncomeTotal ClElInt64 `json:"incomeTotal"`
IncomeTotalFormatted template.HTML `json:"incomeTotalFormatted"`
IncomeProposerFormatted *template.HTML `json:"incomeProposerFormatted"`
Apr7d ClElFloat64 `json:"apr7d"`
Apr31d ClElFloat64 `json:"apr31d"`
Apr365d ClElFloat64 `json:"apr365d"`
ProposalLuck float64
SyncLuck float64
ProposalEstimate *time.Time
SyncEstimate *time.Time
AvgSlotInterval *time.Duration
AvgSyncInterval *time.Duration
Rank7d int64 `db:"rank7d"`
RankCount int64 `db:"rank_count"`
RankPercentage float64
Proposals [][]uint64
IncomeHistoryChartData []*ChartDataPoint
ExecutionIncomeHistoryData []*ChartDataPoint
Deposits *ValidatorDeposits
Eth1DepositAddress []byte
FlashMessage string
Watchlist []*TaggedValidators
SubscriptionFlash []interface{}
User *User
AverageAttestationInclusionDistance float64
AttestationInclusionEffectiveness float64
CsrfField template.HTML
NetworkStats *IndexPageData
ChurnRate uint64
QueuePosition uint64
EstimatedActivationTs time.Time
EstimatedActivationEpoch uint64
InclusionDelay int64
CurrentAttestationStreak uint64
LongestAttestationStreak uint64
IsRocketpool bool
Rocketpool *RocketpoolValidatorPageData
ShowMultipleWithdrawalCredentialsWarning bool
CappellaHasHappened bool
BLSChange *BLSChange
IsWithdrawableAddress bool
EstimatedNextWithdrawal template.HTML
AddValidatorWatchlistModal *AddValidatorWatchlistModal
NextWithdrawalRow [][]interface{}
}
ValidatorPageData is a struct to hold data for the validators page
type ValidatorParticipation ¶
type ValidatorParticipation struct {
Epoch uint64
GlobalParticipationRate float32
VotedEther uint64
EligibleEther uint64
}
ValidatorParticipation is a struct to hold validator participation data
type ValidatorPerformance ¶
type ValidatorPerformance struct {
Rank uint64 `db:"rank"`
Index uint64 `db:"validatorindex"`
PublicKey []byte `db:"pubkey"`
Name string `db:"name"`
Balance uint64 `db:"balance"`
Performance1d int64 `db:"performance1d"`
Performance7d int64 `db:"performance7d"`
Performance31d int64 `db:"performance31d"`
Performance365d int64 `db:"performance365d"`
Rank7d int64 `db:"rank7d"`
TotalCount uint64 `db:"total_count"`
}
ValidatorPerformance is a struct for the validator performance data
type ValidatorProposal ¶
type ValidatorQueue ¶
ValidatorQueue is a struct to hold validator queue data
type ValidatorRank ¶
type ValidatorRank struct {
Rank int64 `db:"rank" json:"rank"`
}
ValidatorRank is a struct for validator rank data
type ValidatorSlashing ¶
type ValidatorSlashing struct {
Epoch uint64 `db:"epoch" json:"epoch,omitempty"`
Slot uint64 `db:"slot" json:"slot,omitempty"`
Proposer uint64 `db:"proposer" json:"proposer,omitempty"`
SlashedValidator *uint64 `db:"slashedvalidator" json:"slashed_validator,omitempty"`
Attestestation1Indices pq.Int64Array `db:"attestation1_indices" json:"attestation1_indices,omitempty"`
Attestestation2Indices pq.Int64Array `db:"attestation2_indices" json:"attestation2_indices,omitempty"`
Type string `db:"type" json:"type"`
}
type ValidatorStatsTablePageData ¶
type ValidatorStatsTablePageData struct {
ValidatorIndex uint64
Rows []*ValidatorStatsTableRow
Currency string
}
type ValidatorStatsTableRow ¶
type ValidatorStatsTableRow struct {
ValidatorIndex uint64
Day int64 `db:"day"`
StartBalance sql.NullInt64 `db:"start_balance"`
EndBalance sql.NullInt64 `db:"end_balance"`
Income int64 `db:"cl_rewards_gwei"`
IncomeExchangeRate float64 `db:"-"`
IncomeExchangeCurrency string `db:"-"`
IncomeExchanged float64 `db:"-"`
MinBalance sql.NullInt64 `db:"min_balance"`
MaxBalance sql.NullInt64 `db:"max_balance"`
StartEffectiveBalance sql.NullInt64 `db:"start_effective_balance"`
EndEffectiveBalance sql.NullInt64 `db:"end_effective_balance"`
MinEffectiveBalance sql.NullInt64 `db:"min_effective_balance"`
MaxEffectiveBalance sql.NullInt64 `db:"max_effective_balance"`
MissedAttestations sql.NullInt64 `db:"missed_attestations"`
OrphanedAttestations sql.NullInt64 `db:"orphaned_attestations"`
ProposedBlocks sql.NullInt64 `db:"proposed_blocks"`
MissedBlocks sql.NullInt64 `db:"missed_blocks"`
OrphanedBlocks sql.NullInt64 `db:"orphaned_blocks"`
AttesterSlashings sql.NullInt64 `db:"attester_slashings"`
ProposerSlashings sql.NullInt64 `db:"proposer_slashings"`
Deposits sql.NullInt64 `db:"deposits"`
DepositsAmount sql.NullInt64 `db:"deposits_amount"`
ParticipatedSync sql.NullInt64 `db:"participated_sync"`
MissedSync sql.NullInt64 `db:"missed_sync"`
OrphanedSync sql.NullInt64 `db:"orphaned_sync"`
}
type ValidatorSyncParticipation ¶
type ValidatorSyncParticipation struct {
Period uint64 `db:"period"`
Slot uint64 `db:"slot"`
Status uint64 `db:"status"`
}
ValidatorSyncParticipation hold information about sync-participation of a validator
type ValidatorWithdrawal ¶
type ValidatorsBLSChange ¶
type ValidatorsBLSChange struct {
Slot uint64 `db:"slot" json:"slot,omitempty"`
BlockRoot []byte `db:"block_root" json:"blockroot,omitempty"`
Validatorindex uint64 `db:"validatorindex" json:"validatorindex,omitempty"`
BlsPubkey []byte `db:"pubkey" json:"pubkey,omitempty"`
Address []byte `db:"address" json:"address,omitempty"`
Signature []byte `db:"signature" json:"signature,omitempty"`
WithdrawalCredentialsOld []byte `db:"withdrawalcredentials" json:"withdrawalcredentials,omitempty"`
}
type ValidatorsPageData ¶
type ValidatorsPageData struct {
TotalCount uint64
DepositedCount uint64
PendingCount uint64
ActiveCount uint64
ActiveOnlineCount uint64
ActiveOfflineCount uint64
SlashingCount uint64
SlashingOnlineCount uint64
SlashingOfflineCount uint64
Slashed uint64
ExitingCount uint64
ExitingOnlineCount uint64
ExitingOfflineCount uint64
ExitedCount uint64
VoluntaryExitsCount uint64
UnknownCount uint64
Validators []*ValidatorsPageDataValidators
CappellaHasHappened bool
}
ValidatorsPageData is a struct to hold data about the validators page
type ValidatorsPageDataValidators ¶
type ValidatorsPageDataValidators struct {
TotalCount uint64 `db:"total_count"`
Epoch uint64 `db:"epoch"`
PublicKey []byte `db:"pubkey"`
ValidatorIndex uint64 `db:"validatorindex"`
WithdrawableEpoch uint64 `db:"withdrawableepoch"`
CurrentBalance uint64 `db:"balance"`
EffectiveBalance uint64 `db:"effectivebalance"`
Slashed bool `db:"slashed"`
ActivationEligibilityEpoch uint64 `db:"activationeligibilityepoch"`
ActivationEpoch uint64 `db:"activationepoch"`
ExitEpoch uint64 `db:"exitepoch"`
LastAttestationSlot *int64 `db:"lastattestationslot"`
Name string `db:"name"`
State string `db:"state"`
MissedProposals uint64 `db:"missedproposals"`
ExecutedProposals uint64 `db:"executedproposals"`
MissedAttestations uint64 `db:"missedattestations"`
ExecutedAttestations uint64 `db:"executedattestations"`
Performance7d int64 `db:"performance7d"`
}
ValidatorsPageDataValidators is a struct to hold data about validators for the validators page
type VisChartData ¶
type VisChartData struct {
Slot uint64 `db:"slot" json:"-"`
BlockRoot []byte `db:"blockroot" json:"-"`
ParentRoot []byte `db:"parentroot" json:"-"`
Proposer uint64 `db:"proposer" json:"proposer"`
Number uint64 `json:"number"`
Timestamp uint64 `json:"timestamp"`
Hash string `json:"hash"`
Parents []string `json:"parents"`
Difficulty uint64 `json:"difficulty"`
}
VisChartData is a struct to hold the visualizations chart data
type VisPageData ¶
type VisPageData struct {
ChartData []*VisChartData
StartEpoch uint64
EndEpoch uint64
}
VisPageData is a struct to hold the visualizations page data
type VisVotesPageData ¶
type VisVotesPageData struct {
ChartData []*VotesVisChartData
}
VisVotesPageData is a struct for the visualization votes page data
type VoluntaryExit ¶
VoluntaryExit is a struct to hold voluntary exit data
type VotesVisChartData ¶
type VotesVisChartData struct {
Slot uint64 `db:"slot" json:"slot"`
BlockRoot string `db:"blockroot" json:"blockRoot"`
ParentRoot string `db:"parentroot" json:"parentRoot"`
Validators pq.Int64Array `db:"validators" json:"validators"`
}
VotesVisChartData is a struct for the visualization chart data
type WebhookEvent ¶
type WebhookPageData ¶
type WebhookPageData struct {
WebhookRows []UserWebhookRow
Webhooks []UserWebhook
Events []EventNameCheckbox
CsrfField template.HTML
Allowed uint64
WebhookCount uint64
Flashes []interface{}
}
type WidgetResponse ¶
type WithdrawalStats ¶
type Withdrawals ¶
type WithdrawalsByEpoch ¶
type WithdrawalsNotification ¶
type WithdrawalsPageData ¶
type WithdrawalsPageData struct {
Stats *Stats
WithdrawalChart *ChartsPageDataChart
Withdrawals *DataTableResponse
BlsChanges *DataTableResponse
}