@flyingrobots/bijou-tui 2.1.0 → 3.1.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 (128) hide show
  1. package/README.md +64 -21
  2. package/dist/animate.d.ts +0 -2
  3. package/dist/animate.d.ts.map +1 -1
  4. package/dist/animate.js +17 -26
  5. package/dist/animate.js.map +1 -1
  6. package/dist/app-frame-actions.d.ts +1 -5
  7. package/dist/app-frame-actions.d.ts.map +1 -1
  8. package/dist/app-frame-actions.js +21 -17
  9. package/dist/app-frame-actions.js.map +1 -1
  10. package/dist/app-frame-render.d.ts +2 -0
  11. package/dist/app-frame-render.d.ts.map +1 -1
  12. package/dist/app-frame-render.js +55 -8
  13. package/dist/app-frame-render.js.map +1 -1
  14. package/dist/app-frame-types.d.ts +9 -0
  15. package/dist/app-frame-types.d.ts.map +1 -1
  16. package/dist/app-frame-types.js +4 -4
  17. package/dist/app-frame-types.js.map +1 -1
  18. package/dist/app-frame.d.ts +39 -2
  19. package/dist/app-frame.d.ts.map +1 -1
  20. package/dist/app-frame.js +195 -31
  21. package/dist/app-frame.js.map +1 -1
  22. package/dist/canvas.d.ts +37 -25
  23. package/dist/canvas.d.ts.map +1 -1
  24. package/dist/canvas.js +116 -30
  25. package/dist/canvas.js.map +1 -1
  26. package/dist/commands.d.ts.map +1 -1
  27. package/dist/commands.js +12 -4
  28. package/dist/commands.js.map +1 -1
  29. package/dist/css/install.d.ts +4 -0
  30. package/dist/css/install.d.ts.map +1 -0
  31. package/dist/css/install.js +24 -0
  32. package/dist/css/install.js.map +1 -0
  33. package/dist/css/parser.d.ts +14 -0
  34. package/dist/css/parser.d.ts.map +1 -0
  35. package/dist/css/parser.js +92 -0
  36. package/dist/css/parser.js.map +1 -0
  37. package/dist/css/resolver.d.ts +36 -0
  38. package/dist/css/resolver.d.ts.map +1 -0
  39. package/dist/css/resolver.js +130 -0
  40. package/dist/css/resolver.js.map +1 -0
  41. package/dist/css/text-style.d.ts +17 -0
  42. package/dist/css/text-style.d.ts.map +1 -0
  43. package/dist/css/text-style.js +59 -0
  44. package/dist/css/text-style.js.map +1 -0
  45. package/dist/css/types.d.ts +27 -0
  46. package/dist/css/types.d.ts.map +1 -0
  47. package/dist/css/types.js +5 -0
  48. package/dist/css/types.js.map +1 -0
  49. package/dist/driver.d.ts +14 -7
  50. package/dist/driver.d.ts.map +1 -1
  51. package/dist/driver.js +38 -17
  52. package/dist/driver.js.map +1 -1
  53. package/dist/eventbus.d.ts +42 -3
  54. package/dist/eventbus.d.ts.map +1 -1
  55. package/dist/eventbus.js +127 -3
  56. package/dist/eventbus.js.map +1 -1
  57. package/dist/focus-area.d.ts +4 -0
  58. package/dist/focus-area.d.ts.map +1 -1
  59. package/dist/focus-area.js +11 -1
  60. package/dist/focus-area.js.map +1 -1
  61. package/dist/index.d.ts +13 -2
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +9 -0
  64. package/dist/index.js.map +1 -1
  65. package/dist/layout-v3.d.ts +10 -0
  66. package/dist/layout-v3.d.ts.map +1 -0
  67. package/dist/layout-v3.js +35 -0
  68. package/dist/layout-v3.js.map +1 -0
  69. package/dist/motion/motion.d.ts +14 -0
  70. package/dist/motion/motion.d.ts.map +1 -0
  71. package/dist/motion/motion.js +31 -0
  72. package/dist/motion/motion.js.map +1 -0
  73. package/dist/motion/reconciler.d.ts +15 -0
  74. package/dist/motion/reconciler.d.ts.map +1 -0
  75. package/dist/motion/reconciler.js +109 -0
  76. package/dist/motion/reconciler.js.map +1 -0
  77. package/dist/motion/types.d.ts +52 -0
  78. package/dist/motion/types.d.ts.map +1 -0
  79. package/dist/motion/types.js +2 -0
  80. package/dist/motion/types.js.map +1 -0
  81. package/dist/notification.d.ts +73 -0
  82. package/dist/notification.d.ts.map +1 -0
  83. package/dist/notification.js +693 -0
  84. package/dist/notification.js.map +1 -0
  85. package/dist/overlay.d.ts +3 -1
  86. package/dist/overlay.d.ts.map +1 -1
  87. package/dist/overlay.js.map +1 -1
  88. package/dist/pipeline/middleware/css.d.ts +20 -0
  89. package/dist/pipeline/middleware/css.d.ts.map +1 -0
  90. package/dist/pipeline/middleware/css.js +41 -0
  91. package/dist/pipeline/middleware/css.js.map +1 -0
  92. package/dist/pipeline/middleware/grayscale.d.ts +9 -0
  93. package/dist/pipeline/middleware/grayscale.d.ts.map +1 -0
  94. package/dist/pipeline/middleware/grayscale.js +39 -0
  95. package/dist/pipeline/middleware/grayscale.js.map +1 -0
  96. package/dist/pipeline/middleware/motion.d.ts +6 -0
  97. package/dist/pipeline/middleware/motion.d.ts.map +1 -0
  98. package/dist/pipeline/middleware/motion.js +19 -0
  99. package/dist/pipeline/middleware/motion.js.map +1 -0
  100. package/dist/pipeline/middleware/paint.d.ts +6 -0
  101. package/dist/pipeline/middleware/paint.d.ts.map +1 -0
  102. package/dist/pipeline/middleware/paint.js +21 -0
  103. package/dist/pipeline/middleware/paint.js.map +1 -0
  104. package/dist/pipeline/pipeline.d.ts +56 -0
  105. package/dist/pipeline/pipeline.d.ts.map +1 -0
  106. package/dist/pipeline/pipeline.js +45 -0
  107. package/dist/pipeline/pipeline.js.map +1 -0
  108. package/dist/runtime.d.ts +1 -1
  109. package/dist/runtime.d.ts.map +1 -1
  110. package/dist/runtime.js +180 -18
  111. package/dist/runtime.js.map +1 -1
  112. package/dist/screen.d.ts +12 -1
  113. package/dist/screen.d.ts.map +1 -1
  114. package/dist/screen.js +14 -1
  115. package/dist/screen.js.map +1 -1
  116. package/dist/subapp/mount.d.ts +67 -0
  117. package/dist/subapp/mount.d.ts.map +1 -0
  118. package/dist/subapp/mount.js +60 -0
  119. package/dist/subapp/mount.js.map +1 -0
  120. package/dist/types.d.ts +75 -8
  121. package/dist/types.d.ts.map +1 -1
  122. package/dist/types.js +9 -0
  123. package/dist/types.js.map +1 -1
  124. package/dist/view-output.d.ts +15 -0
  125. package/dist/view-output.d.ts.map +1 -0
  126. package/dist/view-output.js +53 -0
  127. package/dist/view-output.js.map +1 -0
  128. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"app-frame.js","sourceRoot":"","sources":["../src/app-frame.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-frame.js","sourceRoot":"","sources":["../src/app-frame.ts"],"names":[],"mappings":"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"}
