@zakmandhro/bunti 0.1.5 → 0.2.0

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 (192) hide show
  1. package/AGENTS.md +65 -0
  2. package/README.md +81 -11
  3. package/dist/cli.d.ts +44 -0
  4. package/dist/cli.d.ts.map +1 -0
  5. package/dist/cli.js +147 -0
  6. package/dist/cli.js.map +1 -0
  7. package/dist/colors.d.ts +77 -7
  8. package/dist/colors.d.ts.map +1 -1
  9. package/dist/colors.js +238 -39
  10. package/dist/colors.js.map +1 -1
  11. package/dist/components/Box.d.ts +6 -0
  12. package/dist/components/Box.d.ts.map +1 -1
  13. package/dist/components/Box.js +5 -0
  14. package/dist/components/Box.js.map +1 -1
  15. package/dist/components/Button.d.ts +12 -2
  16. package/dist/components/Button.d.ts.map +1 -1
  17. package/dist/components/Button.js +35 -24
  18. package/dist/components/Button.js.map +1 -1
  19. package/dist/components/Card.d.ts +24 -2
  20. package/dist/components/Card.d.ts.map +1 -1
  21. package/dist/components/Card.js +56 -14
  22. package/dist/components/Card.js.map +1 -1
  23. package/dist/components/Header.d.ts +11 -1
  24. package/dist/components/Header.d.ts.map +1 -1
  25. package/dist/components/Header.js +12 -8
  26. package/dist/components/Header.js.map +1 -1
  27. package/dist/components/Input.d.ts +10 -1
  28. package/dist/components/Input.d.ts.map +1 -1
  29. package/dist/components/Input.js +172 -41
  30. package/dist/components/Input.js.map +1 -1
  31. package/dist/components/Link.d.ts +21 -0
  32. package/dist/components/Link.d.ts.map +1 -0
  33. package/dist/components/Link.js +29 -0
  34. package/dist/components/Link.js.map +1 -0
  35. package/dist/components/Modal.d.ts +25 -0
  36. package/dist/components/Modal.d.ts.map +1 -1
  37. package/dist/components/Modal.js +83 -24
  38. package/dist/components/Modal.js.map +1 -1
  39. package/dist/components/Progress.d.ts +27 -0
  40. package/dist/components/Progress.d.ts.map +1 -0
  41. package/dist/components/Progress.js +39 -0
  42. package/dist/components/Progress.js.map +1 -0
  43. package/dist/components/Spinner.d.ts +19 -0
  44. package/dist/components/Spinner.d.ts.map +1 -0
  45. package/dist/components/Spinner.js +27 -0
  46. package/dist/components/Spinner.js.map +1 -0
  47. package/dist/components/index.d.ts +3 -0
  48. package/dist/components/index.d.ts.map +1 -1
  49. package/dist/components/index.js +3 -0
  50. package/dist/components/index.js.map +1 -1
  51. package/dist/data/nf-glyphs.d.ts +11 -0
  52. package/dist/data/nf-glyphs.d.ts.map +1 -0
  53. package/dist/data/nf-glyphs.js +535 -0
  54. package/dist/data/nf-glyphs.js.map +1 -0
  55. package/dist/data/nf-names.d.ts +8 -0
  56. package/dist/data/nf-names.d.ts.map +1 -0
  57. package/dist/data/nf-names.js +2 -0
  58. package/dist/data/nf-names.js.map +1 -0
  59. package/dist/demo-registry.d.ts +27 -0
  60. package/dist/demo-registry.d.ts.map +1 -0
  61. package/dist/demo-registry.js +57 -0
  62. package/dist/demo-registry.js.map +1 -0
  63. package/dist/demos/2048.ts +743 -0
  64. package/dist/demos/animation.ts +246 -0
  65. package/dist/demos/demo-layout.ts +124 -0
  66. package/dist/demos/engine.ts +374 -0
  67. package/dist/demos/interaction.ts +91 -0
  68. package/dist/demos/login.ts +203 -0
  69. package/dist/demos/mission-control.ts +558 -0
  70. package/dist/demos/showcase.ts +224 -0
  71. package/dist/detect.d.ts +92 -3
  72. package/dist/detect.d.ts.map +1 -1
  73. package/dist/detect.js +218 -40
  74. package/dist/detect.js.map +1 -1
  75. package/dist/diagnostics.d.ts +73 -0
  76. package/dist/diagnostics.d.ts.map +1 -0
  77. package/dist/diagnostics.js +225 -0
  78. package/dist/diagnostics.js.map +1 -0
  79. package/dist/dsl/context.d.ts +11 -0
  80. package/dist/dsl/context.d.ts.map +1 -0
  81. package/dist/dsl/context.js +563 -0
  82. package/dist/dsl/context.js.map +1 -0
  83. package/dist/dsl/hooks.d.ts +12 -0
  84. package/dist/dsl/hooks.d.ts.map +1 -0
  85. package/dist/dsl/hooks.js +148 -0
  86. package/dist/dsl/hooks.js.map +1 -0
  87. package/dist/dsl/interaction.d.ts +16 -0
  88. package/dist/dsl/interaction.d.ts.map +1 -0
  89. package/dist/dsl/interaction.js +101 -0
  90. package/dist/dsl/interaction.js.map +1 -0
  91. package/dist/dsl/layers.d.ts +14 -0
  92. package/dist/dsl/layers.d.ts.map +1 -0
  93. package/dist/dsl/layers.js +87 -0
  94. package/dist/dsl/layers.js.map +1 -0
  95. package/dist/dsl/motion.d.ts +10 -0
  96. package/dist/dsl/motion.d.ts.map +1 -0
  97. package/dist/dsl/motion.js +150 -0
  98. package/dist/dsl/motion.js.map +1 -0
  99. package/dist/dsl/render.d.ts +22 -0
  100. package/dist/dsl/render.d.ts.map +1 -0
  101. package/dist/dsl/render.js +69 -0
  102. package/dist/dsl/render.js.map +1 -0
  103. package/dist/dsl/types.d.ts +510 -0
  104. package/dist/dsl/types.d.ts.map +1 -0
  105. package/dist/dsl/types.js +33 -0
  106. package/dist/dsl/types.js.map +1 -0
  107. package/dist/dsl.d.ts +13 -154
  108. package/dist/dsl.d.ts.map +1 -1
  109. package/dist/dsl.js +12 -658
  110. package/dist/dsl.js.map +1 -1
  111. package/dist/easing.d.ts +41 -1
  112. package/dist/easing.d.ts.map +1 -1
  113. package/dist/easing.js +105 -2
  114. package/dist/easing.js.map +1 -1
  115. package/dist/geometry.d.ts +39 -0
  116. package/dist/geometry.d.ts.map +1 -1
  117. package/dist/geometry.js +20 -0
  118. package/dist/geometry.js.map +1 -1
  119. package/dist/icons-full.d.ts +5 -0
  120. package/dist/icons-full.d.ts.map +1 -0
  121. package/dist/icons-full.js +31 -0
  122. package/dist/icons-full.js.map +1 -0
  123. package/dist/icons.d.ts +426 -5
  124. package/dist/icons.d.ts.map +1 -1
  125. package/dist/icons.js +144 -15
  126. package/dist/icons.js.map +1 -1
  127. package/dist/index.d.ts +93 -22
  128. package/dist/index.d.ts.map +1 -1
  129. package/dist/index.js +17 -7
  130. package/dist/index.js.map +1 -1
  131. package/dist/input.d.ts +177 -0
  132. package/dist/input.d.ts.map +1 -0
  133. package/dist/input.js +533 -0
  134. package/dist/input.js.map +1 -0
  135. package/dist/layout.d.ts +111 -6
  136. package/dist/layout.d.ts.map +1 -1
  137. package/dist/layout.js +163 -23
  138. package/dist/layout.js.map +1 -1
  139. package/dist/render.d.ts +33 -1
  140. package/dist/render.d.ts.map +1 -1
  141. package/dist/render.js +431 -116
  142. package/dist/render.js.map +1 -1
  143. package/dist/state.d.ts +137 -3
  144. package/dist/state.d.ts.map +1 -1
  145. package/dist/state.js +25 -0
  146. package/dist/state.js.map +1 -1
  147. package/dist/theme.d.ts +129 -0
  148. package/dist/theme.d.ts.map +1 -0
  149. package/dist/theme.js +167 -0
  150. package/dist/theme.js.map +1 -0
  151. package/dist/themes/catppuccin-mocha.d.ts +19 -0
  152. package/dist/themes/catppuccin-mocha.d.ts.map +1 -0
  153. package/dist/themes/catppuccin-mocha.js +36 -0
  154. package/dist/themes/catppuccin-mocha.js.map +1 -0
  155. package/dist/themes/dracula.d.ts +21 -0
  156. package/dist/themes/dracula.d.ts.map +1 -0
  157. package/dist/themes/dracula.js +37 -0
  158. package/dist/themes/dracula.js.map +1 -0
  159. package/dist/themes/github-light.d.ts +21 -0
  160. package/dist/themes/github-light.d.ts.map +1 -0
  161. package/dist/themes/github-light.js +36 -0
  162. package/dist/themes/github-light.js.map +1 -0
  163. package/dist/themes/index.d.ts +19 -0
  164. package/dist/themes/index.d.ts.map +1 -0
  165. package/dist/themes/index.js +17 -0
  166. package/dist/themes/index.js.map +1 -0
  167. package/dist/themes/nord.d.ts +23 -0
  168. package/dist/themes/nord.d.ts.map +1 -0
  169. package/dist/themes/nord.js +38 -0
  170. package/dist/themes/nord.js.map +1 -0
  171. package/dist/themes/one-dark-pro.d.ts +21 -0
  172. package/dist/themes/one-dark-pro.d.ts.map +1 -0
  173. package/dist/themes/one-dark-pro.js +36 -0
  174. package/dist/themes/one-dark-pro.js.map +1 -0
  175. package/dist/themes/tokyo-night.d.ts +20 -0
  176. package/dist/themes/tokyo-night.d.ts.map +1 -0
  177. package/dist/themes/tokyo-night.js +37 -0
  178. package/dist/themes/tokyo-night.js.map +1 -0
  179. package/dist/utils.d.ts +1 -0
  180. package/dist/utils.d.ts.map +1 -1
  181. package/dist/utils.js +1 -0
  182. package/dist/utils.js.map +1 -1
  183. package/dist/vendor/colors.d.ts +45 -0
  184. package/dist/vendor/colors.d.ts.map +1 -0
  185. package/dist/vendor/colors.js +72 -0
  186. package/dist/vendor/colors.js.map +1 -0
  187. package/llms.txt +79 -0
  188. package/package.json +23 -7
  189. package/dist/data/glyphs.d.ts +0 -5
  190. package/dist/data/glyphs.d.ts.map +0 -1
  191. package/dist/data/glyphs.js +0 -29
  192. package/dist/data/glyphs.js.map +0 -1
