1package util
2
3import (
4 tea "charm.land/bubbletea/v2"
5 "github.com/charmbracelet/crush/internal/uiutil"
6)
7
8type Cursor = uiutil.Cursor
9
10type Model interface {
11 Init() tea.Cmd
12 Update(tea.Msg) (Model, tea.Cmd)
13 View() string
14}
15
16func CmdHandler(msg tea.Msg) tea.Cmd {
17 return uiutil.CmdHandler(msg)
18}
19
20func ReportError(err error) tea.Cmd {
21 return uiutil.ReportError(err)
22}
23
24type InfoType = uiutil.InfoType
25
26const (
27 InfoTypeInfo = uiutil.InfoTypeInfo
28 InfoTypeSuccess = uiutil.InfoTypeSuccess
29 InfoTypeWarn = uiutil.InfoTypeWarn
30 InfoTypeError = uiutil.InfoTypeError
31 InfoTypeUpdate = uiutil.InfoTypeUpdate
32)
33
34func ReportInfo(info string) tea.Cmd {
35 return uiutil.ReportInfo(info)
36}
37
38func ReportWarn(warn string) tea.Cmd {
39 return uiutil.ReportWarn(warn)
40}
41
42type (
43 InfoMsg = uiutil.InfoMsg
44 ClearStatusMsg = uiutil.ClearStatusMsg
45)