package/dist/canvas.d.ts CHANGED
@@ -1,42 +1,54 @@
1
1
  /**
2
- * Shader-based canvas primitive for procedural character art.
2
+ * Rich shader-based canvas primitive for procedural character art.
3
3
  *
4
- * Calls a user-provided shader function for every cell in a grid,
5
- * producing a string of exactly `rows` lines, each `cols` characters wide.
4
+ * Supports high-resolution plotting via Braille and Quad characters,
5
+ * with normalized UV mapping and full color/styling support.
6
6
  */
7
- import { type BijouContext } from '@flyingrobots/bijou';
7
+ import { type Surface, type Cell } from '@flyingrobots/bijou';
8
8
  /**
9
- * Shader function called once per cell.
9
+ * Parameters passed to the shader function.
10
+ */
11
+ export interface ShaderParams {
12
+ /** Normalized horizontal coordinate (0.0 to 1.0). */
13
+ u: number;
14
+ /** Normalized vertical coordinate (0.0 to 1.0). */
15
+ v: number;
16
+ /** Animation time value in seconds. */
17
+ time: number;
18
+ /** Custom data bag passed to the shader. */
19
+ uniforms: Record<string, any>;
20
+ }
21
+ /**
22
+ * Shader function called per "pixel" (cell or sub-pixel).
10
23
  *
11
- * @param x Column index (0-based).
12
- * @param y Row index (0-based).
13
- * @param cols Total number of columns.
14
- * @param rows Total number of rows.
15
- * @param time Animation time value.
16
- * @returns A single character (or string — only the first code point is used).
24
+ * Returns a Cell defining the character and style.
25
+ * In high-res modes (Braille/Quad), the character is treated as a boolean
26
+ * (non-space = on) and styling is taken from the first non-space sub-pixel.
17
27
  */
