mirror of
				https://github.com/0glabs/0g-chain.git
				synced 2025-04-04 15:55:23 +00:00 
			
		
		
		
	 d500cd1236
			
		
	
	
		d500cd1236
		
			
		
	
	
	
	
		
			
			* add QueryDeployedCosmosCoinContracts proto * also implement protobuf marshaler for InternalEVMAddress * setup iteration & collection for deployed addrs * rewrite grpc query tests * support querying for all deployed contracts * support querying by cosmos denom * fix & test pagination * remove unused iteration methods * add CLI query command * update changelog * update spec * add InternalEVMAddress.MarshalJSON test
		
			
				
	
	
		
			60 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
| syntax = "proto3";
 | |
| package kava.evmutil.v1beta1;
 | |
| 
 | |
| import "cosmos/base/query/v1beta1/pagination.proto";
 | |
| import "gogoproto/gogo.proto";
 | |
| import "google/api/annotations.proto";
 | |
| import "kava/evmutil/v1beta1/genesis.proto";
 | |
| 
 | |
| option go_package = "github.com/kava-labs/kava/x/evmutil/types";
 | |
| 
 | |
| // Query defines the gRPC querier service for evmutil module
 | |
| service Query {
 | |
|   // Params queries all parameters of the evmutil module.
 | |
|   rpc Params(QueryParamsRequest) returns (QueryParamsResponse) {
 | |
|     option (google.api.http).get = "/kava/evmutil/v1beta1/params";
 | |
|   }
 | |
| 
 | |
|   // DeployedCosmosCoinContracts queries a list cosmos coin denom and their deployed erc20 address
 | |
|   rpc DeployedCosmosCoinContracts(QueryDeployedCosmosCoinContractsRequest) returns (QueryDeployedCosmosCoinContractsResponse) {
 | |
|     option (google.api.http).get = "/kava/evmutil/v1beta1/deployed_cosmos_coin_contracts";
 | |
|   }
 | |
| }
 | |
| 
 | |
| // QueryParamsRequest defines the request type for querying x/evmutil parameters.
 | |
| message QueryParamsRequest {}
 | |
| 
 | |
| // QueryParamsResponse defines the response type for querying x/evmutil parameters.
 | |
| message QueryParamsResponse {
 | |
|   Params params = 1 [(gogoproto.nullable) = false];
 | |
| }
 | |
| 
 | |
| // QueryDeployedCosmosCoinContractsRequest defines the request type for Query/DeployedCosmosCoinContracts method.
 | |
| message QueryDeployedCosmosCoinContractsRequest {
 | |
|   option (gogoproto.equal) = false;
 | |
|   option (gogoproto.goproto_getters) = false;
 | |
| 
 | |
|   // optional query param to only return specific denoms in the list
 | |
|   // denoms that do not have deployed contracts will be omitted from the result
 | |
|   // must request fewer than 100 denoms at a time.
 | |
|   repeated string cosmos_denoms = 1;
 | |
| 
 | |
|   // pagination defines an optional pagination for the request.
 | |
|   cosmos.base.query.v1beta1.PageRequest pagination = 2;
 | |
| }
 | |
| 
 | |
| // QueryDeployedCosmosCoinContractsResponse defines the response type for the Query/DeployedCosmosCoinContracts method.
 | |
| message QueryDeployedCosmosCoinContractsResponse {
 | |
|   // deployed_cosmos_coin_contracts is a list of cosmos-sdk coin denom and its deployed contract address
 | |
|   repeated DeployedCosmosCoinContract deployed_cosmos_coin_contracts = 1 [(gogoproto.nullable) = false];
 | |
| 
 | |
|   // pagination defines the pagination in the response.
 | |
|   cosmos.base.query.v1beta1.PageResponse pagination = 2;
 | |
| }
 | |
| 
 | |
| // DeployedCosmosCoinContract defines a deployed token contract to the evm representing a native cosmos-sdk coin
 | |
| message DeployedCosmosCoinContract {
 | |
|   string cosmos_denom = 1;
 | |
|   string address = 2 [(gogoproto.customtype) = "InternalEVMAddress"];
 | |
| }
 |