add completionFunc for reducing boilerplate for command implementatinos
This commit is contained in:
@@ -8,6 +8,19 @@ import (
|
|||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
typeOptions = []string{"bug", "feature", "task"}
|
||||||
|
statusOptions = []string{"open", "closed", "in_progress"}
|
||||||
|
priorityRange = []string{"0", "1", "2", "3", "4"}
|
||||||
|
)
|
||||||
|
|
||||||
|
// completionFunc returns a function that provides shell completion for the given options.
|
||||||
|
func completionFunc(options []string) func(*cobra.Command, []string, string) ([]string, cobra.ShellCompDirective) {
|
||||||
|
return func(_ *cobra.Command, _ []string, _ string) ([]string, cobra.ShellCompDirective) {
|
||||||
|
return options, cobra.ShellCompDirectiveDefault
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// completeIssues provides shell completion for issue IDs and titles.
|
// completeIssues provides shell completion for issue IDs and titles.
|
||||||
func completeIssues(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
|
func completeIssues(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
|
||||||
issues, _ := GetIssueCompletions(cmd.Context(), toComplete)
|
issues, _ := GetIssueCompletions(cmd.Context(), toComplete)
|
||||||
|
|||||||
Reference in New Issue
Block a user