terminice_core 0.0.8
terminice_core: ^0.0.8 copied to clipboard
Core functionality for the Terminice library, providing tools for building beautiful terminal-based applications.
0.0.8 #
- Terminal I/O Abstraction: Introduced a centralized, pluggable terminal I/O system.
- Added
Terminalabstract class withTerminalInputandTerminalOutputinterfaces. - Added
DartTerminalas the default implementation usingdart:iostdin/stdout. - Added
TerminalContextsingleton for global terminal access and replacement.
- Added
- Migrated all core components to use the new abstraction:
TerminalControlnow usesTerminalContext.input/outputfor mode management and cursor control.KeyEventReadernow reads throughTerminalContext.input.TerminalInfonow queries dimensions throughTerminalContext.output.RenderOutputnow writes throughTerminalContext.output.
- Testing support: External users can now inject custom
Terminalimplementations for testing or alternative environments. - Test utilities: Added comprehensive mock terminal implementations for testing:
MockTerminalwithMockTerminalInputandMockTerminalOutputfor full I/O simulation.SpyTerminalfor tracking method calls and verifying interactions.ErrorTerminalfor testing error handling scenarios.- Input queueing helpers for bytes, lines, and key events.
- Output capture with pattern matching and inspection helpers.
- Extensive test suite: 69 tests covering terminal interfaces, context switching, and integration.
- No behavior changes - all existing code continues to work unchanged.
0.0.7 #
- Reduced minimum dart sdk version to 2.17.0
- Enforced type safety with the new dart sdk.
- Migrated tuples and records to classes to support older versions of Dart.
- Explicitly named all libraries to support older versions of Dart.
- Removed workspace resolution to support older versions of Dart.
0.0.6 #
- Added the entire prompt toolkit (
SimplePrompt, selectable/searchable/ranked list prompts, grid selection, value prompts,DynamicListPrompt, andTextInputBuffer) to the public API. - Documented every prompt with production-grade dartdoc plus README excerpts so the new surfaces render cleanly on pub.dev.
- Clarified how the prompt module composes the existing navigation, rendering, and IO primitives to build higher-level interactions.
0.0.5 #
- Added the full rendering toolkit (
FrameView,FrameContext,FrameRenderer,FramedLayout,LineBuilder,TableRenderer,InlineStyle,HintFormat, syntax helpers) to the public API surface so prompts can share consistent terminal scaffolding. - Wrote production-grade DartDoc, diagrams, and inline examples for every renderer to ensure the new APIs render cleanly on pub.dev and meet documentation guidelines.
- Documented how the rendering pieces integrate with
PromptRunnerandKeyBindings, including connector lines, table helpers, and hint grids, so downstream packages know when to pick each component.
0.0.4 #
- Added style primitives (
PromptTheme,PromptStyle,BadgeTone,Themeable) so that prompts and downstream widgets can share consistent visuals. - Documented the new styling features with production-grade DartDoc for pub.dev.
- Ensured style exports remain available through
terminice_core.dart.
0.0.3 #
- Added navigation components (
FocusNavigator,ListNavigator,GridNavigator,SelectionController) to the public API surface. - Polished their DartDoc and improved in-tree examples for clear rendering on pub.dev.
- Documented the navigation toolkit in the
terminice_coreREADME.
0.0.2 #
- Added the complete
lib/src/iomodule (key events, bindings, terminal helpers). - Documented and exposed the IO utilities for downstream packages.
- Maintained new APIs through
terminice_core.dart. - Specified supported platforms in
pubspec.yaml.
0.0.1 #
- Initial listing on pub.dev.