ANSI

Color : Color.Color

Escape

Ansi Escape Codes

toStr : Escape -> Str

style : Str, List Style -> Str

Add styles to a string

color : Str, { fg ? Color, bg ? Color } -> Str

Add color styles to a string and then resets to default

Input

parseRawStdin : List U8 -> Input

inputToStr : Input -> Str

symbolToStr : Symbol -> Str

upperToStr : Letter -> Str

lowerToStr : Letter -> Str

ScreenSize

CursorPosition

DrawFn

Pixel

parseCursor : List U8 -> CursorPosition

updateCursor : { cursor : CursorPosition, screen : ScreenSize }a, [ Up, Down, Left, Right ] -> { cursor : CursorPosition, screen : ScreenSize }a

drawScreen : { cursor : CursorPosition, screen : ScreenSize }*, List DrawFn -> Str

Loop through each pixel in screen and build up a single string to write to stdout

drawBox : { r : U16, c : U16, w : U16, h : U16, fg ? Color, bg ? Color, char ? Str, styles ? List Style } -> DrawFn

drawVLine : { r : U16, c : U16, len : U16, fg ? Color, bg ? Color, char ? Str, styles ? List Style } -> DrawFn

drawHLine : { r : U16, c : U16, len : U16, fg ? Color, bg ? Color, char ? Str, styles ? List Style } -> DrawFn

drawCursor : { fg ? Color, bg ? Color, char ? Str, styles ? List Style } -> DrawFn

drawText : Str, { r : U16, c : U16, fg ? Color, bg ? Color, styles ? List Style } -> DrawFn