Module: Rubino::UI

Defined in:
lib/rubino/ui.rb,
lib/rubino/ui/api.rb,
lib/rubino/ui/cli.rb,
lib/rubino/ui/base.rb,
lib/rubino/ui/null.rb,
lib/rubino/ui/notifier.rb,
lib/rubino/ui/status_bar.rb,
lib/rubino/ui/indented_io.rb,
lib/rubino/ui/live_region.rb,
lib/rubino/ui/paste_store.rb,
lib/rubino/ui/printer_base.rb,
lib/rubino/ui/stdout_proxy.rb,
lib/rubino/ui/escape_reader.rb,
lib/rubino/ui/input_history.rb,
lib/rubino/ui/subagent_view.rb,
lib/rubino/ui/subagent_cards.rb,
lib/rubino/ui/bottom_composer.rb,
lib/rubino/ui/completion_menu.rb,
lib/rubino/ui/completion_source.rb,
lib/rubino/ui/markdown_renderer.rb,
lib/rubino/ui/queued_indicators.rb,
lib/rubino/ui/streaming_markdown.rb,
lib/rubino/ui/probe_wait_indicator.rb

Overview

UI module namespace and factory. All output in the application flows through a UI adapter.

Defined Under Namespace

Modules: ProbeWaitIndicator, StatusBar Classes: API, Base, BottomComposer, CLI, CompletionMenu, CompletionSource, EscapeReader, IndentedIO, InputHistory, LiveRegion, MarkdownRenderer, Notifier, Null, PasteStore, PrinterBase, QueuedIndicators, StdoutProxy, StreamingMarkdown, SubagentCards, SubagentView

Class Method Summary collapse

Class Method Details

.build(adapter_name) ⇒ Object

Factory method to build the appropriate UI adapter



8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/rubino/ui.rb', line 8

def self.build(adapter_name)
  case adapter_name.to_s
  when "cli"
    CLI.new
  when "api"
    API.new
  when "null"
    Null.new
  else
    raise ConfigurationError, "Unknown UI adapter: #{adapter_name}"
  end
end