@zakmandhro/bunti 0.3.0 → 0.5.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 (61) hide show
  1. package/AGENTS.md +3 -0
  2. package/README.md +2 -1
  3. package/dist/components/Button.d.ts.map +1 -1
  4. package/dist/components/Button.js +2 -2
  5. package/dist/components/Button.js.map +1 -1
  6. package/dist/components/Header.d.ts.map +1 -1
  7. package/dist/components/Header.js +4 -1
  8. package/dist/components/Header.js.map +1 -1
  9. package/dist/components/Input.d.ts +2 -0
  10. package/dist/components/Input.d.ts.map +1 -1
  11. package/dist/components/Input.js +10 -2
  12. package/dist/components/Input.js.map +1 -1
  13. package/dist/components/Modal.d.ts.map +1 -1
  14. package/dist/components/Modal.js +3 -0
  15. package/dist/components/Modal.js.map +1 -1
  16. package/dist/components/Spinner.d.ts.map +1 -1
  17. package/dist/components/Spinner.js +1 -0
  18. package/dist/components/Spinner.js.map +1 -1
  19. package/dist/detect.d.ts +24 -7
  20. package/dist/detect.d.ts.map +1 -1
  21. package/dist/detect.js +73 -12
  22. package/dist/detect.js.map +1 -1
  23. package/dist/diagnostics.d.ts +6 -0
  24. package/dist/diagnostics.d.ts.map +1 -1
  25. package/dist/diagnostics.js +11 -0
  26. package/dist/diagnostics.js.map +1 -1
  27. package/dist/dsl/context.d.ts.map +1 -1
  28. package/dist/dsl/context.js +21 -1
  29. package/dist/dsl/context.js.map +1 -1
  30. package/dist/dsl/hooks.d.ts.map +1 -1
  31. package/dist/dsl/hooks.js +12 -0
  32. package/dist/dsl/hooks.js.map +1 -1
  33. package/dist/dsl/motion.d.ts.map +1 -1
  34. package/dist/dsl/motion.js +28 -7
  35. package/dist/dsl/motion.js.map +1 -1
  36. package/dist/dsl/types.d.ts +20 -2
  37. package/dist/dsl/types.d.ts.map +1 -1
  38. package/dist/dsl.d.ts +1 -1
  39. package/dist/dsl.d.ts.map +1 -1
  40. package/dist/dsl.js.map +1 -1
  41. package/dist/index.d.ts +5 -5
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js.map +1 -1
  44. package/dist/input.d.ts.map +1 -1
  45. package/dist/input.js +4 -0
  46. package/dist/input.js.map +1 -1
  47. package/dist/layout.d.ts +5 -1
  48. package/dist/layout.d.ts.map +1 -1
  49. package/dist/layout.js +151 -62
  50. package/dist/layout.js.map +1 -1
  51. package/dist/render.d.ts.map +1 -1
  52. package/dist/render.js +76 -13
  53. package/dist/render.js.map +1 -1
  54. package/dist/state.d.ts +9 -0
  55. package/dist/state.d.ts.map +1 -1
  56. package/dist/state.js +4 -4
  57. package/dist/state.js.map +1 -1
  58. package/dist/utils.d.ts.map +1 -1
  59. package/dist/utils.js +45 -3
  60. package/dist/utils.js.map +1 -1
  61. package/package.json +5 -2
package/dist/render.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Bunti Functional Rendering & Diffing
3
3
  */
4
- import { hintKeyboardStdinNotTTY } from './diagnostics.js';
4
+ import { hintKeyboardStdinNotTTY, hintMouseInConhost } from './diagnostics.js';
5
5
  import { createKeyEvent, HeldKeyTracker, InputTokenizer, } from './input.js';
6
6
  import { ANSI, resizeScreen } from './state.js';
