mirror of
https://github.com/0glabs/0g-chain.git
synced 2024-12-27 16:55:21 +00:00
e2f515ba9e
* query auction by lot owner * add SavingsRateDistributed to store * v2cdps: filtered cdps query * update v2cdps cli examples * add savings rate dist counter to begin blocker * implement savings rate dist cli query * implement cdp REST queries * minor auction CLI/REST updates * fix auction querier bug * update REST endpoint to 'cdps' * update to savings-rate-dist * update SavingsRateDistributed get/set * update tests * fix savings rate dist rounding errors * 'collateralDenom' -> 'collateralType' * refactor 'v2cdps' -> 'cdps', add ratio param * fix augmented CDP type, msg string() method * fix cdp querier test * filter query results efficiently * querier tests * limit type iteration if owner defined * improve savings rate dist genesis validation * default sdk.Dec{} to sdk.ZeroDec in queries * update condition logic for finding intersection * fix cdp querier filtering * Update kava-4 swagger (#653) * add collateral_type, update cdp params * savings rate, auctions, get cdps * drop owner from AuctionResponse * remove duplicate collateral denom * update query paths with {collateral-type}
68 lines
2.5 KiB
Go
68 lines
2.5 KiB
Go
package rest
|
|
|
|
import (
|
|
"github.com/gorilla/mux"
|
|
|
|
"github.com/cosmos/cosmos-sdk/client/context"
|
|
sdk "github.com/cosmos/cosmos-sdk/types"
|
|
"github.com/cosmos/cosmos-sdk/types/rest"
|
|
)
|
|
|
|
// REST Variable names
|
|
// nolint
|
|
const (
|
|
RestOwner = "owner"
|
|
RestCollateralType = "collateral-type"
|
|
RestID = "id"
|
|
RestRatio = "ratio"
|
|
)
|
|
|
|
// RegisterRoutes - Central function to define routes that get registered by the main application
|
|
func RegisterRoutes(cliCtx context.CLIContext, r *mux.Router) {
|
|
registerQueryRoutes(cliCtx, r)
|
|
registerTxRoutes(cliCtx, r)
|
|
}
|
|
|
|
// PostCdpReq defines the properties of cdp request's body.
|
|
type PostCdpReq struct {
|
|
BaseReq rest.BaseReq `json:"base_req" yaml:"base_req"`
|
|
Sender sdk.AccAddress `json:"sender" yaml:"sender"`
|
|
Collateral sdk.Coin `json:"collateral" yaml:"collateral"`
|
|
CollateralType string `json:"collateral_type" yaml:"collateral_type"`
|
|
Principal sdk.Coin `json:"principal" yaml:"principal"`
|
|
}
|
|
|
|
// PostDepositReq defines the properties of cdp request's body.
|
|
type PostDepositReq struct {
|
|
BaseReq rest.BaseReq `json:"base_req" yaml:"base_req"`
|
|
Owner sdk.AccAddress `json:"owner" yaml:"owner"`
|
|
Depositor sdk.AccAddress `json:"depositor" yaml:"depositor"`
|
|
Collateral sdk.Coin `json:"collateral" yaml:"collateral"`
|
|
CollateralType string `json:"collateral_type" yaml:"collateral_type"`
|
|
}
|
|
|
|
// PostWithdrawalReq defines the properties of cdp request's body.
|
|
type PostWithdrawalReq struct {
|
|
BaseReq rest.BaseReq `json:"base_req" yaml:"base_req"`
|
|
Owner sdk.AccAddress `json:"owner" yaml:"owner"`
|
|
Depositor sdk.AccAddress `json:"depositor" yaml:"depositor"`
|
|
Collateral sdk.Coin `json:"collateral" yaml:"collateral"`
|
|
CollateralType string `json:"collateral_type" yaml:"collateral_type"`
|
|
}
|
|
|
|
// PostDrawReq defines the properties of cdp request's body.
|
|
type PostDrawReq struct {
|
|
BaseReq rest.BaseReq `json:"base_req" yaml:"base_req"`
|
|
Owner sdk.AccAddress `json:"owner" yaml:"owner"`
|
|
CollateralType string `json:"collateral_type" yaml:"collateral_type"`
|
|
Principal sdk.Coin `json:"principal" yaml:"principal"`
|
|
}
|
|
|
|
// PostRepayReq defines the properties of cdp request's body.
|
|
type PostRepayReq struct {
|
|
BaseReq rest.BaseReq `json:"base_req" yaml:"base_req"`
|
|
Owner sdk.AccAddress `json:"owner" yaml:"owner"`
|
|
CollateralType string `json:"collateral_type" yaml:"collateral_type"`
|
|
Payment sdk.Coin `json:"payment" yaml:"payment"`
|
|
}
|