package cli

import (
	"github.com/urfave/cli/v2"
)

const emptyArgsUsage = " " // Removes "[arguments]" from help. Empty str's are ignored

// Flags

var Status bool
var StatusFlag = &cli.BoolFlag{
	Name:        "status",
	Value:       false,
	Destination: &Status,
}

var Domain string
var DomainFlag = &cli.StringFlag{
	Name:        "domain",
	Value:       "",
	Destination: &Domain,
}

var Server string
var ServerFlag = &cli.StringFlag{
	Name:        "server",
	Value:       "",
	Destination: &Server,
}

var AppName string
var AppNameFlag = &cli.StringFlag{
	Name:        "app-name",
	Value:       "",
	Destination: &AppName,
}

var Secrets bool
var SecretsFlag = &cli.BoolFlag{
	Name:        "secrets",
	Value:       false,
	Destination: &Secrets,
}

var Pass bool
var PassFlag = &cli.BoolFlag{
	Name:        "pass",
	Value:       false,
	Destination: &Pass,
}

var Force bool
var ForceFlag = &cli.BoolFlag{
	Name:        "force",
	Value:       false,
	Destination: &Force,
}

var Update bool
var UpdateFlag = &cli.BoolFlag{
	Name:        "update",
	Value:       false,
	Destination: &Update,
}

var NoDomainPoll bool
var NoDomainPollFlag = &cli.BoolFlag{
	Name:        "no-domain-poll",
	Value:       false,
	Destination: &NoDomainPoll,
}

var SkipVersionCheck bool
var SkipVersionCheckFlag = &cli.BoolFlag{
	Name:        "skip-version-check",
	Value:       false,
	Destination: &SkipVersionCheck,
}

var Volumes bool
var VolumesFlag = &cli.BoolFlag{
	Name:        "volumes",
	Value:       false,
	Destination: &Volumes,
}

var All bool
var AllFlag = &cli.BoolFlag{
	Name:        "all",
	Value:       false,
	Destination: &All,
}

var NoTTY bool
var NoTTYFlag = &cli.BoolFlag{
	Name:        "no-tty",
	Value:       false,
	Destination: &NoTTY,
}

var User string
var UserFlag = &cli.StringFlag{
	Name:        "user",
	Value:       "",
	Destination: &User,
}

var Env string
var EnvFlag = &cli.PathFlag{
	Name:        "env",
	Aliases:     []string{"e"},
	Value:       "",
	Destination: &Env,
}

var Verbose bool
var VerboseFlag = &cli.BoolFlag{
	Name:        "verbose",
	Aliases:     []string{"V"},
	Value:       false,
	Destination: &Verbose,
}

var Debug bool
var DebugFlag = &cli.BoolFlag{
	Name:        "debug",
	Aliases:     []string{"d"},
	Value:       false,
	Destination: &Debug,
}

var NoPrompt bool
var NoPromptFlag = &cli.BoolFlag{
	Name:        "no-prompt",
	Aliases:     []string{"n"},
	Value:       false,
	Destination: &NoPrompt,
}

var Branch string
var BranchFlag = &cli.StringFlag{
	Name:        "branch",
	Aliases:     []string{"b"},
	Value:       "",
	Destination: &Branch,
}

var SkipUpdate bool
var SkipUpdateFlag = &cli.BoolFlag{
	Name:        "skip-update",
	Aliases:     []string{"U"},
	Value:       false,
	Destination: &SkipUpdate,
}

var SkipCheck bool
var SkipCheckFlag = &cli.BoolFlag{
	Name:        "skip-check",
	Aliases:     []string{"C"},
	Value:       false,
	Destination: &SkipCheck,
}

var Stack string
var StackFlag = &cli.StringFlag{
	Name:        "stack",
	Aliases:     []string{"s"},
	Value:       "",
	Destination: &Stack,
}

var Type string
var TypeFlag = &cli.StringFlag{
	Name:        "type",
	Value:       "",
	Destination: &Type,
}