mirror of
https://github.com/getcompanion-ai/co-mono.git
synced 2026-04-15 16:04:03 +00:00
Add ctx.ui.setFooter() for extensions to replace footer component
Extensions can now replace the built-in footer with a custom component: - setFooter(factory) replaces with custom component - setFooter(undefined) restores built-in footer Includes example extension demonstrating context usage display. Closes #481
This commit is contained in:
parent
2bc445498a
commit
f023af0dab
11 changed files with 147 additions and 1 deletions
|
|
@ -934,7 +934,7 @@ const text = await ctx.ui.editor("Edit:", "prefilled text");
|
|||
ctx.ui.notify("Done!", "info"); // "info" | "warning" | "error"
|
||||
```
|
||||
|
||||
### Widgets and Status
|
||||
### Widgets, Status, and Footer
|
||||
|
||||
```typescript
|
||||
// Status in footer (persistent until cleared)
|
||||
|
|
@ -946,6 +946,13 @@ ctx.ui.setWidget("my-widget", ["Line 1", "Line 2"]);
|
|||
ctx.ui.setWidget("my-widget", (tui, theme) => new Text(theme.fg("accent", "Custom"), 0, 0));
|
||||
ctx.ui.setWidget("my-widget", undefined); // Clear
|
||||
|
||||
// Custom footer (replaces built-in footer entirely)
|
||||
ctx.ui.setFooter((tui, theme) => ({
|
||||
render(width) { return [theme.fg("dim", "Custom footer")]; },
|
||||
invalidate() {},
|
||||
}));
|
||||
ctx.ui.setFooter(undefined); // Restore built-in footer
|
||||
|
||||
// Terminal title
|
||||
ctx.ui.setTitle("pi - my-project");
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue