@mariozechner/pi-tui 0.5.7 → 0.5.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/components/loading-animation.d.ts +19 -0
  2. package/dist/components/loading-animation.d.ts.map +1 -0
  3. package/dist/components/loading-animation.js +44 -0
  4. package/dist/components/loading-animation.js.map +1 -0
  5. package/dist/{markdown-component.d.ts → components/markdown-component.d.ts} +2 -1
  6. package/dist/components/markdown-component.d.ts.map +1 -0
  7. package/dist/{markdown-component.js → components/markdown-component.js} +2 -0
  8. package/dist/components/markdown-component.js.map +1 -0
  9. package/dist/{select-list.d.ts → components/select-list.d.ts} +2 -1
  10. package/dist/components/select-list.d.ts.map +1 -0
  11. package/dist/{select-list.js → components/select-list.js} +2 -0
  12. package/dist/components/select-list.js.map +1 -0
  13. package/dist/{text-component.d.ts → components/text-component.d.ts} +2 -1
  14. package/dist/components/text-component.d.ts.map +1 -0
  15. package/dist/{text-component.js → components/text-component.js} +2 -0
  16. package/dist/components/text-component.js.map +1 -0
  17. package/dist/{text-editor.d.ts → components/text-editor.d.ts} +3 -2
  18. package/dist/components/text-editor.d.ts.map +1 -0
  19. package/dist/{text-editor.js → components/text-editor.js} +4 -2
  20. package/dist/components/text-editor.js.map +1 -0
  21. package/dist/{whitespace-component.d.ts → components/whitespace-component.d.ts} +2 -1
  22. package/dist/components/whitespace-component.d.ts.map +1 -0
  23. package/dist/{whitespace-component.js → components/whitespace-component.js} +2 -0
  24. package/dist/components/whitespace-component.js.map +1 -0
  25. package/dist/index.d.ts +8 -6
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +12 -8
  28. package/dist/index.js.map +1 -1
  29. package/dist/terminal.d.ts +24 -0
  30. package/dist/terminal.d.ts.map +1 -0
  31. package/dist/terminal.js +47 -0
  32. package/dist/terminal.js.map +1 -0
  33. package/dist/tui.d.ts +43 -28
  34. package/dist/tui.d.ts.map +1 -1
  35. package/dist/tui.js +268 -251
  36. package/dist/tui.js.map +1 -1
  37. package/package.json +6 -2
  38. package/dist/markdown-component.d.ts.map +0 -1
  39. package/dist/markdown-component.js.map +0 -1
  40. package/dist/select-list.d.ts.map +0 -1
  41. package/dist/select-list.js.map +0 -1
  42. package/dist/text-component.d.ts.map +0 -1
  43. package/dist/text-component.js.map +0 -1
  44. package/dist/text-editor.d.ts.map +0 -1
  45. package/dist/text-editor.js.map +0 -1
  46. package/dist/whitespace-component.d.ts.map +0 -1
  47. package/dist/whitespace-component.js.map +0 -1