7
7
  /**
@@ -98,8 +98,8 @@ function removeCrashHandlers() {
98
98
  process.removeListener('SIGHUP', onSighup);
99
99
  }
100
100
  export function syncScreenSize(state) {
101
- const width = process.stdout.columns || 80;
102
- const height = process.stdout.rows || 24;
101
+ const width = Math.max(1, process.stdout.columns || 80);
102
+ const height = Math.max(1, process.stdout.rows || 24);
103
103
  if (state.width !== width || state.height !== height) {
104
104
  resizeScreen(state);
105
105
  return true;
@@ -359,6 +359,7 @@ export function loop(state, renderCallback) {
359
359
  const options = state.options;
360
360
  // Dev hint: keyboard input silently does nothing on piped stdin.
361
361
  hintKeyboardStdinNotTTY(options.keyboard === true, process.stdin.isTTY === true);
362
+ hintMouseInConhost(options.mouse === true, state.terminal?.app);
362
363
  state.isRestored = false;
363
364
  activeScreens.add(state);
364
365
  installCrashHandlers();
@@ -367,8 +368,10 @@ export function loop(state, renderCallback) {
367
368
  if (options.hideCursor)
368
369
  process.stdout.write(ANSI.hideCursor);
369
370
  return new Promise((resolve, reject) => {
371
+ const isOnDemand = options.idle === 'on-demand';
370
372
  let stopped = false;
371
373
  let interval = null;
374
+ let scheduledTimer = null;
372
375
  const setupInput = () => {
373
376
  let cmd = '';
374
377
  if (options.mouse)
@@ -394,8 +397,14 @@ export function loop(state, renderCallback) {
394
397
  return;
395
398
  stopped = true;
396
399
  state.isStopped = true;
397
- if (interval)
400
+ if (interval) {
398
401
  clearInterval(interval);
402
+ interval = null;
403
+ }
404
+ if (scheduledTimer) {
405
+ clearTimeout(scheduledTimer);
406
+ scheduledTimer = null;
407
+ }
399
408
  // 1. Remove Listeners
400
409
  state.inputTokenizer?.dispose();
401
410
  process.stdin.removeListener('data', inputHandler);
@@ -435,6 +444,27 @@ export function loop(state, renderCallback) {
435
444
  clearTerminalForResize(state);
436
445
  requestTick();
437
446
  };
447
+ const scheduleNextTick = () => {
448
+ if (stopped || state.isStopped)
449
+ return;
450
+ if (ticking) {
451
+ tickAgain = true;
452
+ return;
453
+ }
454
+ if (scheduledTimer !== null) {
455
+ return;
456
+ }
457
+ const fps = state.hasFocus ? options.fps || 60 : 5;
458
+ const minInterval = 1000 / fps;
459
+ const now = Date.now();
460
+ const elapsed = state.lastFrameAt === undefined ? Infinity : now - state.lastFrameAt;
461
+ const delay = Math.max(0, Math.ceil(minInterval - elapsed));
462
+ scheduledTimer = setTimeout(() => {
463
+ scheduledTimer = null;
464
+ tick();
465
+ }, delay);
466
+ scheduledTimer.unref?.();
467
+ };
438
468
  let ticking = false;
439
469
  let tickAgain = false;
440
470
  let stopPending = false;
@@ -443,6 +473,10 @@ export function loop(state, renderCallback) {
443
473
  tickAgain = true;
444
474
  return;
445
475
  }
476
+ if (scheduledTimer) {
477
+ clearTimeout(scheduledTimer);
478
+ scheduledTimer = null;
479
+ }
446
480
  ticking = true;
447
481
  try {
448
482
  do {
@@ -452,6 +486,10 @@ export function loop(state, renderCallback) {
452
486
  clearTerminalForResize(state);
453
487
  }
454
488
  if (!isResizeSettled(state)) {
489
+ if (isOnDemand) {
490
+ const remaining = Math.max(1, (state.resizeSettlesAt ?? Date.now()) - Date.now());
491
+ setTimeout(() => requestTick(), remaining).unref?.();
492
+ }
455
493
  continue;
456
494
  }
457
495
  state.isResizing = false;
@@ -479,7 +517,7 @@ export function loop(state, renderCallback) {
479
517
  }
480
518
  // OSC 22 mouse-cursor shape reacts to this frame's hitboxes.
481
519
  updatePointerShape(state);
482
- } while (tickAgain);
520
+ } while (!isOnDemand && tickAgain);
483
521
  }
484
522
  catch (err) {
485
523
  // Never write errors into the alt screen and never keep looping over
@@ -501,25 +539,50 @@ export function loop(state, renderCallback) {
501
539
  }
502
540
  finally {
503
541
  ticking = false;
542
+ if (isOnDemand && tickAgain) {
543
+ tickAgain = false;
544
+ scheduleNextTick();
545
+ }
504
546
  }
505
547
  };
506
548
  const requestTick = () => {
507
- if (ticking) {
508
- tickAgain = true;
549
+ if (isOnDemand) {
550
+ scheduleNextTick();
509
551
  }
510
552
  else {
511
- tick();
553
+ if (ticking) {
554
+ tickAgain = true;
555
+ }
556
+ else {
557
+ tick();
558
+ }
512
559
  }
513
560
  };
514
561
  const restartLoop = () => {
515
- if (interval)
562
+ if (interval) {
516
563
  clearInterval(interval);
517
- const fps = state.hasFocus ? options.fps || 60 : 5;
518
- interval = setInterval(tick, 1000 / fps);
519
- requestTick();
564
+ interval = null;
565
+ }
566
+ if (scheduledTimer) {
567
+ clearTimeout(scheduledTimer);
568
+ scheduledTimer = null;
569
+ }
570
+ if (isOnDemand) {
571
+ scheduleNextTick();
572
+ }
573
+ else {
574
+ const fps = state.hasFocus ? options.fps || 60 : 5;
575
+ interval = setInterval(tick, 1000 / fps);
576
+ requestTick();
577
+ }
520
578
  };
521
- if (options.mouse || options.focus || options.keyboard)
579
+ // On Windows, libuv only learns about console resizes from input records
580
+ // it reads in raw mode, so attach stdin there even without keyboard input
581
+ // (Ctrl+C still stops the loop via the input path).
582
+ const windowsConsole = process.platform === 'win32' && process.stdin.isTTY;
583
+ if (options.mouse || options.focus || options.keyboard || windowsConsole) {
522
584
  setupInput();
585
+ }
523
586
  process.on('SIGWINCH', resizeHandler);
524
587
  process.on('SIGINT', stop);
525
588
  process.on('SIGTERM', stop);
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
package/dist/state.d.ts CHANGED
@@ -179,6 +179,15 @@ export interface ScreenState {
179
179
  export interface ScreenOptions {
180
180
  /** Target frames per second (default 60; throttles to 5 when unfocused). */
