@flyingrobots/bijou 4.2.0 → 4.4.1

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 (86) hide show
  1. package/README.md +39 -179
  2. package/dist/context-theme.d.ts +15 -0
  3. package/dist/context-theme.d.ts.map +1 -0
  4. package/dist/context-theme.js +23 -0
  5. package/dist/context-theme.js.map +1 -0
  6. package/dist/core/components/alert-v3.js +4 -4
  7. package/dist/core/components/alert-v3.js.map +1 -1
  8. package/dist/core/components/alert.d.ts.map +1 -1
  9. package/dist/core/components/alert.js +12 -5
  10. package/dist/core/components/alert.js.map +1 -1
  11. package/dist/core/components/badge.d.ts.map +1 -1
  12. package/dist/core/components/badge.js +38 -7
  13. package/dist/core/components/badge.js.map +1 -1
  14. package/dist/core/components/box-v3.d.ts.map +1 -1
  15. package/dist/core/components/box-v3.js +101 -26
  16. package/dist/core/components/box-v3.js.map +1 -1
  17. package/dist/core/components/braille-chart.d.ts +45 -0
  18. package/dist/core/components/braille-chart.d.ts.map +1 -0
  19. package/dist/core/components/braille-chart.js +94 -0
  20. package/dist/core/components/braille-chart.js.map +1 -0
  21. package/dist/core/components/data-viz-utils.d.ts +25 -0
  22. package/dist/core/components/data-viz-utils.d.ts.map +1 -0
  23. package/dist/core/components/data-viz-utils.js +72 -0
  24. package/dist/core/components/data-viz-utils.js.map +1 -0
  25. package/dist/core/components/index.d.ts +8 -0
  26. package/dist/core/components/index.d.ts.map +1 -1
  27. package/dist/core/components/index.js +4 -0
  28. package/dist/core/components/index.js.map +1 -1
  29. package/dist/core/components/perf-overlay.d.ts +63 -0
  30. package/dist/core/components/perf-overlay.d.ts.map +1 -0
  31. package/dist/core/components/perf-overlay.js +84 -0
  32. package/dist/core/components/perf-overlay.js.map +1 -0
  33. package/dist/core/components/preference-list.d.ts.map +1 -1
  34. package/dist/core/components/preference-list.js +63 -11
  35. package/dist/core/components/preference-list.js.map +1 -1
  36. package/dist/core/components/separator-v3.d.ts.map +1 -1
  37. package/dist/core/components/separator-v3.js +55 -15
  38. package/dist/core/components/separator-v3.js.map +1 -1
  39. package/dist/core/components/sparkline.d.ts +33 -0
  40. package/dist/core/components/sparkline.d.ts.map +1 -0
  41. package/dist/core/components/sparkline.js +45 -0
  42. package/dist/core/components/sparkline.js.map +1 -0
  43. package/dist/core/components/stats-panel.d.ts +50 -0
  44. package/dist/core/components/stats-panel.d.ts.map +1 -0
  45. package/dist/core/components/stats-panel.js +83 -0
  46. package/dist/core/components/stats-panel.js.map +1 -0
  47. package/dist/core/components/surface-text.d.ts +1 -1
  48. package/dist/core/components/surface-text.d.ts.map +1 -1
  49. package/dist/core/components/surface-text.js +80 -9
  50. package/dist/core/components/surface-text.js.map +1 -1
  51. package/dist/core/components/table-v3.d.ts.map +1 -1
  52. package/dist/core/components/table-v3.js +34 -2
  53. package/dist/core/components/table-v3.js.map +1 -1
  54. package/dist/core/components/types.d.ts +4 -4
  55. package/dist/core/components/types.d.ts.map +1 -1
  56. package/dist/core/render/differ.d.ts +12 -1
  57. package/dist/core/render/differ.d.ts.map +1 -1
  58. package/dist/core/render/differ.js +502 -11
  59. package/dist/core/render/differ.js.map +1 -1
  60. package/dist/core/render/packed-cell.d.ts +110 -0
  61. package/dist/core/render/packed-cell.d.ts.map +1 -0
  62. package/dist/core/render/packed-cell.js +301 -0
  63. package/dist/core/render/packed-cell.js.map +1 -0
  64. package/dist/core/text/grapheme.d.ts.map +1 -1
  65. package/dist/core/text/grapheme.js +17 -5
  66. package/dist/core/text/grapheme.js.map +1 -1
  67. package/dist/core/theme/presets.d.ts +9 -1
  68. package/dist/core/theme/presets.d.ts.map +1 -1
  69. package/dist/core/theme/presets.js +44 -2
  70. package/dist/core/theme/presets.js.map +1 -1
  71. package/dist/core/theme/resolve.d.ts.map +1 -1
  72. package/dist/core/theme/resolve.js +21 -1
  73. package/dist/core/theme/resolve.js.map +1 -1
  74. package/dist/core/theme/tokens.d.ts +12 -0
  75. package/dist/core/theme/tokens.d.ts.map +1 -1
  76. package/dist/index.d.ts +4 -2
  77. package/dist/index.d.ts.map +1 -1
  78. package/dist/index.js +3 -1
  79. package/dist/index.js.map +1 -1
  80. package/dist/ports/io.d.ts +17 -0
  81. package/dist/ports/io.d.ts.map +1 -1
  82. package/dist/ports/surface.d.ts +83 -2
  83. package/dist/ports/surface.d.ts.map +1 -1
  84. package/dist/ports/surface.js +319 -37
  85. package/dist/ports/surface.js.map +1 -1
  86. package/package.json +5 -1
