Commit Graph
13 Commits
Author SHA1 Message Date
chuan 83967fa691 feat: add component infrastructure
- add focusable runtime state and invalidate entry

- add theme primitives and reusable components

- add component checks for focus and cancellation
2026-06-04 02:17:07 +08:00
chuan 9cef923d55 feat: add keybinding registry
- add key id and keybinding registry defaults

- route input components through action matching
2026-06-04 01:45:26 +08:00
chuan 31766b2a78 feat: improve editor layout flow
- split editor implementation by responsibility

- add editor submit events and soft wrap layout

- support modified enter input for editor submission
2026-06-04 01:24:22 +08:00
chuan 895d7401fe feat: update editor keyboard 2026-06-04 01:13:45 +08:00
chuan 18e1f90f62 feat: upgrade select list items
- add SelectItem model with labels and descriptions

- support filtering, wrap-around, scroll info, and selection change

- demonstrate select list filtering in Example
2026-06-04 01:01:28 +08:00
chuan ea8a5b08d7 chore: move core file to new folder 2026-06-04 00:58:25 +08:00
chuan 47ce443327 feat: improve editor interactions
- add editor history, word navigation, and undo redo

- preserve overlay cursor focus when editor is open

- demonstrate editor shortcuts in Example
2026-06-04 00:56:38 +08:00
chuan a9297ba5cd feat: add advanced components
- add editor select list markdown and loader components

- update example to preview advanced components and overlay interactions
2026-06-04 00:12:01 +08:00
chuan d49c7644d0 chore: add some comments 2026-06-03 23:29:26 +08:00
chuan 1d8ad20315 feat: add overlay manager
- compose visible overlays into rendered lines

- add runtime APIs for showing and hiding overlays

- restore focus when overlays close

- add help overlay example
2026-06-03 23:19:48 +08:00
chuan 6da88b6a67 feat: position hardware cursor
- add cursor marker extraction for rendered lines

- move the terminal cursor after full and differential renders

- update input to use the real cursor instead of a block glyph
2026-06-03 23:07:28 +08:00
chuan e2311f6e99 feat: add basic components
- add text, box, and single-line input components

- support input change, submit, and cancel callbacks

- update example to compose the page from library components
2026-06-03 22:46:18 +08:00
chuan 49e368de72 feat: initialize interfaces and model 2026-06-03 21:35:48 +08:00