Skip to main content
Module

x/tui/mod.ts

🦕 Deno module for creating Terminal User Interfaces
Go to Latest
import * as tui from "https://deno.land/x/tui@2.0.0-RC2/mod.ts";

Classes

Custom implementation of event emitter

Creates array that automatically sorts elements using compareFn Additionally allows for removing elements

Variables

ANSI escape code to clear screen

ANSI escape code to disable mouse handling

ANSI escape code to enable mouse handling

ANSI escape code to hide terminal cursor

ANSI escape code to show terminal cursor

Regexp that allows for extracting unicode sequences that are supposed to represent single character

ANSI escape code to tell terminal to switch back to primary buffer

ANSI escape code to tell terminal to use secondary buffer

Functions

Returns capitalized string created from {text}

Return width of given character

Clamp {number} between {min} and {max}

Crops {text} to given {width}

Decode character(s) from buffer that was sent to stdin from terminal on mostly

Read keypresses from given stdin, parse them and emit to given emitter. On Windows keys are read by calling _getch() in msvcrt.dll.

Used as placeholder style when one is not supplied, returns the input

Check whether {number} fits in <{min}, {max}> range

Check whether {column} and {row} fit in {rectangle} boundaries

Returns component that's the closest to top left corner of tui's canvas

Emit input events to Tui

Enable handling of controlling Tui using keyboard

Enable handling of controlling Tui using mouse

Applies default values to properties (lower one hierarchy or emptyStyle) that aren't set

Inserts {value} into {string} on given {index}

Returns whether component defines interact property

Makes {signal}'s value deeply reactive

Get ANSI escape code for moving cursor to given location

Normalize {value} between 0 and 1

Check whether rectangle {a} is the same as rectangle {b}

Calculate intersection between two rectangles

Returns {replacement} if {style} is an {emptyStyle} otherwise returns {style} back

Creates signal from input if it's not already a signal

Asynchronously sleep for {time} milliseconds

Strips string of all its styles

Returns real {text} width

Track dependencies of given function

Interfaces

Interface defining object that {Canvas}'s constructor can interpret

Type that describes empty edge around Rectangle

Type that describes offset

Type that describes position and size

Base theme used to style components, can be expanded upon

Type Aliases

Map that contains events that {Canvas} can dispatch

Possible states of a component

Type defining terminal's (console) available size measured in columns and rows

Partial that makes all properties optional, even those within other object properties

Type for creating new arguments

  • Required as a workaround for simple tuples and arrays types not working properly

Type for event listener function

Generates number types that range from {From} to {To}

Type for Standard Input - from where data is read

Type for Standard Output – where data gets written

Function that's supposed to return styled text given string as parameter