Vibe.TUI (vibe v0.2.0)

Copy Markdown View Source

Declarative terminal UI helpers and constructors for Vibe's TUI node tree.

Summary

Types

child()

@type child() :: Vibe.TUI.Node.t() | IO.chardata()

Functions

assign(name)

(macro)

autocomplete(autocomplete)

@spec autocomplete(keyword() | map() | Vibe.UI.Autocomplete.t()) :: Vibe.TUI.Node.t()

box(title \\ nil, children, opts \\ [])

@spec box(IO.chardata() | nil, [child()], keyword() | map()) :: Vibe.TUI.Node.t()

confirmation(props)

@spec confirmation(keyword() | map()) :: Vibe.TUI.Node.t()

defui(list)

(macro)

defui(module, list)

(macro)

dialog(title, children, opts \\ [])

@spec dialog(IO.chardata(), [child()], keyword() | map()) :: Vibe.TUI.Node.t()

diff(props)

@spec diff(keyword() | map()) :: Vibe.TUI.Node.t()

footer(footer)

@spec footer(map() | struct()) :: Vibe.TUI.Node.t()

horizontal(children)

@spec horizontal([child()]) :: Vibe.TUI.Node.t()

input(props)

@spec input(keyword() | map()) :: Vibe.TUI.Node.t()

loader(props \\ [])

@spec loader(keyword() | map()) :: Vibe.TUI.Node.t()

markdown(content, opts \\ [])

@spec markdown(IO.chardata(), keyword() | map()) :: Vibe.TUI.Node.t()

message(message)

@spec message(map() | struct()) :: Vibe.TUI.Node.t()

model_info(props)

@spec model_info(keyword() | map()) :: Vibe.TUI.Node.t()

node(type, props \\ %{}, children \\ [])

@spec node(atom(), map(), [child()]) :: Vibe.TUI.Node.t()

notifications(props)

@spec notifications(keyword() | map() | Vibe.UI.Block.NotificationList.t()) ::
  Vibe.TUI.Node.t()

overlay(overlay)

@spec overlay(map() | struct()) :: Vibe.TUI.Node.t()

padding(children, opts \\ [])

@spec padding([child()], keyword() | map()) :: Vibe.TUI.Node.t()

plugin_widget(widget)

@spec plugin_widget(keyword() | map() | Vibe.UI.Block.PluginWidget.t()) ::
  Vibe.TUI.Node.t()

raw(content)

@spec raw(IO.chardata()) :: Vibe.TUI.Node.t()

section(title, children \\ [])

@spec section(IO.chardata(), [child()]) :: Vibe.TUI.Node.t()

select_list(props)

@spec select_list(keyword() | map()) :: Vibe.TUI.Node.t()

spacer(lines \\ 1)

@spec spacer(non_neg_integer()) :: Vibe.TUI.Node.t()

status(props)

@spec status(keyword() | map()) :: Vibe.TUI.Node.t()

text(content, opts \\ [])

@spec text(IO.chardata(), keyword() | map()) :: Vibe.TUI.Node.t()

textarea(props)

@spec textarea(keyword() | map()) :: Vibe.TUI.Node.t()

tool(tool)

@spec tool(map() | struct()) :: Vibe.TUI.Node.t()

truncate(content, opts \\ [])

@spec truncate(IO.chardata(), keyword() | map()) :: Vibe.TUI.Node.t()

vertical(children)

@spec vertical([child()]) :: Vibe.TUI.Node.t()