package/dist/icons.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"icons.js","sourceRoot":"","sources":["../src/icons.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"icons.js","sourceRoot":"","sources":["../src/icons.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,25 +3,46 @@ import * as detect from './detect';
3
3
  import * as dsl from './dsl';
4
4
  import * as geometry from './geometry';
5
5
  import * as icons from './icons';
6
+ import * as input from './input';
6
7
  import * as layout from './layout';
7
8
  import * as state from './state';
8
- export { bg, createGradient, fade, fg, hexToRGB, PALETTE, rgb } from './colors';
9
- export type { TerminalCapabilities } from './detect';
10
- export { detectCapabilities } from './detect';
9
+ import * as theme from './theme';
10
+ export type { ColorValue, Gradient } from './colors';
11
+ export { ansi256ToRGB, bg, contrastText, createGradient, fade, fg, hexToRGB, isThemeColor, PALETTE, relativeLuminance, resolveColor, resolveColorToRGB, rgb, rgbTo16, rgbTo256, rgbToHex, } from './colors';
12
+ export type { IconName } from './data/nf-names';
13
+ export type { ColorTier, NerdFontPolicy, TerminalApp, TerminalCapabilities, TerminalProfile, } from './detect';
14
+ export { colorTier, detectCapabilities, detectColorTier, identifyTerminal, setColorTier, } from './detect';
11
15
  export type { BuntiContext, DSLBoxOptions, LayerOptions, TypewriterOptions, TypewriterState, } from './dsl';
12
16
  export { KEYS, render } from './dsl';
13
- export { clamp01, easeInOutCubic, easeOutBack, easeOutCubic } from './easing';
17
+ export { clamp01, easeInCubic, easeInOutCubic, easeInOutQuad, easeInOutQuart, easeInQuad, easeInQuart, easeOutBack, easeOutBounce, easeOutCubic, easeOutElastic, easeOutExpo, easeOutQuad, easeOutQuart, lerp, lerpRect, linear, } from './easing';
14
18
  export type { PlacedRectInput, PlacedRectOptions, Rect, RectInput, SplitOptions, } from './geometry';
15
19
  export { innerRect, resolvePlacedRect, resolveRect, splitRect, } from './geometry';
16
- export type { IconDefinition } from './icons';
17
- export { EMOJI_MAP, ICON_MAP, icon, init, nerd, nerdIcon, register, replaceEmojis, } from './icons';
20
+ export type { BuntiIconName, CuratedIconName, IconDefinition, } from './icons';
21
+ export { EMOJI_MAP, ICON_MAP, icon, init, nerd, nerdIcon, register, registerAll, replaceEmojis, } from './icons';
22
+ export type { HeldKeyOptions, InputToken, InputTokenizerOptions, KeyEvent, TerminalResponse, TerminalResponseKind, } from './input';
23
+ export { createKeyEvent, HeldKeyTracker, InputTokenizer } from './input';
18
24
  export type { BorderStyle, ListOptions, StyleOptions, TableOptions, } from './layout';
19
- export { badge, blit, box, createStyle, getWindow, gradient, joinHorizontal, joinVertical, list, rect, setCell, table, viewport, wallpaper, } from './layout';
20
- export { flush, loop } from './render';
25
+ export { badge, blit, box, createStyle, dimRect, getWindow, gradient, joinHorizontal, joinVertical, list, rect, setCell, table, viewport, wallpaper, } from './layout';
26
+ export { applyInputToState, drainFrameInput, flush, loop, renderFrame, restoreTerminal, updatePointerShape, } from './render';
21
27
  export type { Cell, RGB, ScreenOptions, ScreenState } from './state';
22
28
  export { ANSI, clearBackBuffer, createScreenState, resizeScreen, } from './state';
29
+ export type { Theme, ThemeColor, ThemeColorInput, ThemeInput, ThemeMode, ThemeToken, } from './theme';
30
+ export { createTheme, darkTheme, isTheme, lightTheme, resolveTheme, THEME_TOKENS, themeColor, } from './theme';
23
31
  export { charWidth, indentBlock, stripAnsi, truncate, visibleWidth, } from './utils';
32
+ export type { BuntiColor, ColorFormatter } from './vendor/colors';
33
+ /**
34
+ * Namespaced API surface for `bunti.render(...)` style usage — every
35
+ * named export gathered onto one object.
36
+ * @example import { bunti } from '@zakmandhro/bunti'; await bunti.render(draw, { keyboard: true });
37
+ */
24
38
  export declare const bunti: {
39
+ themeColor(input: theme.ThemeColorInput): theme.ThemeColor;
40
+ isTheme(value: unknown): value is theme.Theme;
41
+ createTheme(input?: theme.ThemeInput): theme.Theme;
42
+ resolveTheme(input: theme.Theme | theme.ThemeInput, base?: theme.Theme): theme.Theme;
43
+ THEME_TOKENS: readonly ["background", "surface", "surfaceRaised", "foreground", "muted", "primary", "onPrimary", "accent", "border", "focus", "selection", "success", "warning", "danger", "info"];
44
+ darkTheme: theme.Theme;
45
+ lightTheme: theme.Theme;
25
46
  resolveRect(parent: geometry.Rect, input: geometry.RectInput): geometry.Rect;
26
47
  resolvePlacedRect(parent: geometry.Rect, input: geometry.PlacedRectInput, options?: geometry.PlacedRectOptions): geometry.Rect;
27
48
  innerRect(rect: geometry.Rect, inset: number | {
@@ -32,13 +53,24 @@ export declare const bunti: {
32
53
  }): geometry.Rect;
33
54
  splitRect(rect: geometry.Rect, options: geometry.SplitOptions): geometry.Rect[];
34
55
  clamp01(value: number): number;
35
- easeInOutCubic(value: number): number;
56
+ linear(value: number): number;
57
+ easeInQuad(value: number): number;
58
+ easeOutQuad(value: number): number;
59
+ easeInOutQuad(value: number): number;
60
+ easeInCubic(value: number): number;
36
61
  easeOutCubic(value: number): number;
62
+ easeInOutCubic(value: number): number;
63
+ easeInQuart(value: number): number;
64
+ easeOutQuart(value: number): number;
65
+ easeInOutQuart(value: number): number;
66
+ easeOutExpo(value: number): number;
67
+ easeOutElastic(value: number): number;
68
+ easeOutBounce(value: number): number;
37
69
  easeOutBack(value: number): number;
38
- createScreenContext(state: state.ScreenState): dsl.BuntiContext;
39
- render(callback: ((b: dsl.BuntiContext) => void) | string, options?: state.ScreenOptions & {
40
- once?: boolean;
41
- }): Promise<void>;
70
+ lerp(a: number, b: number, t: number): number;
71
+ lerpRect(a: geometry.Rect, b: geometry.Rect, t: number): geometry.Rect;
72
+ createScreenContext: typeof dsl.createScreenContext;
73
+ render: typeof dsl.render;
42
74
  KEYS: {
43
75
  UP: string;
44
76
  DOWN: string;
@@ -49,6 +81,15 @@ export declare const bunti: {
49
81
  TAB: string;
50
82
  BACKSPACE: string;
51
83
  SPACE: string;
84
+ HOME: string;
85
+ END: string;
86
+ DELETE: string;
87
+ PAGE_UP: string;
88
+ PAGE_DOWN: string;
89
+ INSERT: string;
90
+ CLICK: string;
91
+ WHEEL_UP: string;
92
+ WHEEL_DOWN: string;
52
93
  };
53
94
  createScreenState(options?: state.ScreenOptions): state.ScreenState;
54
95
  resizeScreen(state: state.ScreenState): void;
@@ -68,11 +109,19 @@ export declare const bunti: {
68
109
  syncStart: string;
69
110
  syncEnd: string;
70
111
  };
71
- hexToRGB(hex: string): state.RGB;
72
- resolveColor(color: colors.PaletteColor | string | number | state.RGB): string | number;
73
- createGradient(arg1: (string | number | state.RGB)[] | string | number | state.RGB, arg2?: string | number | state.RGB | number, arg3?: number): state.RGB[];
112
+ isThemeColor(value: unknown): value is theme.ThemeColor;
113
+ hexToRGB(hex: string, base?: state.RGB): state.RGB;
114
+ rgbToHex(rgb: state.RGB): string;
115
+ ansi256ToRGB(code: number): state.RGB;
116
+ rgbTo256(rgb: state.RGB): number;
117
+ rgbTo16(rgb: state.RGB): number;
118
+ resolveColor(color: colors.PaletteColor | colors.ColorValue): string | number | undefined;
119
+ createGradient(arg1: colors.ColorValue[] | colors.ColorValue, arg2?: colors.ColorValue | number, arg3?: number): state.RGB[];
120
+ resolveColorToRGB(color: unknown): state.RGB;
121
+ relativeLuminance(color: colors.ColorValue): number;
122
+ contrastText(bgColor: colors.ColorValue): state.RGB;
74
123
  adjustBrightness(color: any, amount: number): state.RGB;
75
- fade(from: string | number | state.RGB, to: string | number | state.RGB, progress: number): state.RGB;
124
+ fade(from: colors.ColorValue, to: colors.ColorValue, progress: number): state.RGB;
76
125
  darken(color: any, amount?: number): (text: string) => string;
77
126
  lighten(color: any, amount?: number): (text: string) => string;
78
127
  rgb(r: number, g: number, b: number): {
@@ -82,6 +131,7 @@ export declare const bunti: {
82
131
  };
83
132
  fg(color: any, text: string): string;
84
133
  bg(color: any, text: string): string;
134
+ THEME_COLOR: typeof colors.THEME_COLOR;
85
135
  PALETTE: {
86
136
  readonly slate: "235";
87
137
  readonly ash: "240";
@@ -110,13 +160,18 @@ export declare const bunti: {
110
160
  truncate(str: string, width: number, tail?: string): string;
111
161
  wrapText(str: string, width: number): string[];
112
162
  indentBlock(content: string, columns: number): string;
163
+ restoreTerminal(state: state.ScreenState): void;
113
164
  syncScreenSize(state: state.ScreenState): boolean;
114
165
  isResizeSettled(state: state.ScreenState, now?: number): boolean;
115
166
  clearTerminalForResize(state: state.ScreenState): void;
167
+ updatePointerShape(state: state.ScreenState): void;
168
+ renderFrame(state: state.ScreenState): string;
116
169
  flush(state: state.ScreenState): void;
117
170
  loop(state: state.ScreenState, renderCallback: (s: state.ScreenState) => void): Promise<void>;
118
171
  applyInputToState(state: state.ScreenState, data: unknown, stop?: () => void): void;
172
+ drainFrameInput(state: state.ScreenState): void;
119
173
  setCell(state: state.ScreenState, x: number, y: number, cell: Partial<state.Cell>): void;
174
+ dimRect(state: state.ScreenState, area: geometry.Rect, amount: number): void;
120
175
  rect(state: state.ScreenState, x: number, y: number, w: number, h: number, style: layout.RectOptions): void;
121
176
  blit(state: state.ScreenState, startX: number, startY: number, content: string, style?: Partial<state.Cell>): void;
122
177
  resolveSize(unit: layout.SizeUnit | undefined, parentDim: number, contentDim: number): number;
@@ -140,18 +195,34 @@ export declare const bunti: {
140
195
  gradient(state: any, colors: any[], options?: {
141
196
  direction?: "vertical" | "horizontal";
142
197
  }): void;
198
+ createKeyEvent(key: string, raw?: string, mods?: Partial<Pick<input.KeyEvent, "ctrl" | "alt" | "shift" | "kind">>): input.KeyEvent;
199
+ InputTokenizer: typeof input.InputTokenizer;
200
+ HeldKeyTracker: typeof input.HeldKeyTracker;
143
201
  replaceEmojis(text: string): string;
144
202
  init(options?: {
145
203
  nerdFont?: boolean;
204
+ profile?: detect.TerminalProfile;
146
205
  }): Promise<detect.TerminalCapabilities>;
147
- getIcon(name: string, caps: detect.TerminalCapabilities): string;
148
- icon(name: string): string;
149
- nerd(name: string): string;
150
- register(_name: string, _glyph: string): void;
206
+ register(name: string, glyphOrDef: string | icons.IconDefinition): void;
207
+ registerAll(glyphs: Record<string, string>): void;
208
+ __iconMisses(): string[];
209
+ getIcon(name: icons.BuntiIconName, caps: detect.TerminalCapabilities): string;
210
+ icon(name: icons.BuntiIconName): string;
211
+ nerd(name: icons.BuntiIconName): string;
151
212
  nerdIcon(nfChar: string, fallback: string): string;
152
213
  ICON_MAP: Record<string, icons.IconDefinition>;
153
214
  EMOJI_MAP: Record<string, string>;
154
- detectCapabilities(): Promise<detect.TerminalCapabilities>;
215
+ identifyTerminal(env?: {
216
+ [x: string]: string | undefined;
217
+ }): detect.TerminalProfile;
218
+ detectColorTier(env?: {
219
+ [x: string]: string | undefined;
220
+ }): detect.ColorTier;
221
+ colorTier(): detect.ColorTier;
222
+ setColorTier(tier?: detect.ColorTier): void;
223
+ detectCapabilities(env?: {
224
+ [x: string]: string | undefined;
225
+ }): Promise<detect.TerminalCapabilities>;
155
226
  };
156
227
  export default bunti;
157
228
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAE7B,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAEnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAGjC,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAEhF,YAAY,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAErD,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC9C,YAAY,EACV,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,eAAe,GAChB,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC9E,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,IAAI,EACJ,SAAS,EACT,YAAY,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,SAAS,GACV,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EACL,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,GACb,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,KAAK,EACL,IAAI,EACJ,GAAG,EACH,WAAW,EACX,SAAS,EACT,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,KAAK,EACL,QAAQ,EACR,SAAS,GACV,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EACL,IAAI,EACJ,eAAe,EACf,iBAAiB,EACjB,YAAY,GACb,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,EACR,YAAY,GACb,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,KAAK;;;;WAcsR,CAAC;aAAe,CAAC;cAAgB,CAAC;YAAc,CAAC;;;;;;;;;YAAwy0B,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0CAArqtB,YAAY;2CAA6O,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iDAAmoS,eAAe,EAAC,+BAA6B;;;;;;;;;;;;;;;iBAAw+J,CAAC;;;;gBAA/qd,CAAC;;;;;;;;;;CAH5sH,CAAC;AAEF,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAE7B,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAEnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAGjC,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,EACL,YAAY,EACZ,EAAE,EACF,YAAY,EACZ,cAAc,EACd,IAAI,EACJ,EAAE,EACF,QAAQ,EACR,YAAY,EACZ,OAAO,EACP,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,GAAG,EACH,OAAO,EACP,QAAQ,EACR,QAAQ,GACT,MAAM,UAAU,CAAC;AAGlB,YAAY,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,YAAY,EACV,SAAS,EACT,cAAc,EACd,WAAW,EACX,oBAAoB,EACpB,eAAe,GAChB,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,SAAS,EACT,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,YAAY,GACb,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,eAAe,GAChB,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EACL,OAAO,EACP,WAAW,EACX,cAAc,EACd,aAAa,EACb,cAAc,EACd,UAAU,EACV,WAAW,EACX,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,WAAW,EACX,WAAW,EACX,YAAY,EACZ,IAAI,EACJ,QAAQ,EACR,MAAM,GACP,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,IAAI,EACJ,SAAS,EACT,YAAY,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,SAAS,GACV,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,aAAa,EACb,eAAe,EACf,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,cAAc,EACd,UAAU,EACV,qBAAqB,EACrB,QAAQ,EACR,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzE,YAAY,EACV,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,GACb,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,KAAK,EACL,IAAI,EACJ,GAAG,EACH,WAAW,EACX,OAAO,EACP,SAAS,EACT,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,KAAK,EACL,QAAQ,EACR,SAAS,GACV,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,KAAK,EACL,IAAI,EACJ,WAAW,EACX,eAAe,EACf,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAClB,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EACL,IAAI,EACJ,eAAe,EACf,iBAAiB,EACjB,YAAY,GACb,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,KAAK,EACL,UAAU,EACV,eAAe,EACf,UAAU,EACV,SAAS,EACT,UAAU,GACX,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,WAAW,EACX,SAAS,EACT,OAAO,EACP,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,UAAU,GACX,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,EACR,YAAY,GACb,MAAM,SAAS,CAAC;AACjB,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAElE;;;;GAIG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;WAgBqL,CAAC;aAAe,CAAC;cAAgB,CAAC;YAAc,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0CAAmoS,YAAY;2CAA6O,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iDAA25Q,eAAe,EAAC,+BAA6B;;;;;;;;;;;;;;;iBAA8vN,CAAC;;;;;;;gBAA1lpB,CAAC;eAAoB,CAAC;;;;;;;;;;;;;;;;;;;;;;CAHlwI,CAAC;AAEF,eAAe,KAAK,CAAC"}
package/dist/index.js CHANGED
@@ -4,25 +4,34 @@ import * as dsl from './dsl';
4
4
  import * as easing from './easing';
5
5
  import * as geometry from './geometry';
6
6
  import * as icons from './icons';
7
+ import * as input from './input';
7
8
  import * as layout from './layout';
8
9
  import * as render from './render';
9
10
  import * as state from './state';
11
+ import * as theme from './theme';
10
12
  import * as utils from './utils';
11
- export { bg, createGradient, fade, fg, hexToRGB, PALETTE, rgb } from './colors';
13
+ export { ansi256ToRGB, bg, contrastText, createGradient, fade, fg, hexToRGB, isThemeColor, PALETTE, relativeLuminance, resolveColor, resolveColorToRGB, rgb, rgbTo16, rgbTo256, rgbToHex, } from './colors';
12
14
  // Functional API Individual Exports
13
- export { detectCapabilities } from './detect';
15
+ export { colorTier, detectCapabilities, detectColorTier, identifyTerminal, setColorTier, } from './detect';
14
16
  export { KEYS, render } from './dsl';
15
- export { clamp01, easeInOutCubic, easeOutBack, easeOutCubic } from './easing';
17
+ export { clamp01, easeInCubic, easeInOutCubic, easeInOutQuad, easeInOutQuart, easeInQuad, easeInQuart, easeOutBack, easeOutBounce, easeOutCubic, easeOutElastic, easeOutExpo, easeOutQuad, easeOutQuart, lerp, lerpRect, linear, } from './easing';
16
18
  export { innerRect, resolvePlacedRect, resolveRect, splitRect, } from './geometry';
17
- export { EMOJI_MAP, ICON_MAP, icon, init, nerd, nerdIcon, register, replaceEmojis, } from './icons';
18
- export { badge, blit, box, createStyle, getWindow, gradient, joinHorizontal, joinVertical, list, rect, setCell, table, viewport, wallpaper, } from './layout';
19
- export { flush, loop } from './render';
19
+ export { EMOJI_MAP, ICON_MAP, icon, init, nerd, nerdIcon, register, registerAll, replaceEmojis, } from './icons';
20
+ export { createKeyEvent, HeldKeyTracker, InputTokenizer } from './input';
21
+ export { badge, blit, box, createStyle, dimRect, getWindow, gradient, joinHorizontal, joinVertical, list, rect, setCell, table, viewport, wallpaper, } from './layout';
22
+ export { applyInputToState, drainFrameInput, flush, loop, renderFrame, restoreTerminal, updatePointerShape, } from './render';
20
23
  export { ANSI, clearBackBuffer, createScreenState, resizeScreen, } from './state';
24
+ export { createTheme, darkTheme, isTheme, lightTheme, resolveTheme, THEME_TOKENS, themeColor, } from './theme';
21
25
  export { charWidth, indentBlock, stripAnsi, truncate, visibleWidth, } from './utils';
22
- // Namespaced export for bunti.render style usage
26
+ /**
27
+ * Namespaced API surface for `bunti.render(...)` style usage — every
28
+ * named export gathered onto one object.
29
+ * @example import { bunti } from '@zakmandhro/bunti'; await bunti.render(draw, { keyboard: true });
30
+ */
23
31
  export const bunti = {
24
32
  ...detect,
25
33
  ...icons,
34
+ ...input,
26
35
  ...layout,
27
36
  ...render,
28
37
  ...utils,
@@ -31,6 +40,7 @@ export const bunti = {
31
40
  ...dsl,
32
41
  ...easing,
33
42
  ...geometry,
43
+ ...theme,
34
44
  };
35
45
  export default bunti;
36
46
  //# 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,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAGhF,oCAAoC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAQ9C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAQ9E,OAAO,EACL,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,SAAS,GACV,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,aAAa,GACd,MAAM,SAAS,CAAC;AAOjB,OAAO,EACL,KAAK,EACL,IAAI,EACJ,GAAG,EACH,WAAW,EACX,SAAS,EACT,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,KAAK,EACL,QAAQ,EACR,SAAS,GACV,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EACL,IAAI,EACJ,eAAe,EACf,iBAAiB,EACjB,YAAY,GACb,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,EACR,YAAY,GACb,MAAM,SAAS,CAAC;AAEjB,iDAAiD;AACjD,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,GAAG,MAAM;IACT,GAAG,KAAK;IACR,GAAG,MAAM;IACT,GAAG,MAAM;IACT,GAAG,KAAK;IACR,GAAG,MAAM;IACT,GAAG,KAAK;IACR,GAAG,GAAG;IACN,GAAG,MAAM;IACT,GAAG,QAAQ;CACZ,CAAC;AAEF,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,177 @@
1
+ /**
2
+ * Bunti Input Tokenizer & Key Event Model
3
+ *
4
+ * A stateful tokenizer that turns raw stdin chunks into discrete input
5
+ * tokens. It handles the realities of terminal input that a naive
6
+ * chunk-per-key parser gets wrong:
7
+ *
8
+ * - Escape sequences split across stdin chunks (the tail is carried until
9
+ * the sequence completes or the ESC-disambiguation timeout fires).
10
+ * - Multiple key/mouse events packed into a single chunk (each one becomes
11
+ * its own token, including every SGR mouse event in the chunk).
12
+ * - CSI modifier parameters (xterm encoding: 2=shift 3=alt 5=ctrl ...),
13
+ * SS3 sequences, navigation keys, ctrl bytes (\x01-\x1a), and
14
+ * alt-prefixed ESC+char.
15
+ * - Terminal RESPONSES (cursor position reports, DA1/DA2, DECRQM, DCS
16
+ * replies like XTVERSION) are routed to a separate response channel and
17
+ * never enter the key stream — capability-detection probes depend on this.
18
+ * - Printable text is segmented per grapheme (Intl.Segmenter), so emoji
19
+ * arrive as whole key events.
20
+ *
21
+ * The KeyEvent shape below is FROZEN for launch. Post-launch protocol work
22
+ * (kitty keyboard protocol, bracketed paste) must slot into this shape
23
+ * without breaking it:
24
+ * - `kind: 'release'` is currently only synthesized by the HeldKeyTracker
25
+ * when a held key's repeat stream expires (legacy terminals never report
26
+ * releases). The kitty protocol will later produce real release events.
27
+ * - `kind: 'repeat'` is classified by the HeldKeyTracker heuristic, not by
28
+ * the terminal.
29
+ */
30
+ /** Frozen key event shape. See module docs for the evolution contract. */
31
+ export interface KeyEvent {
32
+ /**
33
+ * Normalized key name. Printable keys are the literal grapheme
34
+ * ('a', 'A', ' ', 'é', emoji); specials are lowercase names ('up',
35
+ * 'enter', 'escape', 'tab', 'backspace', 'f1'..'f12'); mouse events
36
+ * arrive as 'click' / 'wheel_up' / 'wheel_down'.
37
+ */
38
+ key: string;
39
+ /**
40
+ * 'press' on first arrival, 'repeat' while auto-repeating within the
41
+ * hold window, 'release' when a held key's repeat stream expires
42
+ * (synthesized — legacy terminals report no real releases).
43
+ */
44
+ kind: 'press' | 'repeat' | 'release';
45
+ /** Ctrl was held (e.g. ctrl+a arrives as { key: 'a', ctrl: true }). */
46
+ ctrl: boolean;
47
+ /** Alt/meta was held (ESC-prefixed input). */
48
+ alt: boolean;
49
+ /** Shift was held (CSI-modifier encoded; plain 'A' stays shift: false). */
50
+ shift: boolean;
51
+ /** The raw byte sequence that produced this event ('' for synthesized). */
52
+ raw: string;
53
+ }
54
+ export type TerminalResponseKind = 'cursor-position' | 'device-attributes' | 'device-attributes-secondary' | 'mode-report' | 'terminal-version' | 'osc' | 'unknown';
55
+ /**
56
+ * A reply from the terminal to a capability/status probe. These are routed
57
+ * to `state.terminalResponses` (consumers drain the array) and NEVER into
58
+ * the key queue.
59
+ */
60
+ export interface TerminalResponse {
61
+ kind: TerminalResponseKind;
62
+ raw: string;
63
+ /** Parsed cursor row (1-based), cursor-position responses only. */
64
+ row?: number;
65
+ /** Parsed cursor column (1-based), cursor-position responses only. */
66
+ col?: number;
67
+ }
68
+ /** A discrete unit of parsed input. */
69
+ export type InputToken = {
70
+ type: 'key';
71
+ event: KeyEvent;
72
+ }
73
+ /** SGR mouse report. x/y are the raw 1-based protocol coordinates.
74
+ * action mirrors the final byte: 'M' = press/motion/wheel, 'm' = release.
75
+ * Wheel and motion states are encoded in the button bits (64 / 32). */
76
+ | {
77
+ type: 'mouse';
78
+ button: number;
79
+ x: number;
80
+ y: number;
81
+ action: 'press' | 'release';
82
+ raw: string;
83
+ } | {
84
+ type: 'focus';
85
+ focused: boolean;
86
+ raw: string;
87
+ } | {
88
+ type: 'response';
89
+ response: TerminalResponse;
90
+ };
91
+ export interface InputTokenizerOptions {
92
+ /** How long a bare ESC waits for a follow-up before flushing as the
93
+ * 'escape' key. Default 30ms. */
94
+ escTimeoutMs?: number;
95
+ /** Called with tokens produced by the ESC-disambiguation timer. */
96
+ onFlush?: (tokens: InputToken[]) => void;
97
+ /** Injectable timer for tests. Defaults to setTimeout. */
98
+ schedule?: (callback: () => void, ms: number) => unknown;
99
+ /** Injectable timer cancel for tests. Defaults to clearTimeout. */
100
+ cancel?: (handle: unknown) => void;
101
+ }
102
+ /** Creates a KeyEvent with press semantics and explicit defaults. */
103
+ export declare function createKeyEvent(key: string, raw?: string, mods?: Partial<Pick<KeyEvent, 'ctrl' | 'alt' | 'shift' | 'kind'>>): KeyEvent;
104
+ /**
105
+ * Stateful input tokenizer. Feed it stdin chunks via push(); it returns the
106
+ * tokens completed by that chunk and carries any trailing partial escape
107
+ * sequence into the next call. A bare ESC (or unfinished sequence) is only
108
+ * flushed as the 'escape' key after `escTimeoutMs` with no follow-up bytes
109
+ * (tokens produced that way arrive via `onFlush`).
110
+ */
111
+ export declare class InputTokenizer {
112
+ private options;
113
+ private pending;
114
+ private timer;
115
+ onFlush?: (tokens: InputToken[]) => void;
116
+ constructor(options?: InputTokenizerOptions);
117
+ /** Parses a chunk. Returns completed tokens; partial tails are carried. */
118
+ push(chunk: string): InputToken[];
119
+ /** True if a partial sequence is being carried. */
120
+ hasPending(): boolean;
121
+ /**
122
+ * Force-resolves the carried partial sequence (what the ESC timer does):
123
+ * a bare ESC becomes the 'escape' key; a partial DCS/OSC becomes a
124
+ * response; anything else becomes 'escape' plus its remainder as text.
125
+ */
126
+ flushPending(): InputToken[];
127
+ /** Cancels the ESC-disambiguation timer (loop teardown). */
128
+ dispose(): void;
129
+ private scheduleTimer;
130
+ private cancelTimer;
131
+ private parse;
132
+ /**
133
+ * Parses one escape sequence starting at buffer[i] (=== ESC).
134
+ * Returns the number of chars consumed, or -1 if incomplete.
135
+ */
136
+ private parseEscape;
137
+ /**
138
+ * Parses a CSI sequence starting at buffer[i] (=== ESC, buffer[i+1] === '[').
139
+ * Returns chars consumed or -1 if the final byte hasn't arrived yet.
140
+ */
141
+ private parseCsi;
142
+ /** Tokenizes a run of non-ESC text: control bytes + printable graphemes. */
143
+ private tokenizeText;
144
+ }
145
+ export interface HeldKeyOptions {
146
+ /** A key is considered held until this long passes without a repeat.
147
+ * Default 150ms. */
148
+ holdWindowMs?: number;
149
+ /** Injectable clock for tests. Defaults to Date.now. */
150
+ now?: () => number;
151
+ }
152
+ /**
153
+ * Held-key heuristic for legacy terminals (which report no key releases):
154
+ * a key is "held" from its first press until no repeat arrives within the
155
+ * hold window. On expiry a synthetic kind:'release' KeyEvent is emitted.
156
+ * Good enough for platformer-style movement pre-kitty-protocol.
157
+ */
158
+ export declare class HeldKeyTracker {
159
+ private options;
160
+ private held;
161
+ constructor(options?: HeldKeyOptions);
162
+ private get window();
163
+ private now;
164
+ /**
165
+ * Records a press-stream event and classifies it: a key seen again within
166
+ * the hold window becomes kind:'repeat'. Release events pass through.
167
+ */
168
+ record(event: KeyEvent): KeyEvent;
169
+ /** True while the key's repeat stream is inside the hold window. */
170
+ isHeld(key: string): boolean;
171
+ /**
172
+ * Expires held keys whose repeat stream went silent and synthesizes a
173
+ * kind:'release' KeyEvent for each (raw '' — there were no real bytes).
174
+ */
175
+ collectReleases(): KeyEvent[];
176
+ }
177
+ //# sourceMappingURL=input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../src/input.ts"],"names":[],"mappings":"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"}