github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/libs/cosmos-sdk/x/mint/client/utils/utils.go (about) 1 package utils 2 3 import ( 4 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec" 5 sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types" 6 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/mint/internal/types" 7 "io/ioutil" 8 ) 9 10 // ManageTreasuresProposalJSON defines a ManageTreasureProposal with a deposit used to parse 11 // manage treasures proposals from a JSON file. 12 type ManageTreasuresProposalJSON struct { 13 Title string `json:"title" yaml:"title"` 14 Description string `json:"description" yaml:"description"` 15 Treasures []types.Treasure `json:"treasures" yaml:"treasures"` 16 IsAdded bool `json:"is_added" yaml:"is_added"` 17 Deposit sdk.SysCoins `json:"deposit" yaml:"deposit"` 18 } 19 20 // ParseManageTreasuresProposalJSON parses json from proposal file to ManageTreasuresProposalJSON struct 21 func ParseManageTreasuresProposalJSON(cdc *codec.Codec, proposalFilePath string) ( 22 proposal ManageTreasuresProposalJSON, err error) { 23 contents, err := ioutil.ReadFile(proposalFilePath) 24 if err != nil { 25 return 26 } 27 28 cdc.MustUnmarshalJSON(contents, &proposal) 29 return 30 } 31 32 // ModifyNextBlockUpdateProposalJSON defines a ModifyNextBlockUpdateProposal with a deposit used to parse 33 // manage treasures proposals from a JSON file. 34 type ModifyNextBlockUpdateProposalJSON struct { 35 Title string `json:"title" yaml:"title"` 36 Description string `json:"description" yaml:"description"` 37 Deposit sdk.SysCoins `json:"deposit" yaml:"deposit"` 38 BlockNum uint64 `json:"block_num" yaml:"block_num"` 39 } 40 41 // ParseModifyNextBlockUpdateProposalJSON parses json from proposal file to ModifyNextBlockUpdateProposalJSON struct 42 func ParseModifyNextBlockUpdateProposalJSON(cdc *codec.Codec, proposalFilePath string) ( 43 proposal ModifyNextBlockUpdateProposalJSON, err error) { 44 contents, err := ioutil.ReadFile(proposalFilePath) 45 if err != nil { 46 return 47 } 48 49 cdc.MustUnmarshalJSON(contents, &proposal) 50 return 51 }