refactor(completion): name path arguments explicitly and share firstArg

The six commands that take a file or directory argument set their
completer directly instead of a Use-line parser wrapping every
command, the first-argument-only wrappers become one firstArg helper,
and only the bash completion help keeps a custom text.

Signed-off-by: bircni <bircni@icloud.com>
This commit is contained in:
bircni committed 2026-10-12 10:50:37 +02:00
1 parent 1f4b5f868f
commit 9ac5b79e9e
22 files changed
+75 -212

No files matched your search

+2 -2
View File
@@ -50,7 +50,7 @@ $ tea run artifact list 34`,
},
}
pageFlags(list, &limit, &page)
list.ValidArgsFunction = a.completeRunArg()
list.ValidArgsFunction = firstArg(a.completeRuns())
group.AddCommand(list)
return group
@@ -148,7 +148,7 @@ $ tea run download 34 --zip`,
destination.register(cmd)
cmd.Flags().StringSliceVarP(&names, "name", "n", nil, "Only download the artifacts with these names")
cmd.Flags().BoolVar(&asZip, "zip", false, "Save each artifact as a ZIP archive instead of extracting it")
cmd.ValidArgsFunction = a.completeRunArg()
cmd.ValidArgsFunction = firstArg(a.completeRuns())
_ = cmd.RegisterFlagCompletionFunc("name", commaSeparated(a.completeArtifactNames()))
return cmd
}