Skip to content

Deno TUI 2.0.0-RC

Pre-release
Pre-release
Compare
Choose a tag to compare
@Im-Beast Im-Beast released this 04 May 14:42
· 117 commits to main since this release
2c1bed9

Release 2.0.0-RC

Changelog

This major change breaks almost all of the older code.
It is easy to migrate older code to new one.

Most important changes include:

  • Huge performance improvements
    • Canvas now tracks drawn objects and calculates what cells need to get rerendered each frame
      • This can be further optimized in consecutive updates
  • Components no longer have Component suffix, e.g. BoxComponent is now just a Box
  • Signal's are now used to smoothen development of reactive UI
  • Components no longer have update() method, instead they calculate changes using Signal's
  • key_reader.ts is split to multiple modules inside `input_reader/``.
    • input_reader/decoders contains logic for decoding given buffer/character code to events.
    • Replaced readKeypresses() with emitInputEvents() which directly emits input from given stdin with parsed events.
    • key_reader.ts related types have been moved from src/types.ts to src/input_reader/types.ts.
    • "mousePress" event has been split to three different events: "mouseEvent", "mousePress", "mouseScroll".
    • mouse and keyboard decoders now re-use objects instead of creating new ones constantly

Full Changelog: 1.3.4...2.0.0-RC