MCPcopy Index your code
hub / github.com/cli/cli / updateDraftIssue

Function updateDraftIssue

pkg/cmd/project/item-edit/item_edit.go:286–313  ·  view source on GitHub ↗
(config editItemConfig)

Source from the content-addressed store, hash-verified

284}
285
286func updateDraftIssue(config editItemConfig) error {
287 if !strings.HasPrefix(config.opts.itemID, "DI_") {
288 return cmdutil.FlagErrorf("ID must be the ID of the draft issue content which is prefixed with `DI_`")
289 }
290
291 // Fetch current draft issue to preserve fields that aren't being updated
292 var currentDraftIssue *queries.DraftIssue
293 var err error
294 if !config.opts.titleChanged || !config.opts.bodyChanged {
295 currentDraftIssue, err = fetchDraftIssueByID(config, config.opts.itemID)
296 if err != nil {
297 return err
298 }
299 }
300
301 query, variables := buildEditDraftIssue(config, currentDraftIssue)
302
303 err = config.client.Mutate("EditDraftIssueItem", query, variables)
304 if err != nil {
305 return err
306 }
307
308 if config.opts.exporter != nil {
309 return config.opts.exporter.Write(config.io, query.UpdateProjectV2DraftIssue.DraftIssue)
310 }
311
312 return printDraftIssueResults(config, query.UpdateProjectV2DraftIssue.DraftIssue)
313}
314
315func updateItemValues(config editItemConfig) error {
316 if err := fieldIdAndProjectIdPresence(config); err != nil {

Callers 1

runEditItemFunction · 0.85

Calls 6

FlagErrorfFunction · 0.92
fetchDraftIssueByIDFunction · 0.85
buildEditDraftIssueFunction · 0.85
printDraftIssueResultsFunction · 0.85
MutateMethod · 0.65
WriteMethod · 0.65

Tested by

no test coverage detected