@@ -12,6 +12,14 @@ import (
1212 "github.com/spf13/cobra"
1313)
1414
15+ var constantsStates = []wrappers.CustomState {
16+ {ID : - 1 , Name : "To Verify" , Type : "" },
17+ {ID : - 1 , Name : "Not Exploitable" , Type : "" },
18+ {ID : - 1 , Name : "Proposed Not Exploitable" , Type : "" },
19+ {ID : - 1 , Name : "Confirmed" , Type : "" },
20+ {ID : - 1 , Name : "Urgent" , Type : "" },
21+ }
22+
1523func NewResultsPredicatesCommand (resultsPredicatesWrapper wrappers.ResultsPredicatesWrapper , featureFlagsWrapper wrappers.FeatureFlagsWrapper , customStatesWrapper wrappers.CustomStatesWrapper ) * cobra.Command {
1624 triageCmd := & cobra.Command {
1725 Use : "triage" ,
@@ -20,7 +28,7 @@ func NewResultsPredicatesCommand(resultsPredicatesWrapper wrappers.ResultsPredic
2028 }
2129 triageShowCmd := triageShowSubCommand (resultsPredicatesWrapper )
2230 triageUpdateCmd := triageUpdateSubCommand (resultsPredicatesWrapper , featureFlagsWrapper )
23- triageGetStatesCmd := triageGetStatesSubCommand (customStatesWrapper )
31+ triageGetStatesCmd := triageGetStatesSubCommand (customStatesWrapper , featureFlagsWrapper )
2432
2533
2634 addFormatFlagToMultipleCommands (
@@ -32,7 +40,7 @@ func NewResultsPredicatesCommand(resultsPredicatesWrapper wrappers.ResultsPredic
3240 return triageCmd
3341}
3442
35- func triageGetStatesSubCommand (customStatesWrapper wrappers.CustomStatesWrapper ) * cobra.Command {
43+ func triageGetStatesSubCommand (customStatesWrapper wrappers.CustomStatesWrapper , featureFlagsWrapper wrappers. FeatureFlagsWrapper ) * cobra.Command {
3644 triageGetStatesCmd := & cobra.Command {
3745 Use : "get-states" ,
3846 Short : "Show the custom states that have been configured in your tenant" ,
@@ -43,21 +51,26 @@ func triageGetStatesSubCommand(customStatesWrapper wrappers.CustomStatesWrapper)
4351 $ cx triage get-states --all
4452 ` ,
4553 ),
46- RunE : runTriageGetStates (customStatesWrapper ),
54+ RunE : runTriageGetStates (customStatesWrapper , featureFlagsWrapper ),
4755 }
4856
4957 triageGetStatesCmd .PersistentFlags ().Bool (params .AllStatesFlag , false , "Show all custom states, including the ones that have been deleted" )
5058
5159 return triageGetStatesCmd
5260}
5361
54- func runTriageGetStates (customStatesWrapper wrappers.CustomStatesWrapper ) func (* cobra.Command , []string ) error {
62+ func runTriageGetStates (customStatesWrapper wrappers.CustomStatesWrapper , featureFlagsWrapper wrappers. FeatureFlagsWrapper ) func (* cobra.Command , []string ) error {
5563 return func (cmd * cobra.Command , _ []string ) error {
64+ flagResponse , _ := wrappers .GetSpecificFeatureFlag (featureFlagsWrapper , wrappers .CustomStatesFeatureFlag )
65+ if ! flagResponse .Status {
66+ return printer .Print (cmd .OutOrStdout (), constantsStates , printer .FormatJSON )
67+ }
5668 includeDeleted , _ := cmd .Flags ().GetBool (params .AllStatesFlag )
5769 states , err := customStatesWrapper .GetAllCustomStates (includeDeleted )
5870 if err != nil {
5971 return errors .Wrap (err , "Failed to fetch custom states" )
6072 }
73+ states = append (states , constantsStates ... )
6174 err = printer .Print (cmd .OutOrStdout (), states , printer .FormatJSON )
6275 return err
6376 }
0 commit comments