@@ -0,0 +1,19 @@
1
+ import type { TUI } from "../tui.js";
2
+ import { TextComponent } from "./text-component.js";
3
+ /**
4
+ * LoadingAnimation component that updates every 80ms
5
+ * Simulates the animation component that causes flicker in single-buffer mode
6
+ */
7
+ export declare class LoadingAnimation extends TextComponent {
8
+ private message;
9
+ private frames;
10
+ private currentFrame;
11
+ private intervalId;
12
+ private ui;
13
+ constructor(ui: TUI, message?: string);
14
+ start(): void;
15
+ stop(): void;
16
+ setMessage(message: string): void;
17
+ private updateDisplay;
18
+ }
19
+ //# sourceMappingURL=loading-animation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loading-animation.d.ts","sourceRoot":"","sources":["../../src/components/loading-animation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;;GAGG;AACH,qBAAa,gBAAiB,SAAQ,aAAa;IAQjD,OAAO,CAAC,OAAO;IAPhB,OAAO,CAAC,MAAM,CAAsD;IACpE,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,EAAE,CAAoB;gBAG7B,EAAE,EAAE,GAAG,EACC,OAAO,GAAE,MAAqB;IAOvC,KAAK;IAQL,IAAI;IAOJ,UAAU,CAAC,OAAO,EAAE,MAAM;IAK1B,OAAO,CAAC,aAAa;CAOrB"}
@@ -0,0 +1,44 @@
1
+ import chalk from "chalk";
2
+ import { TextComponent } from "./text-component.js";
3
+ /**
4
+ * LoadingAnimation component that updates every 80ms
5
+ * Simulates the animation component that causes flicker in single-buffer mode
6
+ */
7
+ export class LoadingAnimation extends TextComponent {
8
+ message;
9
+ frames = ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"];
10
+ currentFrame = 0;
11
+ intervalId = null;
12
+ ui = null;
13
+ constructor(ui, message = "Loading...") {
14
+ super("", { bottom: 1 });
15
+ this.message = message;
16
+ this.ui = ui;
17
+ this.start();
18
+ }
19
+ start() {
20
+ this.updateDisplay();
21
+ this.intervalId = setInterval(() => {
22
+ this.currentFrame = (this.currentFrame + 1) % this.frames.length;
23
+ this.updateDisplay();
24
+ }, 80);
25
+ }
26
+ stop() {
27
+ if (this.intervalId) {
28
+ clearInterval(this.intervalId);
29
+ this.intervalId = null;
30
+ }
31
+ }
32
+ setMessage(message) {
33
+ this.message = message;
34
+ this.updateDisplay();
35
+ }
36
+ updateDisplay() {
37
+ const frame = this.frames[this.currentFrame];
38
+ this.setText(`${chalk.cyan(frame)} ${chalk.dim(this.message)}`);
39
+ if (this.ui) {
40
+ this.ui.requestRender();
41
+ }
42
+ }
43
+ }
44
+ //# sourceMappingURL=loading-animation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loading-animation.js","sourceRoot":"","sources":["../../src/components/loading-animation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;;GAGG;AACH,MAAM,OAAO,gBAAiB,SAAQ,aAAa;IAQzC;IAPD,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC5D,YAAY,GAAG,CAAC,CAAC;IACjB,UAAU,GAA0B,IAAI,CAAC;IACzC,EAAE,GAAe,IAAI,CAAC;IAE9B,YACC,EAAO,EACC,UAAkB,YAAY;QAEtC,KAAK,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QAFjB,YAAO,GAAP,OAAO,CAAuB;QAGtC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,KAAK,EAAE,CAAC;IACd,CAAC;IAED,KAAK;QACJ,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;YAClC,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACjE,IAAI,CAAC,aAAa,EAAE,CAAC;QACtB,CAAC,EAAE,EAAE,CAAC,CAAC;IACR,CAAC;IAED,IAAI;QACH,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC/B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACxB,CAAC;IACF,CAAC;IAED,UAAU,CAAC,OAAe;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,aAAa,EAAE,CAAC;IACtB,CAAC;IAEO,aAAa;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAChE,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;QACzB,CAAC;IACF,CAAC;CACD"}
@@ -1,5 +1,6 @@
1
- import type { Component, ComponentRenderResult } from "./tui.js";
1
+ import { type Component, type ComponentRenderResult } from "../tui.js";
2
2
  export declare class MarkdownComponent implements Component {
3
+ readonly id: number;
3
4
  private text;
4
5
  private lines;
5
6
  private previousLines;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown-component.d.ts","sourceRoot":"","sources":["../../src/components/markdown-component.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,qBAAqB,EAAsB,MAAM,WAAW,CAAC;AAE3F,qBAAa,iBAAkB,YAAW,SAAS;IAClD,QAAQ,CAAC,EAAE,SAAwB;IACnC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,aAAa,CAAgB;gBAEzB,IAAI,GAAE,MAAW;IAI7B,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI3B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB;IAkC5C,OAAO,CAAC,WAAW;IAmGnB,OAAO,CAAC,kBAAkB;IAmD1B,OAAO,CAAC,QAAQ;IAsDhB,OAAO,CAAC,gBAAgB;CAIxB"}
@@ -1,6 +1,8 @@
1
1
  import chalk from "chalk";
2
2
  import { marked } from "marked";
3
+ import { getNextComponentId } from "../tui.js";
3
4
  export class MarkdownComponent {
5
+ id = getNextComponentId();
4
6
  text;
5
7
  lines = [];
6
8
  previousLines = [];
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown-component.js","sourceRoot":"","sources":["../../src/components/markdown-component.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
- import type { Component, ComponentRenderResult } from "./tui.js";
1
+ import { type Component, type ComponentRenderResult } from "../tui.js";
2
2
  export interface SelectItem {
3
3
  value: string;
4
4
  label: string;
5
5
  description?: string;
6
6
  }
7
7
  export declare class SelectList implements Component {
8
+ readonly id: number;
8
9
  private items;
9
10
  private filteredItems;
10
11
  private selectedIndex;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-list.d.ts","sourceRoot":"","sources":["../../src/components/select-list.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,qBAAqB,EAAsB,MAAM,WAAW,CAAC;AAE3F,MAAM,WAAW,UAAU;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,UAAW,YAAW,SAAS;IAC3C,QAAQ,CAAC,EAAE,SAAwB;IACnC,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,UAAU,CAAa;IAExB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;gBAEjB,KAAK,EAAE,UAAU,EAAE,EAAE,UAAU,GAAE,MAAU;IAMvD,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAO/B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB;IA6F5C,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAwBlC,eAAe,IAAI,UAAU,GAAG,IAAI;CAIpC"}
@@ -1,5 +1,7 @@
1
1
  import chalk from "chalk";
2
+ import { getNextComponentId } from "../tui.js";
2
3
  export class SelectList {
4
+ id = getNextComponentId();
3
5
  items = [];
4
6
  filteredItems = [];
5
7
  selectedIndex = 0;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-list.js","sourceRoot":"","sources":["../../src/components/select-list.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import type { Component, ComponentRenderResult, Padding } from "./tui.js";
1
+ import { type Component, type ComponentRenderResult, type Padding } from "../tui.js";
2
2
  export declare class TextComponent implements Component {
3
+ readonly id: number;
3
4
  private text;
4
5
  private lastRenderedLines;
5
6
  private padding;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-component.d.ts","sourceRoot":"","sources":["../../src/components/text-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,qBAAqB,EAAsB,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzG,qBAAa,aAAc,YAAW,SAAS;IAC9C,QAAQ,CAAC,EAAE,SAAwB;IACnC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,iBAAiB,CAAgB;IACzC,OAAO,CAAC,OAAO,CAAoB;gBAEvB,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO;IAU3C,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB;IAkE5C,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI3B,OAAO,IAAI,MAAM;IAIjB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,gBAAgB;CAIxB"}
@@ -1,4 +1,6 @@
1
+ import { getNextComponentId } from "../tui.js";
1
2
  export class TextComponent {
3
+ id = getNextComponentId();
2
4
  text;
3
5
  lastRenderedLines = [];
4
6
  padding;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-component.js","sourceRoot":"","sources":["../../src/components/text-component.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
- import type { AutocompleteProvider } from "./autocomplete.js";
2
- import type { Component, ComponentRenderResult } from "./tui.js";
1
+ import type { AutocompleteProvider } from "../autocomplete.js";
2
+ import { type Component, type ComponentRenderResult } from "../tui.js";
3
3
  export interface TextEditorConfig {
4
4
  }
5
5
  export declare class TextEditor implements Component {
6
+ readonly id: number;
6
7
  private state;
7
8
  private config;
8
9
  private autocompleteProvider?;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-editor.d.ts","sourceRoot":"","sources":["../../src/components/text-editor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAgC,MAAM,oBAAoB,CAAC;AAE7F,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,qBAAqB,EAAsB,MAAM,WAAW,CAAC;AAe3F,MAAM,WAAW,gBAAgB;CAEhC;AAED,qBAAa,UAAW,YAAW,SAAS;IAC3C,QAAQ,CAAC,EAAE,SAAwB;IACnC,OAAO,CAAC,KAAK,CAIX;IAEF,OAAO,CAAC,MAAM,CAAwB;IAGtC,OAAO,CAAC,oBAAoB,CAAC,CAAuB;IACpD,OAAO,CAAC,gBAAgB,CAAC,CAAa;IACtC,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,kBAAkB,CAAc;IAEjC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,aAAa,EAAE,OAAO,CAAS;gBAE1B,MAAM,CAAC,EAAE,gBAAgB;IAOrC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAKlD,uBAAuB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI;IAI7D,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB;IAsE5C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IA8M/B,OAAO,CAAC,UAAU;IAsElB,OAAO,IAAI,MAAM;IAIjB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAkB3B,OAAO,CAAC,eAAe;IAiCvB,OAAO,CAAC,WAAW;IA0EnB,OAAO,CAAC,UAAU;IAmBlB,OAAO,CAAC,eAAe;IAgCvB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,mBAAmB;IAoB3B,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,UAAU;IAqBlB,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,sBAAsB;IAiD9B,OAAO,CAAC,mBAAmB;IAgB3B,OAAO,CAAC,4BAA4B;IAOpC,OAAO,CAAC,qBAAqB;IAoC7B,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,kBAAkB;CAoB1B"}
@@ -1,7 +1,9 @@
1
1
  import chalk from "chalk";
2
- import { logger } from "./logger.js";
2
+ import { logger } from "../logger.js";
3
+ import { getNextComponentId } from "../tui.js";
3
4
  import { SelectList } from "./select-list.js";
4
5
  export class TextEditor {
6
+ id = getNextComponentId();
5
7
  state = {
6
8
  lines: [""],
7
9
  cursorLine: 0,
@@ -37,7 +39,7 @@ export class TextEditor {
37
39
  const bottomRight = chalk.gray("╯");
38
40
  const horizontal = chalk.gray("─");
39
41
  const vertical = chalk.gray("│");
40
- // Calculate box width (leave some margin)
42
+ // Calculate box width - leave 1 char margin to avoid edge wrapping
41
43
  const boxWidth = width - 1;
42
44
  const contentWidth = boxWidth - 4; // Account for "│ " and " │"
43
45
  // Layout the text
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-editor.js","sourceRoot":"","sources":["../../src/components/text-editor.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
- import type { Component, ComponentRenderResult } from "./tui.js";
1
+ import { type Component, type ComponentRenderResult } from "../tui.js";
2
2
  /**
3
3
  * A simple component that renders blank lines for spacing
4
4
  */
5
5
  export declare class WhitespaceComponent implements Component {
6
+ readonly id: number;
6
7
  private lines;
7
8
  private lineCount;
8
9
  private firstRender;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whitespace-component.d.ts","sourceRoot":"","sources":["../../src/components/whitespace-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,qBAAqB,EAAsB,MAAM,WAAW,CAAC;AAE3F;;GAEG;AACH,qBAAa,mBAAoB,YAAW,SAAS;IACpD,QAAQ,CAAC,EAAE,SAAwB;IACnC,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAiB;gBAExB,SAAS,GAAE,MAAU;IAKjC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,qBAAqB;CAQ7C"}
@@ -1,7 +1,9 @@
1
+ import { getNextComponentId } from "../tui.js";
1
2
  /**
2
3
  * A simple component that renders blank lines for spacing
3
4
  */
4
5
  export class WhitespaceComponent {
6
+ id = getNextComponentId();
5
7
  lines = [];
6
8
  lineCount;
7
9
  firstRender = true;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whitespace-component.js","sourceRoot":"","sources":["../../src/components/whitespace-component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8C,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE3F;;GAEG;AACH,MAAM,OAAO,mBAAmB;IACtB,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAC3B,KAAK,GAAa,EAAE,CAAC;IACrB,SAAS,CAAS;IAClB,WAAW,GAAY,IAAI,CAAC;IAEpC,YAAY,YAAoB,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,sBAAsB;QAC/D,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,MAAc;QACpB,MAAM,MAAM,GAAG;YACd,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,WAAW;SACzB,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,OAAO,MAAM,CAAC;IACf,CAAC;CACD"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,11 @@
1
1
  export { type AutocompleteItem, type AutocompleteProvider, CombinedAutocompleteProvider, type SlashCommand, } from "./autocomplete.js";
2
+ export { LoadingAnimation } from "./components/loading-animation.js";
3
+ export { MarkdownComponent } from "./components/markdown-component.js";
4
+ export { type SelectItem, SelectList } from "./components/select-list.js";
5
+ export { TextComponent } from "./components/text-component.js";
6
+ export { TextEditor, type TextEditorConfig } from "./components/text-editor.js";
7
+ export { WhitespaceComponent } from "./components/whitespace-component.js";
2
8
  export { type LoggerConfig, logger } from "./logger.js";
3
- export { MarkdownComponent } from "./markdown-component.js";
4
- export { type SelectItem, SelectList } from "./select-list.js";
5
- export { TextComponent } from "./text-component.js";
6
- export { TextEditor, type TextEditorConfig } from "./text-editor.js";
7
- export { type Component, type ComponentRenderResult, Container, type ContainerRenderResult, type Padding, TUI, } from "./tui.js";
8
- export { WhitespaceComponent } from "./whitespace-component.js";
9
+ export { ProcessTerminal, type Terminal } from "./terminal.js";
10
+ export { type Component, type ComponentRenderResult, Container, getNextComponentId, type Padding, TUI, } from "./tui.js";
9
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACN,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,4BAA4B,EAC5B,KAAK,YAAY,GACjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,KAAK,UAAU,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EACN,KAAK,SAAS,EACd,KAAK,qBAAqB,EAC1B,SAAS,EACT,KAAK,qBAAqB,EAC1B,KAAK,OAAO,EACZ,GAAG,GACH,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACN,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,4BAA4B,EAC5B,KAAK,YAAY,GACjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAEvE,OAAO,EAAE,KAAK,UAAU,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE1E,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAE,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAEhF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAE3E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EACN,KAAK,SAAS,EACd,KAAK,qBAAqB,EAC1B,SAAS,EACT,kBAAkB,EAClB,KAAK,OAAO,EACZ,GAAG,GACH,MAAM,UAAU,CAAC"}
package/dist/index.js CHANGED
@@ -1,17 +1,21 @@
1
1
  // Core TUI interfaces and classes
2
2
  // Autocomplete support
3
3
  export { CombinedAutocompleteProvider, } from "./autocomplete.js";
4
- // Logger for debugging
5
- export { logger } from "./logger.js";
4
+ // Loading animation component
5
+ export { LoadingAnimation } from "./components/loading-animation.js";
6
6
  // Markdown component
7
- export { MarkdownComponent } from "./markdown-component.js";
7
+ export { MarkdownComponent } from "./components/markdown-component.js";
8
8
  // Select list component
9
- export { SelectList } from "./select-list.js";
9
+ export { SelectList } from "./components/select-list.js";
10
10
  // Text component
11
- export { TextComponent } from "./text-component.js";
11
+ export { TextComponent } from "./components/text-component.js";
12
12
  // Text editor component
13
- export { TextEditor } from "./text-editor.js";
14
- export { Container, TUI, } from "./tui.js";
13
+ export { TextEditor } from "./components/text-editor.js";
15
14
  // Whitespace component
16
- export { WhitespaceComponent } from "./whitespace-component.js";
15
+ export { WhitespaceComponent } from "./components/whitespace-component.js";
16
+ // Logger for debugging
17
+ export { logger } from "./logger.js";
18
+ // Terminal interface and implementations
19
+ export { ProcessTerminal } from "./terminal.js";
20
+ export { Container, getNextComponentId, TUI, } from "./tui.js";
17
21
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAElC,uBAAuB;AACvB,OAAO,EAGN,4BAA4B,GAE5B,MAAM,mBAAmB,CAAC;AAC3B,uBAAuB;AACvB,OAAO,EAAqB,MAAM,EAAE,MAAM,aAAa,CAAC;AACxD,qBAAqB;AACrB,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,wBAAwB;AACxB,OAAO,EAAmB,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC/D,iBAAiB;AACjB,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,wBAAwB;AACxB,OAAO,EAAE,UAAU,EAAyB,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAGN,SAAS,EAGT,GAAG,GACH,MAAM,UAAU,CAAC;AAClB,uBAAuB;AACvB,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAElC,uBAAuB;AACvB,OAAO,EAGN,4BAA4B,GAE5B,MAAM,mBAAmB,CAAC;AAC3B,8BAA8B;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,qBAAqB;AACrB,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,wBAAwB;AACxB,OAAO,EAAmB,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC1E,iBAAiB;AACjB,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,wBAAwB;AACxB,OAAO,EAAE,UAAU,EAAyB,MAAM,6BAA6B,CAAC;AAChF,uBAAuB;AACvB,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,uBAAuB;AACvB,OAAO,EAAqB,MAAM,EAAE,MAAM,aAAa,CAAC;AACxD,yCAAyC;AACzC,OAAO,EAAE,eAAe,EAAiB,MAAM,eAAe,CAAC;AAC/D,OAAO,EAGN,SAAS,EACT,kBAAkB,EAElB,GAAG,GACH,MAAM,UAAU,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Minimal terminal interface for TUI
3
+ */
4
+ export interface Terminal {
5
+ start(onInput: (data: string) => void, onResize: () => void): void;
6
+ stop(): void;
7
+ write(data: string): void;
8
+ get columns(): number;
9
+ get rows(): number;
10
+ }
11
+ /**
12
+ * Real terminal using process.stdin/stdout
13
+ */
14
+ export declare class ProcessTerminal implements Terminal {
15
+ private wasRaw;
16
+ private inputHandler?;
17
+ private resizeHandler?;
18
+ start(onInput: (data: string) => void, onResize: () => void): void;
19
+ stop(): void;
20
+ write(data: string): void;
21
+ get columns(): number;
22
+ get rows(): number;
23
+ }
24
+ //# sourceMappingURL=terminal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,QAAQ;IAExB,KAAK,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAGnE,IAAI,IAAI,IAAI,CAAC;IAGb,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAG1B,IAAI,OAAO,IAAI,MAAM,CAAC;IACtB,IAAI,IAAI,IAAI,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,eAAgB,YAAW,QAAQ;IAC/C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAC,CAAyB;IAC9C,OAAO,CAAC,aAAa,CAAC,CAAa;IAEnC,KAAK,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAiBlE,IAAI,IAAI,IAAI;IAiBZ,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIzB,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;CACD"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Real terminal using process.stdin/stdout
3
+ */
4
+ export class ProcessTerminal {
5
+ wasRaw = false;
6
+ inputHandler;
7
+ resizeHandler;
8
+ start(onInput, onResize) {
9
+ this.inputHandler = onInput;
10
+ this.resizeHandler = onResize;
11
+ // Save previous state and enable raw mode
12
+ this.wasRaw = process.stdin.isRaw || false;
13
+ if (process.stdin.setRawMode) {
14
+ process.stdin.setRawMode(true);
15
+ }
16
+ process.stdin.setEncoding("utf8");
17
+ process.stdin.resume();
18
+ // Set up event handlers
19
+ process.stdin.on("data", this.inputHandler);
20
+ process.stdout.on("resize", this.resizeHandler);
21
+ }
22
+ stop() {
23
+ // Remove event handlers
24
+ if (this.inputHandler) {
25
+ process.stdin.removeListener("data", this.inputHandler);
26
+ this.inputHandler = undefined;
27
+ }
28
+ if (this.resizeHandler) {
29
+ process.stdout.removeListener("resize", this.resizeHandler);
30
+ this.resizeHandler = undefined;
31
+ }
32
+ // Restore raw mode state
33
+ if (process.stdin.setRawMode) {
34
+ process.stdin.setRawMode(this.wasRaw);
35
+ }
36
+ }
37
+ write(data) {
38
+ process.stdout.write(data);
39
+ }
40
+ get columns() {
41
+ return process.stdout.columns || 80;
42
+ }
43
+ get rows() {
44
+ return process.stdout.rows || 24;
45
+ }
46
+ }
47
+ //# sourceMappingURL=terminal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.js","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"AAkBA;;GAEG;AACH,MAAM,OAAO,eAAe;IACnB,MAAM,GAAG,KAAK,CAAC;IACf,YAAY,CAA0B;IACtC,aAAa,CAAc;IAEnC,KAAK,CAAC,OAA+B,EAAE,QAAoB;QAC1D,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC;QAE9B,0CAA0C;QAC1C,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC;QAC3C,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;YAC9B,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAClC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAEvB,wBAAwB;QACxB,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5C,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACjD,CAAC;IAED,IAAI;QACH,wBAAwB;QACxB,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACxD,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC/B,CAAC;QACD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAC5D,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAChC,CAAC;QAED,yBAAyB;QACzB,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;YAC9B,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;IACF,CAAC;IAED,KAAK,CAAC,IAAY;QACjB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,OAAO;QACV,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;IACrC,CAAC;IAED,IAAI,IAAI;QACP,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;IAClC,CAAC;CACD"}
package/dist/tui.d.ts CHANGED
@@ -1,49 +1,62 @@
1
1
  import { logger } from "./logger.js";
2
- export interface Padding {
3
- top?: number;
4
- bottom?: number;
5
- left?: number;
6
- right?: number;
7
- }
2
+ import { type Terminal } from "./terminal.js";
3
+ /**
4
+ * Result of rendering a component
5
+ */
8
6
  export interface ComponentRenderResult {
9
7
  lines: string[];
10
8
  changed: boolean;
11
9
  }
12
- export interface ContainerRenderResult extends ComponentRenderResult {
13
- keepLines: number;
14
- }
10
+ /**
11
+ * Component interface
12
+ */
15
13
  export interface Component {
14
+ readonly id: number;
16
15
  render(width: number): ComponentRenderResult;
17
16
  handleInput?(keyData: string): void;
18
17
  }
19
- export declare class Container {
20
- protected children: Element[];
21
- protected lines: string[];
22
- protected parentTui: TUI | undefined;
23
- constructor(parentTui?: TUI | undefined);
24
- setParentTui(tui: TUI | undefined): void;
25
- addChild(component: Element): void;
26
- removeChild(component: Element): void;
18
+ export declare function getNextComponentId(): number;
19
+ export interface Padding {
20
+ top?: number;
21
+ bottom?: number;
22
+ left?: number;
23
+ right?: number;
24
+ }
25
+ /**
26
+ * Container for managing child components
27
+ */
28
+ export declare class Container implements Component {
29
+ readonly id: number;
30
+ protected children: (Component | Container)[];
31
+ private tui?;
32
+ constructor();
33
+ setTui(tui: TUI | undefined): void;
34
+ addChild(component: Component | Container): void;
35
+ removeChild(component: Component | Container): void;
27
36
  removeChildAt(index: number): void;
28
- render(width: number): ContainerRenderResult;
29
- getChild(index: number): Element | undefined;
30
- getChildCount(): number;
31
37
  clear(): void;
32
- cleanupSentinels(): void;
38
+ getChild(index: number): (Component | Container) | undefined;
39
+ getChildCount(): number;
40
+ render(width: number): ComponentRenderResult;
33
41
  }
34
- type Element = Component | Container;
42
+ /**
43
+ * TUI - Smart differential rendering TUI implementation.
44
+ */
35
45
  export declare class TUI extends Container {
36
46
  private focusedComponent;
37
47
  private needsRender;
38
- private wasRaw;
39
- private totalLines;
40
48
  private isFirstRender;
41
49
  private isStarted;
42
50
  onGlobalKeyPress?: (data: string) => boolean;
43
- constructor();
51
+ private terminal;
52
+ private previousRenderCommands;
53
+ private previousLines;
54
+ private totalLinesRedrawn;
55
+ private renderCount;
56
+ getLinesRedrawn(): number;
57
+ getAverageLinesRedrawn(): number;
58
+ constructor(terminal?: Terminal);
44
59
  configureLogging(config: Parameters<typeof logger.configure>[0]): void;
45
- addChild(component: Element): void;
46
- removeChild(component: Element): void;
47
60
  setFocus(component: Component): void;
48
61
  private findComponent;
49
62
  private findInContainer;
@@ -51,8 +64,10 @@ export declare class TUI extends Container {
51
64
  start(): void;
52
65
  stop(): void;
53
66
  private renderToScreen;
67
+ private collectRenderCommands;
68
+ private executeInitialRender;
69
+ private executeDifferentialRender;
54
70
  private handleResize;
55
71
  private handleKeypress;
56
72
  }
57
- export {};
58
73
  //# sourceMappingURL=tui.d.ts.map
package/dist/tui.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../src/tui.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,WAAW,OAAO;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,qBAAqB;IACrC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,qBAAsB,SAAQ,qBAAqB;IACnE,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,SAAS;IACzB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB,CAAC;IAC7C,WAAW,CAAC,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAaD,qBAAa,SAAS;IACrB,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAM;IACnC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,CAAM;IAC/B,SAAS,CAAC,SAAS,EAAE,GAAG,GAAG,SAAS,CAAC;gBAEzB,SAAS,CAAC,EAAE,GAAG,GAAG,SAAS;IAIvC,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,SAAS,GAAG,IAAI;IAIxC,QAAQ,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAalC,WAAW,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAyBrC,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAmBlC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB;IAgD5C,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAM5C,aAAa,IAAI,MAAM;IAKvB,KAAK,IAAI,IAAI;IAkBb,gBAAgB,IAAI,IAAI;CA4BxB;AAED,KAAK,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAErC,qBAAa,GAAI,SAAQ,SAAS;IACjC,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,SAAS,CAAkB;IAC5B,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;;IASpD,gBAAgB,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;IAK7D,QAAQ,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAalC,WAAW,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAK9C,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAOpC,OAAO,CAAC,aAAa;IAkBrB,OAAO,CAAC,eAAe;IAwBvB,aAAa,IAAI,IAAI;IAYrB,KAAK,IAAI,IAAI;IA2Bb,IAAI,IAAI,IAAI;IAWZ,OAAO,CAAC,cAAc;IA6EtB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,cAAc;CAkCtB"}
1
+ {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../src/tui.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAmB,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB,CAAC;IAC7C,WAAW,CAAC,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAMD,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAGD,MAAM,WAAW,OAAO;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,qBAAa,SAAU,YAAW,SAAS;IAC1C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,QAAQ,EAAE,CAAC,SAAS,GAAG,SAAS,CAAC,EAAE,CAAM;IACnD,OAAO,CAAC,GAAG,CAAC,CAAM;;IAMlB,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,SAAS,GAAG,IAAI;IASlC,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI;IAQhD,WAAW,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI;IAWnD,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAWlC,KAAK,IAAI,IAAI;IAUb,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,SAAS;IAI5D,aAAa,IAAI,MAAM;IAIvB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,qBAAqB;CAc5C;AAWD;;GAEG;AACH,qBAAa,GAAI,SAAQ,SAAS;IACjC,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAQ;IAC7B,OAAO,CAAC,SAAS,CAAS;IACnB,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACpD,OAAO,CAAC,QAAQ,CAAW;IAG3B,OAAO,CAAC,sBAAsB,CAAuB;IACrD,OAAO,CAAC,aAAa,CAAgB;IAGrC,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,WAAW,CAAK;IACjB,eAAe,IAAI,MAAM;IAGzB,sBAAsB,IAAI,MAAM;gBAI3B,QAAQ,CAAC,EAAE,QAAQ;IAY/B,gBAAgB,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;IAKtE,QAAQ,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAMpC,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,eAAe;IAkBvB,aAAa,IAAI,IAAI;IAerB,KAAK,IAAI,IAAI;IAiBb,IAAI,IAAI,IAAI;IAUZ,OAAO,CAAC,cAAc;IA0BtB,OAAO,CAAC,qBAAqB;IAgB7B,OAAO,CAAC,oBAAoB;IA6B5B,OAAO,CAAC,yBAAyB;IAyJjC,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,cAAc;CAwBtB"}