181
181
  fps?: number;
182
+ /**
183
+ * Render loop idling strategy:
184
+ * - 'continuous' (default): repaints at fixed fps (5fps when unfocused).
185
+ * - 'on-demand': renders frame 1, then only repaints when invalidated (input,
186
+ * resize, state change, useAsync resolution/interval, active animation, or
187
+ * ctx.requestRender()/ctx.invalidate()). fps acts as a rate cap. Idle CPU
188
+ * drops to ~0%.
189
+ */
190
+ idle?: 'continuous' | 'on-demand';
182
191
  /** Enables SGR mouse tracking (hover/click/wheel, ctx.hitbox). */
183
192
  mouse?: boolean;
184
193
  /** Enables terminal focus-in/out tracking (drives the fps throttle). */
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
package/dist/state.js CHANGED
@@ -9,8 +9,8 @@ export function createScreenState(options = {}) {
9
9
  if (options.colorTier !== undefined)
10
10
  setColorTier(options.colorTier);
11
11
  const terminal = identifyTerminal();
12
- const width = process.stdout.columns || 80;
13
- const height = process.stdout.rows || 24;
12
+ const width = Math.max(1, process.stdout.columns || 80);
13
+ const height = Math.max(1, process.stdout.rows || 24);
14
14
  const size = width * height;
15
15
  const state = {
16
16
  width,
@@ -60,8 +60,8 @@ export function createScreenState(options = {}) {
60
60
  * Resizes the front/back buffers to match the new terminal size.
61
61
  */
62
62
  export function resizeScreen(state) {
63
- const width = process.stdout.columns || 80;
64
- const height = process.stdout.rows || 24;
63
+ const width = Math.max(1, process.stdout.columns || 80);
64
+ const height = Math.max(1, process.stdout.rows || 24);
65
65
  const size = width * height;
66
66
  state.width = width;
67
67
  state.height = height;
package/dist/state.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG7C;AAqDD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CASvD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAahD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAO9C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAM,GAAG,MAAM,CAkDvE;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CA+D7D;AAED,4DAA4D;AAC5D,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAOpE"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAG7C;AA0DD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAmBvD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAwBhD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAiB9C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,SAAM,GAAG,MAAM,CAkDvE;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CA+D7D;AAED,4DAA4D;AAC5D,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAOpE"}
package/dist/utils.js CHANGED
@@ -5,8 +5,8 @@
5
5
  * Strips ANSI escape sequences from a string to allow accurate width measurement.
6
6
  */
7
7
  export function stripAnsi(str) {
8
- if (!str)
9
- return '';
8
+ if (!str || str.indexOf('\x1B') === -1)
9
+ return str || '';
10
10
  return str.replace(/\x1B\[[0-9;]*[a-zA-Z]/g, '');
11
11
  }
12
12
  let segmenter = null;
@@ -17,6 +17,13 @@ function getSegmenter() {
17
17
  return segmenter;
18
18
  }
19
19
  function graphemeWidth(segment) {
20
+ if (segment.length === 1) {
21
+ const cp = segment.charCodeAt(0);
22
+ if (cp >= 0x20 && cp <= 0x7e)
23
+ return 1;
24
+ if (cp <= 0x1f || cp === 0x7f)
25
+ return 0;
26
+ }
20
27
  const cp = segment.codePointAt(0);
21
28
  if (cp === undefined)
22
29
  return 0;
@@ -58,7 +65,17 @@ function graphemeWidth(segment) {
58
65
  export function stringWidthFallback(str) {
59
66
  if (!str)
60
67
  return 0;
61
- const clean = stripAnsi(str);
68
+ const clean = str.indexOf('\x1B') !== -1 ? stripAnsi(str) : str;
69
+ let isAscii = true;
70
+ for (let i = 0; i < clean.length; i++) {
71
+ const c = clean.charCodeAt(i);
72
+ if (c < 0x20 || c > 0x7e) {
73
+ isAscii = false;
74
+ break;
75
+ }
76
+ }
77
+ if (isAscii)
78
+ return clean.length;
62
79
  const seg = getSegmenter();
63
80
  let width = 0;
64
81
  for (const { segment } of seg.segment(clean)) {
@@ -77,6 +94,17 @@ export function visibleWidth(str) {
77
94
  if (lines.length > 1) {
78
95
  return Math.max(...lines.map(visibleWidth));
79
96
  }
97
+ // Fast path for printable ASCII (no escape codes, control codes, or wide chars)
98
+ let isAscii = true;
99
+ for (let i = 0; i < str.length; i++) {
100
+ const c = str.charCodeAt(i);
101
+ if (c < 0x20 || c > 0x7e) {
102
+ isAscii = false;
103
+ break;
104
+ }
105
+ }
106
+ if (isAscii)
107
+ return str.length;
80
108
  const clean = stripAnsi(str);
81
109
  if (typeof Bun !== 'undefined' && typeof Bun.stringWidth === 'function') {
82
110
  return Bun.stringWidth(clean);
@@ -87,9 +115,23 @@ export function visibleWidth(str) {
87
115
  * Returns the width of a single character or grapheme.
88
116
  */
89
117
  export function charWidth(char) {
118
+ if (char.length === 1) {
119
+ const code = char.charCodeAt(0);
120
+ if (code >= 0x20 && code <= 0x7e)
121
+ return 1;
122
+ if (code <= 0x1f || code === 0x7f)
123
+ return 0;
124
+ }
90
125
  const clean = stripAnsi(char);
91
126
  if (clean.length === 0)
92
127
  return 0;
128
+ if (clean.length === 1) {
129
+ const code = clean.charCodeAt(0);
130
+ if (code >= 0x20 && code <= 0x7e)
131
+ return 1;
132
+ if (code <= 0x1f || code === 0x7f)
133
+ return 0;
134
+ }
93
135
  if (typeof Bun !== 'undefined' && typeof Bun.stringWidth === 'function') {
94
136
  return Bun.stringWidth(clean);
95
137
  }
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zakmandhro/bunti",
3
- "version": "0.3.0",
3
+ "version": "0.5.0",
4
4
  "description": "A zero-dependency terminal layout engine for Bun and Node.js with 60fps diff rendering and an agent-optimized functional API.",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -43,12 +43,15 @@
43
43
  "bin": {
44
44
  "bunti": "dist/cli.js"
45
45
  },
46
+ "publishConfig": {
47
+ "access": "public"
48
+ },
46
49
  "engines": {
47
50
  "node": ">=22.0.0",
48
51
  "bun": ">=1.0.0"
49
52
  },
50
53
  "scripts": {
51
- "build": "rm -rf dist && tsc -p tsconfig.build.json && bun scripts/fix-esm-imports.ts && bun scripts/build-demos.ts",
54
+ "build": "bun scripts/clean.ts && tsc -p tsconfig.build.json && bun scripts/fix-esm-imports.ts && bun scripts/build-demos.ts",
52
55
  "gen:llms": "bun scripts/gen-llms.ts",
53
56
  "prepublishOnly": "bun run typecheck && bun run lint && bun run test && bun run gen:llms && bun run build",
54
57
  "test": "bun test",