github.com/taubyte/tau-cli@v0.1.13-0.20240326000942-487f0d57edfc/cli/commands/current/command.go (about)

     1  package current
     2  
     3  import (
     4  	"github.com/taubyte/tau-cli/env"
     5  	"github.com/taubyte/tau-cli/prompts"
     6  	"github.com/urfave/cli/v2"
     7  )
     8  
     9  var Command = &cli.Command{
    10  	Name:    "current",
    11  	Usage:   "Display current selected values",
    12  	Aliases: []string{"cur", "here", "this"},
    13  	Action:  Run,
    14  }
    15  
    16  func parseIfEmpty(v string) string {
    17  	if len(v) == 0 {
    18  		return "(none)"
    19  	}
    20  
    21  	return v
    22  }
    23  
    24  func Run(c *cli.Context) error {
    25  	selectedProfile, _ := env.GetSelectedUser()
    26  	selectedProject, _ := env.GetSelectedProject()
    27  	selectedApplication, _ := env.GetSelectedApplication()
    28  	selectedNetwork, _ := env.GetSelectedNetwork()
    29  	customNetworkUrl, _ := env.GetCustomNetworkUrl()
    30  
    31  	toRender := [][]string{
    32  		{"Profile", parseIfEmpty(selectedProfile)},
    33  		{"Project", parseIfEmpty(selectedProject)},
    34  		{"Application", parseIfEmpty(selectedApplication)},
    35  		{"Network Type", parseIfEmpty(selectedNetwork)},
    36  		{"Network", parseIfEmpty(customNetworkUrl)},
    37  	}
    38  
    39  	prompts.RenderTableWithMerge(toRender)
    40  	return nil
    41  }