2022-03-27 23:19:38 +00:00
|
|
|
package events
|
|
|
|
|
2022-03-28 21:41:27 +00:00
|
|
|
import (
|
|
|
|
tea "github.com/charmbracelet/bubbletea"
|
|
|
|
"log"
|
|
|
|
)
|
2022-03-27 23:19:38 +00:00
|
|
|
|
|
|
|
func Error(err error) tea.Msg {
|
2022-03-28 21:41:27 +00:00
|
|
|
log.Println(err)
|
2022-03-27 23:19:38 +00:00
|
|
|
return ErrorMsg(err)
|
|
|
|
}
|
|
|
|
|
2022-08-31 10:46:53 +00:00
|
|
|
func SetStatus(msg string) tea.Cmd {
|
|
|
|
return func() tea.Msg {
|
|
|
|
return StatusMsg(msg)
|
|
|
|
}
|
2022-04-05 03:39:14 +00:00
|
|
|
}
|
|
|
|
|
2022-10-04 11:23:48 +00:00
|
|
|
func SetTeaMessage(event tea.Msg) tea.Cmd {
|
|
|
|
return func() tea.Msg {
|
|
|
|
return event
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2022-08-18 11:39:13 +00:00
|
|
|
func PromptForInput(prompt string, onDone func(value string) tea.Msg) tea.Msg {
|
|
|
|
return PromptForInputMsg{
|
|
|
|
Prompt: prompt,
|
|
|
|
OnDone: onDone,
|
2022-03-27 23:19:38 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2022-08-18 11:39:13 +00:00
|
|
|
func Confirm(prompt string, onYes func() tea.Msg) tea.Msg {
|
|
|
|
return PromptForInput(prompt, func(value string) tea.Msg {
|
2022-06-16 12:00:25 +00:00
|
|
|
if value == "y" {
|
|
|
|
return onYes()
|
|
|
|
}
|
|
|
|
return nil
|
|
|
|
})
|
|
|
|
}
|
|
|
|
|
2022-03-27 23:19:38 +00:00
|
|
|
type MessageWithStatus interface {
|
|
|
|
StatusMessage() string
|
|
|
|
}
|
2022-06-22 01:57:12 +00:00
|
|
|
|
|
|
|
type MessageWithMode interface {
|
|
|
|
MessageWithStatus
|
|
|
|
ModeMessage() string
|
|
|
|
}
|