Documentation
¶
Overview ¶
Package ui provides interactive selection prompts for the CLI.
Index ¶
- func BuildGroupOptions(groups []models.GroupsEligibleTarget) []string
- func BuildOptions(targets []models.EligibleTarget) []string
- func BuildSessionOptions(sessions []models.SessionInfo, nameMap map[string]string) []string
- func ConfirmRevocation(count int) (bool, error)
- func FindGroupByDisplay(groups []models.GroupsEligibleTarget, display string) (*models.GroupsEligibleTarget, error)
- func FindSessionByDisplay(sessions []models.SessionInfo, nameMap map[string]string, display string) (*models.SessionInfo, error)
- func FindTargetByDisplay(targets []models.EligibleTarget, display string) (*models.EligibleTarget, error)
- func FormatGroupOption(group models.GroupsEligibleTarget) string
- func FormatSessionOption(session models.SessionInfo, nameMap map[string]string) string
- func FormatTargetOption(target models.EligibleTarget) string
- func SelectGroup(groups []models.GroupsEligibleTarget) (*models.GroupsEligibleTarget, error)
- func SelectSessions(sessions []models.SessionInfo, nameMap map[string]string) ([]models.SessionInfo, error)
- func SelectTarget(targets []models.EligibleTarget) (*models.EligibleTarget, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildGroupOptions ¶ added in v0.3.0
func BuildGroupOptions(groups []models.GroupsEligibleTarget) []string
BuildGroupOptions builds a sorted list of display options from groups eligible targets.
func BuildOptions ¶
func BuildOptions(targets []models.EligibleTarget) []string
BuildOptions builds a sorted list of display options from eligible targets.
func BuildSessionOptions ¶ added in v0.3.0
func BuildSessionOptions(sessions []models.SessionInfo, nameMap map[string]string) []string
BuildSessionOptions builds a sorted list of display options from sessions.
func ConfirmRevocation ¶ added in v0.3.0
ConfirmRevocation prompts the user to confirm session revocation.
func FindGroupByDisplay ¶ added in v0.3.0
func FindGroupByDisplay(groups []models.GroupsEligibleTarget, display string) (*models.GroupsEligibleTarget, error)
FindGroupByDisplay finds a group by its formatted display string.
func FindSessionByDisplay ¶ added in v0.3.0
func FindSessionByDisplay(sessions []models.SessionInfo, nameMap map[string]string, display string) (*models.SessionInfo, error)
FindSessionByDisplay finds a session by its formatted display string.
func FindTargetByDisplay ¶
func FindTargetByDisplay(targets []models.EligibleTarget, display string) (*models.EligibleTarget, error)
FindTargetByDisplay finds a target by its formatted display string.
func FormatGroupOption ¶ added in v0.3.0
func FormatGroupOption(group models.GroupsEligibleTarget) string
FormatGroupOption formats a groups eligible target into a display string.
func FormatSessionOption ¶ added in v0.3.0
func FormatSessionOption(session models.SessionInfo, nameMap map[string]string) string
FormatSessionOption formats a session for display in the multi-select UI.
func FormatTargetOption ¶
func FormatTargetOption(target models.EligibleTarget) string
FormatTargetOption formats an eligible target into a display string.
func SelectGroup ¶ added in v0.3.0
func SelectGroup(groups []models.GroupsEligibleTarget) (*models.GroupsEligibleTarget, error)
SelectGroup presents an interactive selector for choosing a group. It sorts a copy of the groups so that FindGroupByDisplay searches the same ordered slice the user saw, avoiding wrong-group selection on display collisions.
func SelectSessions ¶ added in v0.3.0
func SelectSessions(sessions []models.SessionInfo, nameMap map[string]string) ([]models.SessionInfo, error)
SelectSessions presents a multi-select prompt for choosing sessions to revoke.
func SelectTarget ¶
func SelectTarget(targets []models.EligibleTarget) (*models.EligibleTarget, error)
SelectTarget presents an interactive selector for choosing a target.
Types ¶
This section is empty.