github.com/Finschia/finschia-sdk@v0.48.1/x/staking/client/cli/flags.go (about) 1 package cli 2 3 import ( 4 flag "github.com/spf13/pflag" 5 6 "github.com/Finschia/finschia-sdk/x/staking/types" 7 ) 8 9 const ( 10 FlagAddressValidator = "validator" 11 FlagAddressValidatorSrc = "addr-validator-source" 12 FlagAddressValidatorDst = "addr-validator-dest" 13 FlagPubKey = "pubkey" 14 FlagAmount = "amount" 15 FlagSharesAmount = "shares-amount" 16 FlagSharesFraction = "shares-fraction" 17 18 FlagMoniker = "moniker" 19 FlagEditMoniker = "new-moniker" 20 FlagIdentity = "identity" 21 FlagWebsite = "website" 22 FlagSecurityContact = "security-contact" 23 FlagDetails = "details" 24 25 FlagCommissionRate = "commission-rate" 26 FlagCommissionMaxRate = "commission-max-rate" 27 FlagCommissionMaxChangeRate = "commission-max-change-rate" 28 29 FlagMinSelfDelegation = "min-self-delegation" 30 31 FlagGenesisFormat = "genesis-format" 32 FlagNodeID = "node-id" 33 FlagIP = "ip" 34 ) 35 36 // common flagsets to add to various functions 37 var ( 38 fsShares = flag.NewFlagSet("", flag.ContinueOnError) 39 fsValidator = flag.NewFlagSet("", flag.ContinueOnError) 40 fsRedelegation = flag.NewFlagSet("", flag.ContinueOnError) 41 ) 42 43 func init() { 44 fsShares.String(FlagSharesAmount, "", "Amount of source-shares to either unbond or redelegate as a positive integer or decimal") 45 fsShares.String(FlagSharesFraction, "", "Fraction of source-shares to either unbond or redelegate as a positive integer or decimal >0 and <=1") 46 fsValidator.String(FlagAddressValidator, "", "The Bech32 address of the validator") 47 fsRedelegation.String(FlagAddressValidatorSrc, "", "The Bech32 address of the source validator") 48 fsRedelegation.String(FlagAddressValidatorDst, "", "The Bech32 address of the destination validator") 49 } 50 51 // FlagSetCommissionCreate Returns the FlagSet used for commission create. 52 func FlagSetCommissionCreate() *flag.FlagSet { 53 fs := flag.NewFlagSet("", flag.ContinueOnError) 54 55 fs.String(FlagCommissionRate, "", "The initial commission rate percentage") 56 fs.String(FlagCommissionMaxRate, "", "The maximum commission rate percentage") 57 fs.String(FlagCommissionMaxChangeRate, "", "The maximum commission change rate percentage (per day)") 58 59 return fs 60 } 61 62 // FlagSetMinSelfDelegation Returns the FlagSet used for minimum set delegation. 63 func FlagSetMinSelfDelegation() *flag.FlagSet { 64 fs := flag.NewFlagSet("", flag.ContinueOnError) 65 fs.String(FlagMinSelfDelegation, "", "The minimum self delegation required on the validator") 66 return fs 67 } 68 69 // FlagSetAmount Returns the FlagSet for amount related operations. 70 func FlagSetAmount() *flag.FlagSet { 71 fs := flag.NewFlagSet("", flag.ContinueOnError) 72 fs.String(FlagAmount, "", "Amount of coins to bond") 73 return fs 74 } 75 76 // FlagSetPublicKey Returns the flagset for Public Key related operations. 77 func FlagSetPublicKey() *flag.FlagSet { 78 fs := flag.NewFlagSet("", flag.ContinueOnError) 79 fs.String(FlagPubKey, "", "The validator's Protobuf JSON encoded public key") 80 return fs 81 } 82 83 func flagSetDescriptionEdit() *flag.FlagSet { 84 fs := flag.NewFlagSet("", flag.ContinueOnError) 85 86 fs.String(FlagEditMoniker, types.DoNotModifyDesc, "The validator's name") 87 fs.String(FlagIdentity, types.DoNotModifyDesc, "The (optional) identity signature (ex. UPort or Keybase)") 88 fs.String(FlagWebsite, types.DoNotModifyDesc, "The validator's (optional) website") 89 fs.String(FlagSecurityContact, types.DoNotModifyDesc, "The validator's (optional) security contact email") 90 fs.String(FlagDetails, types.DoNotModifyDesc, "The validator's (optional) details") 91 92 return fs 93 } 94 95 func flagSetCommissionUpdate() *flag.FlagSet { 96 fs := flag.NewFlagSet("", flag.ContinueOnError) 97 98 fs.String(FlagCommissionRate, "", "The new commission rate percentage") 99 100 return fs 101 } 102 103 func flagSetDescriptionCreate() *flag.FlagSet { 104 fs := flag.NewFlagSet("", flag.ContinueOnError) 105 106 fs.String(FlagMoniker, "", "The validator's name") 107 fs.String(FlagIdentity, "", "The optional identity signature (ex. UPort or Keybase)") 108 fs.String(FlagWebsite, "", "The validator's (optional) website") 109 fs.String(FlagSecurityContact, "", "The validator's (optional) security contact email") 110 fs.String(FlagDetails, "", "The validator's (optional) details") 111 112 return fs 113 }