Package Logo
injective_common
injective-common@v0.2.2
Total Downloads
3212
Published
6 months ago
Network
injective-mainnet injective-mainnet
Publisher
User Avatar streamingfast

Readme

common Injective substreams modules to extract events and transactions with indexing

Use one of those optimized modules with a query string as a parameter:

  • filtered_events
  • filtered_event_groups
  • filtered_trx_by_events

The query string will be used for the blockfilter as well as the actual filtering of the events/transactions

The following modules are also available for more specific filtering, but they do not use an index by default:

  • filtered_events_by_attribute_value
  • filtered_event_groups_by_attribute_value
  • filtered_trx_by_events_attribute_value

They should be overriden by setting the blockFilter.Query.String parameter to a query that matches the event type and attribute keys only. See derived-substreams-example.yaml for an example (https://github.com/streamingfast/substreams-foundational-modules/injective-common)

Documentation

Modules

Maps icon
Maps

map
all_transactions

9303d9f0191654ffbc7aa215b26f2fdb65df47d4
map all_transactions (
blocksf.cosmos.type.v2.Block
)  -> sf.substreams.cosmos.v1.TransactionList

all_transactions reads from the sf.cosmos.type.v2.Block source and outputs a list of all transactions in the block. Some known message types will be converted to the correct protobuf type, unknown ones will stay as Any type.

substreams gui injective-common@v0.2.2 all_transactions

map
all_events

1af570129fa17dce4aaf54973d863f47b83b8319

all_events reads from the sf.cosmos.type.v2.Block source and outputs a list of all events in the block. Some events are at the block level, others appear inside the transactions.

substreams gui injective-common@v0.2.2 all_events

map
filtered_events

6c5b55957b5400fbae3660a7e69a3f151d0f6c36
Default param : (type:message && attr:action) || (type:wasm && attr:_contract_address)

filtered_events reads from all_events and applies a filter on the event types and attribute keys, only outputing the events that match the filter. Example usage: (type:message && attr:action) || (type:wasm && attr:_contract_address)

substreams gui injective-common@v0.2.2 filtered_events

map
filtered_event_groups

3300caefc92ac0043d3ebd07ee9c0dc3d897d87c
Default param : type:wasm && attr:_contract_address

filtered_event_groups reads from all_events and applies a filter on the event types and attribute keys, outputing all the events from transactions that have at least one event matching the filter. Example usage: type:injective.peggy.v1.EventDepositClaim || (type:wasm && attr:_contract_address)

substreams gui injective-common@v0.2.2 filtered_event_groups

map
filtered_trx_by_events

a63f7caf5812780f70b7945544487ce8857db60f
Default param : type:wasm

filtered_trx_by_events reads from all_transactions and applies a filter on the event types and attribute keys, outputing the complete transactions that have at least one event matching the filter. Example usage: type:injective.peggy.v1.EventDepositClaim || (type:wasm && attr:_contract_address)

substreams gui injective-common@v0.2.2 filtered_trx_by_events

map
filtered_events_by_attribute_value

a28041a4b41f3afa170e171c93d57680d844330b
map filtered_events_by_attribute_value (
paramsstring
)  -> sf.substreams.cosmos.v1.EventList
Default param : type:wasm && attr:_contract_address:inj1v77y5ttah96dc9qkcpc88ad7rce8n88e99t3m5

filtered_events_by_attribute_value reads from all_events and applies a filter on the event types, attribute keys and values, only outputing the events that match the filter. Example usage: "type:wasm && attr:_contract_address:inj1v77y5ttah96dc9qkcpc88ad7rce8n88e99t3m5"

To use this module with an index, import it and override it with the use: parameter, setting blockFilter.Query.String to a query that matches the event type and attribute keys only (ex: type:wasm && attr:_contract_address)

substreams gui injective-common@v0.2.2 filtered_events_by_attribute_value

map
filtered_event_groups_by_attribute_value

5b71a3933dcad0b83c7679079d2ad7f51b101404
map filtered_event_groups_by_attribute_value (
paramsstring
)  -> sf.substreams.cosmos.v1.EventList
Default param : type:wasm && attr:_contract_address:inj1v77y5ttah96dc9qkcpc88ad7rce8n88e99t3m5

filtered_events_groups_by_attribute_value reads from all_events and applies a filter on the event types, attribute keys and values, outputing all the events from transactions that have at least one event matching the filter. Example usage: "type:wasm && attr:_contract_address:inj1v77y5ttah96dc9qkcpc88ad7rce8n88e99t3m5"

To use this module with an index, import it and override it with the use: parameter, setting blockFilter.Query.String to a query that matches the event type and attribute keys only (ex: type:wasm && attr:_contract_address)

substreams gui injective-common@v0.2.2 filtered_event_groups_by_attribute_value

map
filtered_trx_by_events_attribute_value

03dac8df452a53729e2b31a06e3f8103dbf50600
Default param : type:wasm && attr:_contract_address:inj1v77y5ttah96dc9qkcpc88ad7rce8n88e99t3m5

filtered_trx_by_events_attribute_value reads from all_events and applies a filter on the event types, attribute keys and values, outputing the complete transactions that have at least one event matching the filter. Example usage: "type:wasm && attr:_contract_address:inj1v77y5ttah96dc9qkcpc88ad7rce8n88e99t3m5"

To use this module with an index, import it and override it with the use: parameter, setting blockFilter.Query.String to a query that matches the event type and attribute keys only (ex: type:wasm && attr:_contract_address)

substreams gui injective-common@v0.2.2 filtered_trx_by_events_attribute_value
Block Indexes icon
Block Indexes

blockIndex
index_events

7b84966264ce3e658c894e34777c841e982db57b

index_events sets the keys corresponding to all event 'types' and 'attribute keys' in the block ex: type:coin_received, type:injective.peggy.v1.EventDepositClaim, attr:action, attr:sender ... The attribute values are never indexed because they have a high cardinality and would be too expensive to index.

substreams gui injective-common@v0.2.2 index_events
Protobuf

Protobuf Docs Explorer

cosmos.base.v1beta1
injective.crypto.v1beta1.ethsecp256k1
cosmos.crypto.multisig.v1beta1
cosmos.crisis.v1beta1
cosmos.evidence.v1beta1
amino
ibc.core.channel.v1
cosmos.slashing.v1beta1
injective.wasmx.v1
sf.cosmos.type.v2
cosmos.tx.signing.v1beta1
cosmos_proto
cosmos.tx.v1beta1
cosmos.authz.v1beta1
cosmos.upgrade.v1beta1
cosmos.msg.v1
injective.oracle.v1beta1
cosmwasm.wasm.v1
injective.auction.v1beta1
injective.exchange.v1beta1
ibc.core.client.v1
injective.peggy.v1
cosmos.gov.v1beta1
cosmos.bank.v1beta1
gogoproto
cosmos.distribution.v1beta1