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  }