github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/x/feesplit/client/utils/utils.go (about) 1 package utils 2 3 import ( 4 "io/ioutil" 5 6 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec" 7 sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types" 8 "github.com/fibonacci-chain/fbc/x/feesplit/types" 9 ) 10 11 type FeeSplitSharesProposalJSON struct { 12 Title string `json:"title" yaml:"title"` 13 Description string `json:"description" yaml:"description"` 14 Shares []types.Shares `json:"shares" yaml:"shares"` 15 Deposit sdk.SysCoins `json:"deposit" yaml:"deposit"` 16 } 17 18 // ParseFeeSplitSharesProposalJSON reads and parses a FeeSplitSharesProposalJSON from file 19 func ParseFeeSplitSharesProposalJSON(cdc *codec.Codec, proposalFile string) (FeeSplitSharesProposalJSON, error) { 20 var proposal FeeSplitSharesProposalJSON 21 22 contents, err := ioutil.ReadFile(proposalFile) 23 if err != nil { 24 return proposal, err 25 } 26 27 if err := cdc.UnmarshalJSON(contents, &proposal); err != nil { 28 return proposal, err 29 } 30 31 return proposal, nil 32 }