18
- export type ShaderFn = (x: number, y: number, cols: number, rows: number, time: number) => string;
28
+ export type ShaderFn = (params: ShaderParams) => Cell | string;
29
+ /**
30
+ * Resolution modes for the canvas.
31
+ */
32
+ export type CanvasResolution = 'cell' | 'quad' | 'braille';
19
33
  /**
20
34
  * Options for the {@link canvas} renderer.
21
35
  */
22
36
  export interface CanvasOptions {
23
37
  /** Animation time value passed to the shader. Default: 0. */
24
38
  time?: number;
25
- /** Bijou context for mode detection. */
26
- ctx?: BijouContext;
39
+ /** Plotting resolution. Default: 'cell'. */
40
+ resolution?: CanvasResolution;
41
+ /** Custom data passed to the shader. */
42
+ uniforms?: Record<string, any>;
27
43
  }
28
44
  /**
29
- * Render a character grid by calling `shader(x, y, cols, rows, time)` for
30
- * every cell. Return a string of exactly `rows` lines, each `cols` chars wide.
31
- *
32
- * In pipe or accessible mode, return empty string (no visual noise).
33
- * Return empty string when cols or rows are <= 0.
45
+ * Render procedural art using a fragment shader.
34
46
  *
35
- * @param cols - Number of columns (grid width).
36
- * @param rows - Number of rows (grid height).
37
- * @param shader - Function called once per cell to produce a character.
38
- * @param options - Optional canvas settings (time, context).
39
- * @returns Rendered grid string with lines joined by newlines, or empty string.
47
+ * @param cols - Grid width in columns.
48
+ * @param rows - Grid height in rows.
49
+ * @param shader - Function called for every pixel/sub-pixel.
50
+ * @param options - Canvas configuration.
51
+ * @returns A Surface containing the rendered art.
40
52
  */
41
- export declare function canvas(cols: number, rows: number, shader: ShaderFn, options?: CanvasOptions): string;
53
+ export declare function canvas(cols: number, rows: number, shader: ShaderFn, options?: CanvasOptions): Surface;
42
54
  //# sourceMappingURL=canvas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../src/canvas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAqB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAE3E;;;;;;;;;GASG;AACH,MAAM,MAAM,QAAQ,GAAG,CACrB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,KACT,MAAM,CAAC;AAEZ;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,6DAA6D;IAC7D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,GAAG,CAAC,EAAE,YAAY,CAAC;CACpB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,QAAQ,EAChB,OAAO,CAAC,EAAE,aAAa,GACtB,MAAM,CAqBR"}
1
+ {"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../src/canvas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAiB,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAE7E;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,qDAAqD;IACrD,CAAC,EAAE,MAAM,CAAC;IACV,mDAAmD;IACnD,CAAC,EAAE,MAAM,CAAC;IACV,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC/B;AAED;;;;;;GAMG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAAG,MAAM,CAAC;AAE/D;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,6DAA6D;IAC7D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED;;;;;;;;GAQG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,QAAQ,EAChB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAmBT"}
package/dist/canvas.js CHANGED
@@ -1,41 +1,127 @@
1
1
  /**
2
- * Shader-based canvas primitive for procedural character art.
2
+ * Rich shader-based canvas primitive for procedural character art.
3
3
  *
4
- * Calls a user-provided shader function for every cell in a grid,
5
- * producing a string of exactly `rows` lines, each `cols` characters wide.
4
+ * Supports high-resolution plotting via Braille and Quad characters,
5
+ * with normalized UV mapping and full color/styling support.
6
6
  */
