// SPDX-FileCopyrightText: Amolith <amolith@secluded.site>
//
// SPDX-License-Identifier: AGPL-3.0-or-later

package cmd

import (
	"git.secluded.site/lune/cmd/task"
	"github.com/spf13/cobra"
)

var doneCmd = &cobra.Command{
	Use:     "done ID",
	Short:   "Mark a task completed",
	GroupID: "shortcuts",
	Args:    cobra.ExactArgs(1),
	RunE: func(cmd *cobra.Command, args []string) error {
		updateCmd := *task.UpdateCmd
		updateCmd.Flags().AddFlagSet(task.UpdateCmd.Flags())
		_ = updateCmd.Flags().Set("status", "completed")

		updateCmd.SetContext(cmd.Context())
		updateCmd.SetIn(cmd.InOrStdin())
		updateCmd.SetOut(cmd.OutOrStdout())
		updateCmd.SetErr(cmd.ErrOrStderr())

		return updateCmd.RunE(&updateCmd, args)
	},
}
