Raxol.UI.Components.Terminal.Emulator (Raxol v2.0.1)
View SourceTerminal emulator component wrapping the core emulator logic.
Summary
Functions
Cleans up resources when the component is destroyed.
Handles terminal resize events by delegating to State. This ensures that the terminal's internal buffers and state are correctly adjusted while preserving existing content and history where possible.
Initializes a new terminal emulator component state.
Accepts an optional map of options, currently supporting :width and :height.
Processes input and updates terminal state by delegating to IOServer.
Returns a tuple {updated_state, output_string}.
Renders the current terminal state.
Types
@type emulator_state() :: %{state: Raxol.Terminal.Integration.State.t()}
Functions
@spec cleanup(emulator_state()) :: :ok
Cleans up resources when the component is destroyed.
@spec handle_resize( {integer(), integer()}, emulator_state() ) :: emulator_state()
Handles terminal resize events by delegating to State. This ensures that the terminal's internal buffers and state are correctly adjusted while preserving existing content and history where possible.
@spec init(map()) :: emulator_state()
Initializes a new terminal emulator component state.
Accepts an optional map of options, currently supporting :width and :height.
@spec process_input(term(), emulator_state()) :: {emulator_state(), term()}
Processes input and updates terminal state by delegating to IOServer.
Returns a tuple {updated_state, output_string}.
@spec render(emulator_state()) :: emulator_state()
Renders the current terminal state.