7
- import { getDefaultContext } from '@flyingrobots/bijou';
7
+ import { createSurface } from '@flyingrobots/bijou';
8
8
  /**
9
- * Render a character grid by calling `shader(x, y, cols, rows, time)` for
10
- * every cell. Return a string of exactly `rows` lines, each `cols` chars wide.
9
+ * Render procedural art using a fragment shader.
11
10
  *
12
- * In pipe or accessible mode, return empty string (no visual noise).
13
- * Return empty string when cols or rows are <= 0.
14
- *
15
- * @param cols - Number of columns (grid width).
16
- * @param rows - Number of rows (grid height).
17
- * @param shader - Function called once per cell to produce a character.
18
- * @param options - Optional canvas settings (time, context).
19
- * @returns Rendered grid string with lines joined by newlines, or empty string.
11
+ * @param cols - Grid width in columns.
12
+ * @param rows - Grid height in rows.
13
+ * @param shader - Function called for every pixel/sub-pixel.
14
+ * @param options - Canvas configuration.
15
+ * @returns A Surface containing the rendered art.
20
16
  */
21
- export function canvas(cols, rows, shader, options) {
17
+ export function canvas(cols, rows, shader, options = {}) {
18
+ const { resolution = 'cell', time = 0, uniforms = {} } = options;
19
+ const surface = createSurface(cols, rows);
22
20
  if (cols <= 0 || rows <= 0)
23
- return '';
24
- const ctx = options?.ctx ?? getDefaultContext();
25
- if (ctx.mode === 'pipe' || ctx.mode === 'accessible')
26
- return '';
27
- // static mode renders normally (same as box/table)
28
- const time = options?.time ?? 0;
29
- const lines = [];
30
- for (let y = 0; y < rows; y++) {
31
- let line = '';
32
- for (let x = 0; x < cols; x++) {
33
- const ch = shader(x, y, cols, rows, time);
34
- // Take first code point, or space if empty
35
- line += ch.length > 0 ? ([...ch][0] ?? ' ') : ' ';
21
+ return surface;
22
+ switch (resolution) {
23
+ case 'cell':
24
+ renderCellResolution(surface, shader, time, uniforms);
25
+ break;
26
+ case 'quad':
27
+ renderQuadResolution(surface, shader, time, uniforms);
28
+ break;
29
+ case 'braille':
30
+ renderBrailleResolution(surface, shader, time, uniforms);
31
+ break;
32
+ }
33
+ return surface;
34
+ }
35
+ function renderCellResolution(surface, shader, time, uniforms) {
36
+ const { width, height } = surface;
37
+ for (let y = 0; y < height; y++) {
38
+ for (let x = 0; x < width; x++) {
39
+ const cell = shader({
40
+ u: x / (width - 1 || 1),
41
+ v: y / (height - 1 || 1),
42
+ time,
43
+ uniforms
44
+ });
45
+ surface.set(x, y, typeof cell === 'string' ? { char: cell } : cell);
46
+ }
47
+ }
48
+ }
49
+ function renderQuadResolution(surface, shader, time, uniforms) {
50
+ const { width, height } = surface;
51
+ const subW = width * 2;
52
+ const subH = height * 2;
53
+ const QUAD_CHARS = {
54
+ 0: ' ', 1: '▘', 2: '▝', 3: '▀',
55
+ 4: '▖', 5: '▌', 6: '▞', 7: '▛',
56
+ 8: '▗', 9: '▚', 10: '▐', 11: '▜',
57
+ 12: '▄', 13: '▙', 14: '▟', 15: '█'
58
+ };
59
+ for (let y = 0; y < height; y++) {
60
+ for (let x = 0; x < width; x++) {
61
+ let mask = 0;
62
+ let firstStyledCell = null;
63
+ for (let sy = 0; sy < 2; sy++) {
64
+ for (let sx = 0; sx < 2; sx++) {
65
+ const px = x * 2 + sx;
66
+ const py = y * 2 + sy;
67
+ const result = shader({
68
+ u: px / (subW - 1 || 1),
69
+ v: py / (subH - 1 || 1),
70
+ time,
71
+ uniforms
72
+ });
73
+ const cell = typeof result === 'string' ? { char: result } : result;
74
+ if (cell.char !== ' ') {
75
+ mask |= (1 << (sy * 2 + sx));
76
+ if (!firstStyledCell)
77
+ firstStyledCell = cell;
78
+ }
79
+ }
80
+ }
81
+ surface.set(x, y, {
82
+ ...(firstStyledCell || { char: ' ' }),
83
+ char: QUAD_CHARS[mask] || ' '
84
+ });
85
+ }
86
+ }
87
+ }
88
+ function renderBrailleResolution(surface, shader, time, uniforms) {
89
+ const { width, height } = surface;
90
+ const subW = width * 2;
91
+ const subH = height * 4;
92
+ const DOT_MAP = [
93
+ [0x01, 0x08],
94
+ [0x02, 0x10],
95
+ [0x04, 0x20],
96
+ [0x40, 0x80]
97
+ ];
98
+ for (let y = 0; y < height; y++) {
99
+ for (let x = 0; x < width; x++) {
100
+ let code = 0;
101
+ let firstStyledCell = null;
102
+ for (let sy = 0; sy < 4; sy++) {
103
+ for (let sx = 0; sx < 2; sx++) {
104
+ const px = x * 2 + sx;
105
+ const py = y * 4 + sy;
106
+ const result = shader({
107
+ u: px / (subW - 1 || 1),
108
+ v: py / (subH - 1 || 1),
109
+ time,
110
+ uniforms
111
+ });
112
+ const cell = typeof result === 'string' ? { char: result } : result;
113
+ if (cell.char !== ' ') {
114
+ code |= DOT_MAP[sy][sx];
115
+ if (!firstStyledCell)
116
+ firstStyledCell = cell;
117
+ }
118
+ }
119
+ }
120
+ surface.set(x, y, {
121
+ ...(firstStyledCell || { char: ' ' }),
122
+ char: String.fromCharCode(0x2800 + code)
123
+ });
36
124
  }
37
- lines.push(line);
38
125
  }
39
- return lines.join('\n');
40
126
  }
41
127
  //# sourceMappingURL=canvas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"canvas.js","sourceRoot":"","sources":["../src/canvas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,iBAAiB,EAAqB,MAAM,qBAAqB,CAAC;AA8B3E;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,MAAM,CACpB,IAAY,EACZ,IAAY,EACZ,MAAgB,EAChB,OAAuB;IAEvB,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAEtC,MAAM,GAAG,GAAG,OAAO,EAAE,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAChD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY;QAAE,OAAO,EAAE,CAAC;IAChE,mDAAmD;IAEnD,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,CAAC,CAAC;IAChC,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9B,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1C,2CAA2C;YAC3C,IAAI,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACpD,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"canvas.js","sourceRoot":"","sources":["../src/canvas.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,KAAK,GAAG,EAAmB,MAAM,YAAY,CAAC;AAE7D;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAEhC;AAED;;;;;;;GAOG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAKlD;AAED;;;;;;;;;GASG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAEpD"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,KAAK,GAAG,EAAmB,MAAM,YAAY,CAAC;AAE7D;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAEhC;AAED;;;;;;;GAOG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAWlD;AAED;;;;;;;;;GASG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAEpD"}
package/dist/commands.js CHANGED
@@ -14,7 +14,7 @@ import { QUIT } from './types.js';
14
14
  * @returns A command that resolves to the {@link QUIT} sentinel.
15
15
  */
16
16
  export function quit() {
17
- return async (_emit) => QUIT;
17
+ return async (_emit, _caps) => QUIT;
18
18
  }
19
19
  /**
20
20
  * Create a command that delivers a message after a delay.
@@ -25,9 +25,17 @@ export function quit() {
25
25
  * @returns A one-shot timer command.
26
26
  */
27
27
  export function tick(ms, msg) {
28
- return (_emit) => new Promise((resolve) => {
29
- setTimeout(() => resolve(msg), ms);
30
- });
28
+ return async (_emit, caps) => {
29
+ if (caps.sleep) {
30
+ await caps.sleep(ms);
31
+ }
32
+ else {
33
+ await new Promise((resolve) => {
34
+ setTimeout(resolve, ms);
35
+ });
36
+ }
37
+ return msg;
38
+ };
31
39
  }
32
40
  /**
33
41
  * Group multiple commands into an array.
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAA6B,MAAM,YAAY,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,UAAU,IAAI;IAClB,OAAO,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,IAAkB,CAAC;AAC7C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,IAAI,CAAI,EAAU,EAAE,GAAM;IACxC,OAAO,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,EAAE;QACzB,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,KAAK,CAAI,GAAG,IAAc;IACxC,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAA6B,MAAM,YAAY,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,UAAU,IAAI;IAClB,OAAO,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,IAAkB,CAAC;AACpD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,IAAI,CAAI,EAAU,EAAE,GAAM;IACxC,OAAO,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC3B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAClC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC1B,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,KAAK,CAAI,GAAG,IAAc;IACxC,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { BijouContext } from '@flyingrobots/bijou';
2
+ import type { BCSSSheet } from './types.js';
3
+ export declare function installBCSSResolver(ctx: BijouContext, css?: string): BCSSSheet | undefined;
4
+ //# sourceMappingURL=install.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/css/install.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,qBAAqB,CAAC;AAGnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,YAAY,EACjB,GAAG,CAAC,EAAE,MAAM,GACX,SAAS,GAAG,SAAS,CAoBvB"}
@@ -0,0 +1,24 @@
1
+ import { parseBCSS } from './parser.js';
2
+ import { resolveStyles } from './resolver.js';
3
+ export function installBCSSResolver(ctx, css) {
4
+ if (css == null || css.trim().length === 0)
5
+ return undefined;
6
+ const sheet = parseBCSS(css);
7
+ const themeMode = detectThemeMode(ctx);
8
+ ctx.resolveBCSS = (identity) => {
9
+ return resolveStyles(identity, sheet, {
10
+ width: ctx.runtime.columns,
11
+ height: ctx.runtime.rows,
12
+ }, ctx.tokenGraph, themeMode);
13
+ };
14
+ return sheet;
15
+ }
16
+ function detectThemeMode(ctx) {
17
+ const colorFgBg = ctx.runtime.env('COLORFGBG')?.split(';').pop();
18
+ if (colorFgBg === '15')
19
+ return 'light';
20
+ if (ctx.runtime.env('TERM_PROGRAM') === 'Apple_Terminal')
21
+ return 'light';
22
+ return 'dark';
23
+ }
24
+ //# sourceMappingURL=install.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/css/install.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAG9C,MAAM,UAAU,mBAAmB,CACjC,GAAiB,EACjB,GAAY;IAEZ,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAE7D,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAEtC,GAAW,CAAC,WAAW,GAAG,CAAC,QAA2D,EAAE,EAAE;QACzF,OAAO,aAAa,CAClB,QAAQ,EACR,KAAK,EACL;YACE,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO;YAC1B,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI;SACzB,EACD,GAAG,CAAC,UAAU,EACd,SAAS,CACV,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CAAC,GAAiB;IACxC,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IACjE,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,OAAO,CAAC;IACvC,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,gBAAgB;QAAE,OAAO,OAAO,CAAC;IACzE,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { BCSSSheet } from './types.js';
2
+ /**
3
+ * A lightweight, zero-dependency CSS parser for Bijou TUI.
4
+ *
5
+ * Supports a subset of CSS:
6
+ * - Simple selectors: .class, #id, Type
7
+ * - Multiple selectors: .a, .b { ... }
8
+ * - Declarations: property: value;
9
+ * - !important
10
+ * - Basic media queries: @media (width < 80) { ... }
11
+ * - Comments: /* ... * /
12
+ */
13
+ export declare function parseBCSS(css: string): BCSSSheet;
14
+ //# sourceMappingURL=parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/css/parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAA2C,MAAM,YAAY,CAAC;AAErF;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAwChD"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * A lightweight, zero-dependency CSS parser for Bijou TUI.
3
+ *
4
+ * Supports a subset of CSS:
5
+ * - Simple selectors: .class, #id, Type
6
+ * - Multiple selectors: .a, .b { ... }
7
+ * - Declarations: property: value;
8
+ * - !important
9
+ * - Basic media queries: @media (width < 80) { ... }
10
+ * - Comments: /* ... * /
11
+ */
12
+ export function parseBCSS(css) {
13
+ const sheet = { rules: [], mediaQueries: [] };
14
+ // 1. Strip comments
15
+ const cleanCss = css.replace(/\/\*[\s\S]*?\*\//g, '');
16
+ // 2. Tokenize into blocks (rules or media queries)
17
+ // This is a naive split that looks for { } pairs
18
+ let pos = 0;
19
+ while (pos < cleanCss.length) {
20
+ const nextBrace = cleanCss.indexOf('{', pos);
21
+ if (nextBrace === -1)
22
+ break;
23
+ const head = cleanCss.substring(pos, nextBrace).trim();
24
+ // Find matching closing brace
25
+ let depth = 1;
26
+ let end = nextBrace + 1;
27
+ while (depth > 0 && end < cleanCss.length) {
28
+ if (cleanCss[end] === '{')
29
+ depth++;
30
+ else if (cleanCss[end] === '}')
31
+ depth--;
32
+ end++;
33
+ }
34
+ const body = cleanCss.substring(nextBrace + 1, end - 1).trim();
35
+ if (head.startsWith('@media')) {
36
+ const condition = head.replace('@media', '').trim();
37
+ sheet.mediaQueries.push({
38
+ condition,
39
+ rules: parseRules(body),
40
+ });
41
+ }
42
+ else {
43
+ sheet.rules.push(...parseRules(head + ' { ' + body + ' }'));
44
+ }
45
+ pos = end;
46
+ }
47
+ return sheet;
48
+ }
49
+ function parseRules(css) {
50
+ const rules = [];
51
+ // Look for selector { decls }
52
+ const regex = /([^{]+)\{([^}]+)\}/g;
53
+ let match;
54
+ while ((match = regex.exec(css)) !== null) {
55
+ const rawSelectors = match[1].split(',').map(s => s.trim()).filter(Boolean);
56
+ const rawDecls = match[2].split(';').map(d => d.trim()).filter(Boolean);
57
+ const selectors = rawSelectors.map(parseSelector);
58
+ const declarations = rawDecls.map(parseDeclaration);
59
+ rules.push({ selectors, declarations });
60
+ }
61
+ return rules;
62
+ }
63
+ function parseSelector(raw) {
64
+ const selector = { classes: [], raw };
65
+ // Naive parser for .class, #id, Type
66
+ // Note: Doesn't handle combined selectors like "Type.class" perfectly yet,
67
+ // but enough for basic TUI usage.
68
+ const tokens = raw.split(/(?=[.#])/);
69
+ for (const token of tokens) {
70
+ if (token.startsWith('.')) {
71
+ selector.classes.push(token.substring(1));
72
+ }
73
+ else if (token.startsWith('#')) {
74
+ selector.id = token.substring(1);
75
+ }
76
+ else {
77
+ selector.type = token.trim();
78
+ }
79
+ }
80
+ return selector;
81
+ }
82
+ function parseDeclaration(raw) {
83
+ const parts = raw.split(':');
84
+ const property = parts[0].trim().toLowerCase();
85
+ let value = parts.slice(1).join(':').trim();
86
+ const important = value.endsWith('!important');
87
+ if (important) {
88
+ value = value.replace('!important', '').trim();
89
+ }
90
+ return { property, value, important };
91
+ }
92
+ //# sourceMappingURL=parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/css/parser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { BCSSSheet } from './types.js';
2
+ import type { TokenGraph, ThemeMode } from '@flyingrobots/bijou';
3
+ /**
4
+ * Metadata for a component used to match CSS selectors.
5
+ */
6
+ export interface ComponentIdentity {
7
+ type?: string;
8
+ id?: string;
9
+ classes?: string[];
10
+ }
11
+ /**
12
+ * Resolved styles for a component.
13
+ */
14
+ export type ResolvedStyles = Record<string, string>;
15
+ /**
16
+ * Resolves the final styles for a component based on a CSS sheet and terminal dimensions.
17
+ *
18
+ * @param identity - The component's identity (type, id, classes).
19
+ * @param sheet - The parsed BCSS sheet.
20
+ * @param terminal - Current terminal dimensions for media query matching.
21
+ * @param graph - The TokenGraph for resolving var() references.
22
+ * @param mode - The theme mode (light/dark).
23
+ * @returns A record of computed style properties.
24
+ */
25
+ export declare function resolveStyles(identity: ComponentIdentity, sheet: BCSSSheet, terminal: {
26
+ width: number;
27
+ height: number;
28
+ }, graph?: TokenGraph, mode?: ThemeMode): ResolvedStyles;
29
+ /**
30
+ * Evaluate a basic media query condition like "(width < 80)" or "(height >= 24)".
31
+ */
32
+ export declare function matchesMediaQuery(condition: string, terminal: {
33
+ width: number;
34
+ height: number;
35
+ }): boolean;
36
+ //# sourceMappingURL=resolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/css/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAA0B,MAAM,YAAY,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEpD;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC3C,KAAK,CAAC,EAAE,UAAU,EAClB,IAAI,GAAE,SAAkB,GACvB,cAAc,CA0ChB;AAoED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAmBzG"}