@@ -1 +1 @@
1
- {"version":3,"file":"preference-list.js","sourceRoot":"","sources":["../../../src/core/components/preference-list.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preference-list.js","sourceRoot":"","sources":["../../../src/core/components/preference-list.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"separator-v3.d.ts","sourceRoot":"","sources":["../../../src/core/components/separator-v3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGvD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAwCxE"}
1
+ {"version":3,"file":"separator-v3.d.ts","sourceRoot":"","sources":["../../../src/core/components/separator-v3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,OAAO,EAAsB,MAAM,wBAAwB,CAAC;AAEzF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAQvD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,gBAAqB,GAAG,OAAO,CA2DxE"}
@@ -1,6 +1,10 @@
1
1
  import { createSurface } from '../../ports/surface.js';
2
2
  import { resolveSafeCtx as resolveCtx } from '../resolve-ctx.js';
3
3
  import { segmentSurfaceText, tokenToCellStyle } from './surface-text.js';
4
+ import { parseHex, encodeModifiers } from '../render/packed-cell.js';
5
+ function isPackedSurface(s) {
6
+ return 'buffer' in s && s.buffer instanceof Uint8Array;
7
+ }
4
8
  /**
5
9
  * Render a horizontal separator as a Surface for V3-native composition.
6
10
  */
@@ -15,32 +19,68 @@ export function separatorSurface(options = {}) {
15
19
  const surface = createSurface(width, 1);
16
20
  if (width === 0)
17
21
  return surface;
18
- const setBorder = (x, char) => {
19
- surface.set(x, 0, { char, ...borderStyle, empty: false });
20
- };
21
- const setPlain = (x, char) => {
22
- surface.set(x, 0, { char, empty: false });
23
- };
22
+ // Pre-parse border style for setRGB fast path
23
+ const packed = isPackedSurface(surface);
24
+ let bfgR = -1, bfgG = 0, bfgB = 0, bbgR = -1, bbgG = 0, bbgB = 0, bflags = 0;
25
+ if (packed && borderStyle.fg) {
26
+ const rgb = parseHex(borderStyle.fg);
27
+ if (rgb) {
28
+ bfgR = rgb[0];
29
+ bfgG = rgb[1];
30
+ bfgB = rgb[2];
31
+ }
32
+ }
33
+ if (packed && borderStyle.bg) {
34
+ const rgb = parseHex(borderStyle.bg);
35
+ if (rgb) {
36
+ bbgR = rgb[0];
37
+ bbgG = rgb[1];
38
+ bbgB = rgb[2];
39
+ }
40
+ }
41
+ if (packed)
42
+ bflags = encodeModifiers(borderStyle.modifiers);
43
+ const useRGB = packed && (bfgR >= 0 || borderStyle.fg === undefined);
24
44
  if (label.length === 0) {
25
- for (let x = 0; x < width; x++)
26
- setBorder(x, '\u2500');
45
+ if (useRGB) {
46
+ for (let x = 0; x < width; x++)
47
+ surface.setRGB(x, 0, '\u2500', bfgR, bfgG, bfgB, bbgR, bbgG, bbgB, bflags);
48
+ }
49
+ else {
50
+ for (let x = 0; x < width; x++)
51
+ surface.set(x, 0, { char: '\u2500', ...borderStyle, empty: false });
52
+ }
27
53
  return surface;
28
54
  }
29
55
  if (labelGraphemes.length >= width) {
30
56
  for (let x = 0; x < width; x++) {
31
- setPlain(x, labelGraphemes[x] ?? ' ');
57
+ if (useRGB)
58
+ surface.setRGB(x, 0, labelGraphemes[x] ?? ' ', -1, 0, 0, -1, 0, 0);
59
+ else
60
+ surface.set(x, 0, { char: labelGraphemes[x] ?? ' ', empty: false });
32
61
  }
33
62
  return surface;
34
63
  }
35
64
  const remaining = width - labelGraphemes.length;
36
65
  const left = Math.floor(remaining / 2);
37
66
  const right = remaining - left;
38
- for (let x = 0; x < left; x++)
39
- setBorder(x, '\u2500');
40
- for (let i = 0; i < labelGraphemes.length; i++)
41
- setPlain(left + i, labelGraphemes[i]);
42
- for (let x = 0; x < right; x++)
43
- setBorder(left + labelGraphemes.length + x, '\u2500');
67
+ if (useRGB) {
68
+ const ps = surface;
69
+ for (let x = 0; x < left; x++)
70
+ ps.setRGB(x, 0, '\u2500', bfgR, bfgG, bfgB, bbgR, bbgG, bbgB, bflags);
71
+ for (let i = 0; i < labelGraphemes.length; i++)
72
+ ps.setRGB(left + i, 0, labelGraphemes[i], -1, 0, 0, -1, 0, 0);
73
+ for (let x = 0; x < right; x++)
74
+ ps.setRGB(left + labelGraphemes.length + x, 0, '\u2500', bfgR, bfgG, bfgB, bbgR, bbgG, bbgB, bflags);
75
+ }
76
+ else {
77
+ for (let x = 0; x < left; x++)
78
+ surface.set(x, 0, { char: '\u2500', ...borderStyle, empty: false });
79
+ for (let i = 0; i < labelGraphemes.length; i++)
80
+ surface.set(left + i, 0, { char: labelGraphemes[i], empty: false });
81
+ for (let x = 0; x < right; x++)
82
+ surface.set(left + labelGraphemes.length + x, 0, { char: '\u2500', ...borderStyle, empty: false });
83
+ }
44
84
  return surface;
45
85
  }
46
86
  //# sourceMappingURL=separator-v3.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"separator-v3.js","sourceRoot":"","sources":["../../../src/core/components/separator-v3.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"separator-v3.js","sourceRoot":"","sources":["../../../src/core/components/separator-v3.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Sparkline — compact inline trend graph using Unicode block characters.
3
+ *
4
+ * Renders a sequence of numeric values as a string of block chars (▁▂▃▄▅▆▇█).
5
+ * Values are normalized between min and max (auto-detected or caller-supplied).
6
+ * Non-finite values (NaN, Infinity) are treated as 0.
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * sparkline([1, 5, 3, 8, 2, 7])
11
+ * // → '▁▅▃█▂▆'
12
+ *
13
+ * sparkline([10, 20, 30, 40], { width: 8 })
14
+ * // → '▁▁▃▃▅▅▇▇' (values interpolated to fit width)
15
+ * ```
16
+ */
17
+ import type { BijouNodeOptions } from './types.js';
18
+ export interface SparklineOptions extends BijouNodeOptions {
19
+ /** Output width in characters. Defaults to `values.length`. */
20
+ readonly width?: number;
21
+ /** Explicit minimum value for scaling. Defaults to the minimum of the sampled values. */
22
+ readonly min?: number;
23
+ /** Explicit maximum value for scaling. Defaults to the maximum of the sampled values. */
24
+ readonly max?: number;
25
+ }
26
+ /**
27
+ * Render an array of numbers as a compact sparkline string.
28
+ *
29
+ * Uses Unicode block elements ▁▂▃▄▅▆▇█ with auto-scaled
30
+ * min/max normalization. Empty input returns an empty string.
31
+ */
32
+ export declare function sparkline(values: readonly number[], options?: SparklineOptions): string;
33
+ //# sourceMappingURL=sparkline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sparkline.d.ts","sourceRoot":"","sources":["../../../src/core/components/sparkline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAKnD,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,+DAA+D;IAC/D,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,yFAAyF;IACzF,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,yFAAyF;IACzF,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,GAAE,gBAAqB,GAAG,MAAM,CAoB3F"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Sparkline — compact inline trend graph using Unicode block characters.
3
+ *
4
+ * Renders a sequence of numeric values as a string of block chars (▁▂▃▄▅▆▇█).
5
+ * Values are normalized between min and max (auto-detected or caller-supplied).
6
+ * Non-finite values (NaN, Infinity) are treated as 0.
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * sparkline([1, 5, 3, 8, 2, 7])
11
+ * // → '▁▅▃█▂▆'
12
+ *
13
+ * sparkline([10, 20, 30, 40], { width: 8 })
14
+ * // → '▁▁▃▃▅▅▇▇' (values interpolated to fit width)
15
+ * ```
16
+ */
17
+ import { safeMax, safeMin, sampleToWidth, sanitizeValues } from './data-viz-utils.js';
18
+ const BLOCKS = ['▁', '▂', '▃', '▄', '▅', '▆', '▇', '█'];
19
+ /**
20
+ * Render an array of numbers as a compact sparkline string.
21
+ *
22
+ * Uses Unicode block elements ▁▂▃▄▅▆▇█ with auto-scaled
23
+ * min/max normalization. Empty input returns an empty string.
24
+ */
25
+ export function sparkline(values, options = {}) {
26
+ if (values.length === 0)
27
+ return '';
28
+ const rawWidth = options.width ?? values.length;
29
+ const width = Math.max(0, Math.floor(rawWidth));
30
+ if (width <= 0 || !Number.isFinite(rawWidth))
31
+ return '';
32
+ const sampled = sampleToWidth(sanitizeValues(values), width);
33
+ const min = Number.isFinite(options.min) ? options.min : safeMin(sampled);
34
+ const max = Number.isFinite(options.max) ? options.max : safeMax(sampled);
35
+ const range = max - min;
36
+ let result = '';
37
+ for (let i = 0; i < sampled.length; i++) {
38
+ const v = sampled[i];
39
+ const normalized = range === 0 ? 0.5 : (v - min) / range;
40
+ const index = Math.round(normalized * (BLOCKS.length - 1));
41
+ result += BLOCKS[Math.max(0, Math.min(BLOCKS.length - 1, index))];
42
+ }
43
+ return result;
44
+ }
45
+ //# sourceMappingURL=sparkline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sparkline.js","sourceRoot":"","sources":["../../../src/core/components/sparkline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEtF,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAWxD;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,MAAyB,EAAE,UAA4B,EAAE;IACjF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEnC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC;IAChD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChD,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,EAAE,CAAC;IAExD,MAAM,OAAO,GAAG,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;IAC7D,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3E,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3E,MAAM,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC;IAExB,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;QACtB,MAAM,UAAU,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;QACzD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAE,CAAC;IACrE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Stats panel — labeled box with aligned key-value rows.
3
+ *
4
+ * Renders a titled bordered panel with left-aligned labels and
5
+ * right-aligned values. Each row can optionally include an inline
6
+ * sparkline after the value.
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const panel = statsPanelSurface([
11
+ * { label: 'FPS', value: '30' },
12
+ * { label: 'frame', value: '148', sparkline: fpsHistory },
13
+ * { label: 'heap', value: '42.1 MB' },
14
+ * ], { title: 'Perf', width: 30, ctx });
15
+ * ```
16
+ */
17
+ import { type Surface } from '../../ports/surface.js';
18
+ import type { BijouNodeOptions } from './types.js';
19
+ import type { TokenValue } from '../theme/tokens.js';
20
+ export interface StatsPanelEntry {
21
+ /** Left-aligned label. */
22
+ readonly label: string;
23
+ /** Right-aligned value. */
24
+ readonly value: string;
25
+ /** Optional time-series data rendered as an inline sparkline after the value. */
26
+ readonly sparkline?: readonly number[];
27
+ /** Optional label color override. */
28
+ readonly labelToken?: TokenValue;
29
+ /** Optional value color override. */
30
+ readonly valueToken?: TokenValue;
31
+ }
32
+ export interface StatsPanelOptions extends BijouNodeOptions {
33
+ /** Panel title shown in the top border. */
34
+ readonly title?: string;
35
+ /** Total width of the panel including borders. Required. */
36
+ readonly width: number;
37
+ /** Border color token. */
38
+ readonly borderToken?: TokenValue;
39
+ /** Background color token. */
40
+ readonly bgToken?: TokenValue;
41
+ /** Token applied to labels by default. */
42
+ readonly labelToken?: TokenValue;
43
+ /** Token applied to values by default. */
44
+ readonly valueToken?: TokenValue;
45
+ }
46
+ /**
47
+ * Render a stats panel as a bordered box with aligned key-value rows.
48
+ */
49
+ export declare function statsPanelSurface(entries: readonly StatsPanelEntry[], options: StatsPanelOptions): Surface;
50
+ //# sourceMappingURL=stats-panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats-panel.d.ts","sourceRoot":"","sources":["../../../src/core/components/stats-panel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,WAAW,eAAe;IAC9B,0BAA0B;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,2BAA2B;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,iFAAiF;IACjF,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,qCAAqC;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC,qCAAqC;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;CAClC;AAED,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACzD,2CAA2C;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,4DAA4D;IAC5D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,0BAA0B;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC;IAClC,8BAA8B;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC;IAC9B,0CAA0C;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC,0CAA0C;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;CAClC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,SAAS,eAAe,EAAE,EACnC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CA6DT"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Stats panel — labeled box with aligned key-value rows.
3
+ *
4
+ * Renders a titled bordered panel with left-aligned labels and
5
+ * right-aligned values. Each row can optionally include an inline
6
+ * sparkline after the value.
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const panel = statsPanelSurface([
11
+ * { label: 'FPS', value: '30' },
12
+ * { label: 'frame', value: '148', sparkline: fpsHistory },
13
+ * { label: 'heap', value: '42.1 MB' },
14
+ * ], { title: 'Perf', width: 30, ctx });
15
+ * ```
16
+ */
17
+ import { boxSurface } from './box-v3.js';
18
+ import { sparkline } from './sparkline.js';
19
+ import { tokenToCellStyle, createSegmentSurface } from './surface-text.js';
20
+ import { createSurface } from '../../ports/surface.js';
21
+ import { resolveSafeCtx as resolveCtx } from '../resolve-ctx.js';
22
+ /**
23
+ * Render a stats panel as a bordered box with aligned key-value rows.
24
+ */
25
+ export function statsPanelSurface(entries, options) {
26
+ const ctx = resolveCtx(options.ctx);
27
+ const width = Math.max(4, options.width);
28
+ // Inner width = total - 2 borders - 2 padding chars.
29
+ const innerWidth = width - 4;
30
+ if (entries.length === 0 || innerWidth <= 0) {
31
+ return boxSurface('', { width, title: options.title, borderToken: options.borderToken, bgToken: options.bgToken, ctx });
32
+ }
33
+ // Compute column widths.
34
+ let maxLabelLen = 0;
35
+ for (const e of entries) {
36
+ if (e.label.length > maxLabelLen)
37
+ maxLabelLen = e.label.length;
38
+ }
39
+ const gap = 1;
40
+ // Build each row as a surface with styled segments.
41
+ const rowSurfaces = [];
42
+ for (const entry of entries) {
43
+ const labelTok = entry.labelToken ?? options.labelToken;
44
+ const valueTok = entry.valueToken ?? options.valueToken;
45
+ const labelStyle = tokenToCellStyle(labelTok);
46
+ const valueStyle = tokenToCellStyle(valueTok);
47
+ const paddedLabel = entry.label.padEnd(maxLabelLen);
48
+ const segments = [
49
+ { text: paddedLabel, style: labelStyle },
50
+ { text: ' '.repeat(gap), style: {} },
51
+ ];
52
+ // Value + optional sparkline (only if it fits within the inner width).
53
+ const sparkData = entry.sparkline;
54
+ const sparkFits = sparkData && sparkData.length > 0
55
+ && innerWidth - maxLabelLen - gap - entry.value.length - 1 > 0;
56
+ if (sparkFits) {
57
+ const sparkWidth = innerWidth - maxLabelLen - gap - entry.value.length - 1;
58
+ const sparkStr = sparkline(sparkData, { width: sparkWidth });
59
+ segments.push({ text: entry.value, style: valueStyle });
60
+ segments.push({ text: ' ', style: {} });
61
+ segments.push({ text: sparkStr, style: valueStyle });
62
+ }
63
+ else {
64
+ segments.push({ text: entry.value, style: valueStyle });
65
+ }
66
+ rowSurfaces.push(createSegmentSurface(segments));
67
+ }
68
+ // Compose rows into a single content surface.
69
+ const contentHeight = rowSurfaces.length;
70
+ const contentWidth = innerWidth;
71
+ const content = createSurface(contentWidth, contentHeight);
72
+ for (let i = 0; i < rowSurfaces.length; i++) {
73
+ content.blit(rowSurfaces[i], 0, i);
74
+ }
75
+ return boxSurface(content, {
76
+ width,
77
+ title: options.title,
78
+ borderToken: options.borderToken,
79
+ bgToken: options.bgToken,
80
+ ctx,
81
+ });
82
+ }
83
+ //# sourceMappingURL=stats-panel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats-panel.js","sourceRoot":"","sources":["../../../src/core/components/stats-panel.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { type Cell, type Surface } from '../../ports/surface.js';
2
2
  import type { TokenValue } from '../theme/tokens.js';
3
- export type CellTextStyle = Pick<Cell, 'fg' | 'bg' | 'modifiers'>;
3
+ export type CellTextStyle = Pick<Cell, 'fg' | 'bg' | 'fgRGB' | 'bgRGB' | 'modifiers'>;
4
4
  export interface SurfaceTextSegment {
5
5
  readonly text: string;
6
6
  readonly style?: CellTextStyle;
@@ -1 +1 @@
1
- {"version":3,"file":"surface-text.d.ts","sourceRoot":"","sources":["../../../src/core/components/surface-text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,IAAI,EAAE,KAAK,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,WAAW,CAAC,CAAC;AAElE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;CAChC;AAID,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,MAAuB,GAAG,MAAM,EAAE,CAS3F;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,aAAa,CAO7E;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,aAAkB,GAAG,OAAO,CAgBlF;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,SAAS,kBAAkB,EAAE,GAAG,OAAO,CAmBrF;AAED,wBAAgB,UAAU,CACxB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,aAAa,GACnB,OAAO,CAMT;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAqC3E"}
1
+ {"version":3,"file":"surface-text.d.ts","sourceRoot":"","sources":["../../../src/core/components/surface-text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,IAAI,EAAE,KAAK,OAAO,EAAsB,MAAM,wBAAwB,CAAC;AACpG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,OAAO,GAAG,OAAO,GAAG,WAAW,CAAC,CAAC;AAiCtF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;CAChC;AAOD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,MAAuB,GAAG,MAAM,EAAE,CAS3F;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,aAAa,CAa7E;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,aAAkB,GAAG,OAAO,CA+BlF;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,SAAS,kBAAkB,EAAE,GAAG,OAAO,CA+BrF;AAED,wBAAgB,UAAU,CACxB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,aAAa,GACnB,OAAO,CAMT;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAqC3E"}
@@ -1,6 +1,40 @@
1
1
  import { createSurface } from '../../ports/surface.js';
2
2
  import { graphemeClusterWidth, segmentGraphemes } from '../text/grapheme.js';
3
- const SURFACE_NARROW_OVERRIDES = new Set(['✓', '']);
3
+ import { encodeModifiers, parseHex } from '../render/packed-cell.js';
4
+ function parseNumericStyle(style) {
5
+ let fgR = 0, fgG = 0, fgB = 0, fgSet = false;
6
+ let bgR = 0, bgG = 0, bgB = 0, bgSet = false;
7
+ if (style.fg) {
8
+ const rgb = parseHex(style.fg);
9
+ if (!rgb)
10
+ return undefined;
11
+ fgR = rgb[0];
12
+ fgG = rgb[1];
13
+ fgB = rgb[2];
14
+ fgSet = true;
15
+ }
16
+ if (style.bg) {
17
+ const rgb = parseHex(style.bg);
18
+ if (!rgb)
19
+ return undefined;
20
+ bgR = rgb[0];
21
+ bgG = rgb[1];
22
+ bgB = rgb[2];
23
+ bgSet = true;
24
+ }
25
+ return {
26
+ fgR, fgG, fgB, fgSet,
27
+ bgR, bgG, bgB, bgSet,
28
+ flags: encodeModifiers(style.modifiers),
29
+ };
30
+ }
31
+ function isPackedSurface(s) {
32
+ return 'buffer' in s && s.buffer instanceof Uint8Array;
33
+ }
34
+ // Previously overrode ✓/✗ as narrow when the Dingbats range was
35
+ // blanket-classified as wide. Now isWideChar correctly excludes
36
+ // Dingbats (they're Narrow per Unicode East Asian Width).
37
+ const SURFACE_NARROW_OVERRIDES = new Set();
4
38
  export function segmentSurfaceText(text, purpose = 'Surface text') {
5
39
  const graphemes = segmentGraphemes(text ?? '');
6
40
  const wide = graphemes.find((grapheme) => graphemeClusterWidth(grapheme) !== 1 && !SURFACE_NARROW_OVERRIDES.has(grapheme));
@@ -12,11 +46,19 @@ export function segmentSurfaceText(text, purpose = 'Surface text') {
12
46
  export function tokenToCellStyle(token) {
13
47
  if (token == null)
14
48
  return {};
15
- return {
49
+ // Pass both hex string and pre-parsed RGB bytes. encodeCellIntoBuf
50
+ // in the packed surface path will prefer fgRGB/bgRGB when present,
51
+ // skipping inlineHexRGB entirely. See docs/perf/RE-017-byte-pipeline.md.
52
+ const style = {
16
53
  fg: token.hex,
17
54
  bg: token.bg,
18
55
  modifiers: token.modifiers,
19
56
  };
57
+ if (token.fgRGB)
58
+ style.fgRGB = token.fgRGB;
59
+ if (token.bgRGB)
60
+ style.bgRGB = token.bgRGB;
61
+ return style;
20
62
  }
21
63
  export function createTextSurface(text, style = {}) {
22
64
  const safeText = text ?? '';
@@ -25,10 +67,26 @@ export function createTextSurface(text, style = {}) {
25
67
  const width = lineGraphemes.reduce((max, graphemes) => Math.max(max, graphemes.length), 0);
26
68
  const height = Math.max(1, lines.length);
27
69
  const surface = createSurface(width, height);
28
- for (let y = 0; y < lines.length; y++) {
29
- const graphemes = lineGraphemes[y];
30
- for (let x = 0; x < graphemes.length; x++) {
31
- surface.set(x, y, { char: graphemes[x], ...style, empty: false });
70
+ // Fast path: use setRGB when surface is packed and style has valid hex colors
71
+ const numStyle = isPackedSurface(surface) ? parseNumericStyle(style) : undefined;
72
+ if (numStyle && isPackedSurface(surface)) {
73
+ const { fgR, fgG, fgB, bgR, bgG, bgB, flags } = numStyle;
74
+ // -1 signals "terminal default" to setRGB; fgG/fgB and bgG/bgB are ignored when fR/bR === -1
75
+ const fR = numStyle.fgSet ? fgR : -1;
76
+ const bR = numStyle.bgSet ? bgR : -1;
77
+ for (let y = 0; y < lines.length; y++) {
78
+ const graphemes = lineGraphemes[y];
79
+ for (let x = 0; x < graphemes.length; x++) {
80
+ surface.setRGB(x, y, graphemes[x], fR, fgG, fgB, bR, bgG, bgB, flags);
81
+ }
82
+ }
83
+ }
84
+ else {
85
+ for (let y = 0; y < lines.length; y++) {
86
+ const graphemes = lineGraphemes[y];
87
+ for (let x = 0; x < graphemes.length; x++) {
88
+ surface.set(x, y, { char: graphemes[x], ...style, empty: false });
89
+ }
32
90
  }
33
91
  }
34
92
  return surface;
@@ -38,15 +96,28 @@ export function createSegmentSurface(segments) {
38
96
  return createTextSurface('');
39
97
  const segmented = segments.map((segment) => ({
40
98
  style: segment.style,
99
+ numStyle: segment.style ? parseNumericStyle(segment.style) : undefined,
41
100
  graphemes: segmentSurfaceText(segment.text ?? '', 'createSegmentSurface'),
42
101
  }));
43
102
  const width = segmented.reduce((sum, segment) => sum + segment.graphemes.length, 0);
44
103
  const surface = createSurface(width, 1);
104
+ const packed = isPackedSurface(surface);
45
105
  let x = 0;
46
106
  for (const segment of segmented) {
47
- for (const char of segment.graphemes) {
48
- surface.set(x, 0, { char, ...segment.style, empty: false });
49
- x++;
107
+ const ns = packed ? segment.numStyle : undefined;
108
+ if (ns && isPackedSurface(surface)) {
109
+ const fR = ns.fgSet ? ns.fgR : -1;
110
+ const bR = ns.bgSet ? ns.bgR : -1;
111
+ for (const char of segment.graphemes) {
112
+ surface.setRGB(x, 0, char, fR, ns.fgG, ns.fgB, bR, ns.bgG, ns.bgB, ns.flags);
113
+ x++;
114
+ }
115
+ }
116
+ else {
117
+ for (const char of segment.graphemes) {
118
+ surface.set(x, 0, { char, ...segment.style, empty: false });
119
+ x++;
120
+ }
50
121
  }
51
122
  }
52
123
  return surface;
@@ -1 +1 @@
1
- {"version":3,"file":"surface-text.js","sourceRoot":"","sources":["../../../src/core/components/surface-text.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"surface-text.js","sourceRoot":"","sources":["../../../src/core/components/surface-text.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"table-v3.d.ts","sourceRoot":"","sources":["../../../src/core/components/table-v3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAI/C,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,OAAO,CAAC;AAEhD,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC;IACrE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,EAAE,EAAE,CAAC;CACrC;AAkBD;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAoIlE"}
1
+ {"version":3,"file":"table-v3.d.ts","sourceRoot":"","sources":["../../../src/core/components/table-v3.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,OAAO,EAAsB,MAAM,wBAAwB,CAAC;AAEzF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAK/C,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,OAAO,CAAC;AAEhD,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC;IACrE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,EAAE,EAAE,CAAC;CACrC;AAkBD;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAuJlE"}