@flyingrobots/bijou 4.4.1 → 5.0.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.
- package/README.md +9 -1
- package/dist/adapters/test/index.d.ts.map +1 -1
- package/dist/adapters/test/index.js +1 -3
- package/dist/adapters/test/index.js.map +1 -1
- package/dist/adapters/test/runtime.d.ts.map +1 -1
- package/dist/adapters/test/runtime.js +4 -3
- package/dist/adapters/test/runtime.js.map +1 -1
- package/dist/context-theme.d.ts +25 -0
- package/dist/context-theme.d.ts.map +1 -1
- package/dist/context-theme.js +19 -0
- package/dist/context-theme.js.map +1 -1
- package/dist/context.d.ts +13 -1
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +24 -3
- package/dist/context.js.map +1 -1
- package/dist/core/components/alert-v3.d.ts.map +1 -1
- package/dist/core/components/alert-v3.js +5 -4
- package/dist/core/components/alert-v3.js.map +1 -1
- package/dist/core/components/alert.d.ts.map +1 -1
- package/dist/core/components/alert.js +7 -8
- package/dist/core/components/alert.js.map +1 -1
- package/dist/core/components/badge.d.ts.map +1 -1
- package/dist/core/components/badge.js +19 -18
- package/dist/core/components/badge.js.map +1 -1
- package/dist/core/components/box-v3.d.ts.map +1 -1
- package/dist/core/components/box-v3.js +29 -29
- package/dist/core/components/box-v3.js.map +1 -1
- package/dist/core/components/dag-edges.d.ts +21 -4
- package/dist/core/components/dag-edges.d.ts.map +1 -1
- package/dist/core/components/dag-edges.js +79 -16
- package/dist/core/components/dag-edges.js.map +1 -1
- package/dist/core/components/dag-layout.d.ts +3 -4
- package/dist/core/components/dag-layout.d.ts.map +1 -1
- package/dist/core/components/dag-layout.js +42 -9
- package/dist/core/components/dag-layout.js.map +1 -1
- package/dist/core/components/dag-render.d.ts +3 -2
- package/dist/core/components/dag-render.d.ts.map +1 -1
- package/dist/core/components/dag-render.js +20 -37
- package/dist/core/components/dag-render.js.map +1 -1
- package/dist/core/components/dag.d.ts +7 -4
- package/dist/core/components/dag.d.ts.map +1 -1
- package/dist/core/components/dag.js.map +1 -1
- package/dist/core/components/explainability.d.ts.map +1 -1
- package/dist/core/components/explainability.js +30 -87
- package/dist/core/components/explainability.js.map +1 -1
- package/dist/core/components/guided-flow.d.ts +32 -0
- package/dist/core/components/guided-flow.d.ts.map +1 -0
- package/dist/core/components/guided-flow.js +131 -0
- package/dist/core/components/guided-flow.js.map +1 -0
- package/dist/core/components/hyperlink.d.ts.map +1 -1
- package/dist/core/components/hyperlink.js +7 -4
- package/dist/core/components/hyperlink.js.map +1 -1
- package/dist/core/components/index.d.ts +4 -2
- package/dist/core/components/index.d.ts.map +1 -1
- package/dist/core/components/index.js +1 -0
- package/dist/core/components/index.js.map +1 -1
- package/dist/core/components/markdown-parse.d.ts +4 -0
- package/dist/core/components/markdown-parse.d.ts.map +1 -1
- package/dist/core/components/markdown-parse.js +66 -2
- package/dist/core/components/markdown-parse.js.map +1 -1
- package/dist/core/components/markdown-render.d.ts.map +1 -1
- package/dist/core/components/markdown-render.js +220 -14
- package/dist/core/components/markdown-render.js.map +1 -1
- package/dist/core/components/markdown.d.ts +4 -3
- package/dist/core/components/markdown.d.ts.map +1 -1
- package/dist/core/components/markdown.js +6 -5
- package/dist/core/components/markdown.js.map +1 -1
- package/dist/core/components/paginator.d.ts.map +1 -1
- package/dist/core/components/paginator.js +5 -3
- package/dist/core/components/paginator.js.map +1 -1
- package/dist/core/components/perf-overlay.d.ts.map +1 -1
- package/dist/core/components/perf-overlay.js +3 -2
- package/dist/core/components/perf-overlay.js.map +1 -1
- package/dist/core/components/preference-list.d.ts.map +1 -1
- package/dist/core/components/preference-list.js +75 -37
- package/dist/core/components/preference-list.js.map +1 -1
- package/dist/core/components/progress.d.ts.map +1 -1
- package/dist/core/components/progress.js +4 -3
- package/dist/core/components/progress.js.map +1 -1
- package/dist/core/components/separator-v3.d.ts.map +1 -1
- package/dist/core/components/separator-v3.js +11 -11
- package/dist/core/components/separator-v3.js.map +1 -1
- package/dist/core/components/separator.d.ts.map +1 -1
- package/dist/core/components/separator.js +4 -1
- package/dist/core/components/separator.js.map +1 -1
- package/dist/core/components/skeleton.d.ts.map +1 -1
- package/dist/core/components/skeleton.js +3 -2
- package/dist/core/components/skeleton.js.map +1 -1
- package/dist/core/components/surface-text.d.ts +7 -0
- package/dist/core/components/surface-text.d.ts.map +1 -1
- package/dist/core/components/surface-text.js +33 -25
- package/dist/core/components/surface-text.js.map +1 -1
- package/dist/core/components/table-v3.d.ts +5 -2
- package/dist/core/components/table-v3.d.ts.map +1 -1
- package/dist/core/components/table-v3.js +26 -16
- package/dist/core/components/table-v3.js.map +1 -1
- package/dist/core/components/table.d.ts +16 -2
- package/dist/core/components/table.d.ts.map +1 -1
- package/dist/core/components/table.js +136 -18
- package/dist/core/components/table.js.map +1 -1
- package/dist/core/forms/filter-interactive.d.ts.map +1 -1
- package/dist/core/forms/filter-interactive.js +2 -4
- package/dist/core/forms/filter-interactive.js.map +1 -1
- package/dist/core/forms/multiselect.d.ts.map +1 -1
- package/dist/core/forms/multiselect.js +2 -4
- package/dist/core/forms/multiselect.js.map +1 -1
- package/dist/core/forms/note.d.ts.map +1 -1
- package/dist/core/forms/note.js +2 -1
- package/dist/core/forms/note.js.map +1 -1
- package/dist/core/forms/select.d.ts.map +1 -1
- package/dist/core/forms/select.js +2 -4
- package/dist/core/forms/select.js.map +1 -1
- package/dist/core/forms/textarea-editor.d.ts.map +1 -1
- package/dist/core/forms/textarea-editor.js +7 -5
- package/dist/core/forms/textarea-editor.js.map +1 -1
- package/dist/core/layout/geometry.d.ts +39 -0
- package/dist/core/layout/geometry.d.ts.map +1 -0
- package/dist/core/layout/geometry.js +201 -0
- package/dist/core/layout/geometry.js.map +1 -0
- package/dist/core/numeric.d.ts +16 -0
- package/dist/core/numeric.d.ts.map +1 -0
- package/dist/core/numeric.js +37 -0
- package/dist/core/numeric.js.map +1 -0
- package/dist/core/render/differ.d.ts.map +1 -1
- package/dist/core/render/differ.js +15 -13
- package/dist/core/render/differ.js.map +1 -1
- package/dist/core/runtime-viewport.d.ts.map +1 -1
- package/dist/core/runtime-viewport.js +2 -3
- package/dist/core/runtime-viewport.js.map +1 -1
- package/dist/core/text/grapheme.d.ts +51 -0
- package/dist/core/text/grapheme.d.ts.map +1 -1
- package/dist/core/text/grapheme.js +68 -0
- package/dist/core/text/grapheme.js.map +1 -1
- package/dist/core/text/icon-presentation.d.ts +10 -0
- package/dist/core/text/icon-presentation.d.ts.map +1 -0
- package/dist/core/text/icon-presentation.js +12 -0
- package/dist/core/text/icon-presentation.js.map +1 -0
- package/dist/core/text/index.d.ts +2 -1
- package/dist/core/text/index.d.ts.map +1 -1
- package/dist/core/text/index.js +2 -1
- package/dist/core/text/index.js.map +1 -1
- package/dist/core/theme/color.d.ts +32 -0
- package/dist/core/theme/color.d.ts.map +1 -1
- package/dist/core/theme/color.js +68 -0
- package/dist/core/theme/color.js.map +1 -1
- package/dist/core/theme/graph-types.d.ts +5 -0
- package/dist/core/theme/graph-types.d.ts.map +1 -1
- package/dist/core/theme/graph.d.ts.map +1 -1
- package/dist/core/theme/graph.js +52 -5
- package/dist/core/theme/graph.js.map +1 -1
- package/dist/core/theme/index.d.ts +2 -1
- package/dist/core/theme/index.d.ts.map +1 -1
- package/dist/core/theme/index.js +1 -1
- package/dist/core/theme/index.js.map +1 -1
- package/dist/core/theme/presets.d.ts +3 -2
- package/dist/core/theme/presets.d.ts.map +1 -1
- package/dist/core/theme/presets.js +18 -29
- package/dist/core/theme/presets.js.map +1 -1
- package/dist/factory.d.ts +3 -0
- package/dist/factory.d.ts.map +1 -1
- package/dist/factory.js +4 -6
- package/dist/factory.js.map +1 -1
- package/dist/index.d.ts +8 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -6
- package/dist/index.js.map +1 -1
- package/dist/ports/context.d.ts +6 -1
- package/dist/ports/context.d.ts.map +1 -1
- package/dist/ports/surface.d.ts +6 -4
- package/dist/ports/surface.d.ts.map +1 -1
- package/dist/ports/surface.js +40 -23
- package/dist/ports/surface.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../src/ports/surface.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../src/ports/surface.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAuC,KAAK,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAE5F;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,2DAA2D;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,gEAAgE;IAChE,EAAE,CAAC,EAAE,QAAQ,CAAC;IACd,gEAAgE;IAChE,EAAE,CAAC,EAAE,QAAQ,CAAC;IACd;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,uCAAuC;IACvC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,8CAA8C;IAC9C,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,8CAA8C;IAC9C,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,4CAA4C;IAC5C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iDAAiD;IACjD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,oDAAoD;AACpD,eAAO,MAAM,SAAS,EAAE,QAMvB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,4BAA4B;IAC5B,CAAC,EAAE,MAAM,CAAC;IACV,yBAAyB;IACzB,CAAC,EAAE,MAAM,CAAC;IACV,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,+DAA+D;IAC/D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,8CAA8C;IAC9C,IAAI,EAAE,UAAU,CAAC;IACjB,0BAA0B;IAC1B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,OAAO,EAAE,KAAK;IAC1C,yEAAyE;IACzE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC;CAChF;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,8DAA8D;IAC9D,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAEzE;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,wBAAwB;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,sBAAsB;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,oDAAoD;IACpD,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;IAEvB,iEAAiE;IACjE,KAAK,IAAI,IAAI,CAAC;IAEd,yFAAyF;IACzF,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACjD;;;;;;;OAOG;IACH,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IAE7D;;;;;;;;;;;;;;;;;;OAkBG;IACH,MAAM,CACJ,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,GAAG,MAAM,EACrB,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EACrC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EACrC,KAAK,CAAC,EAAE,MAAM,GACb,IAAI,CAAC;IAER,kFAAkF;IAClF,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACxF,kEAAkE;IAClE,IAAI,CACF,MAAM,EAAE,OAAO,EACf,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,QAAQ,GACd,IAAI,CAAC;IAER;;;OAGG;IACH,SAAS,CACP,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE,gBAAgB,GACzB,IAAI,CAAC;IAER,iEAAiE;IACjE,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,EAAE,CAAC;IACnE,4CAA4C;IAC5C,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IAEpE,2CAA2C;IAC3C,KAAK,IAAI,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAMpD,CAAC;AA8CF,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,aAAa,CAE9D;AAkMD;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,OAAO;IAC5C,qEAAqE;IACrE,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,wDAAwD;IACxD,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,gBAAgB,EAAE,WAAW,CAAC;IACvC,6DAA6D;IAC7D,YAAY,IAAI,IAAI,CAAC;IACrB;;;;;;OAMG;IACH,kBAAkB,IAAI,IAAI,CAAC;CAC5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,aAAa,CA8SvF"}
|
package/dist/ports/surface.js
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
* A Surface is a 2D grid of Cells. Each Cell is a self-contained unit
|
|
5
5
|
* of terminal output (character + styling).
|
|
6
6
|
*/
|
|
7
|
+
import { sanitizeNonNegativeInt } from '../core/numeric.js';
|
|
8
|
+
import { colorHex, colorRgb, isResolvedColor } from '../core/theme/color.js';
|
|
7
9
|
/** A mask that affects all properties of a cell. */
|
|
8
10
|
export const FULL_MASK = {
|
|
9
11
|
char: true,
|
|
@@ -35,6 +37,8 @@ function maskCell(cell, mask) {
|
|
|
35
37
|
char: mask.char ? cell.char : ' ',
|
|
36
38
|
fg: mask.fg ? cell.fg : undefined,
|
|
37
39
|
bg: mask.bg ? cell.bg : undefined,
|
|
40
|
+
fgRGB: mask.fg ? cell.fgRGB : undefined,
|
|
41
|
+
bgRGB: mask.bg ? cell.bgRGB : undefined,
|
|
38
42
|
modifiers: mask.modifiers ? cell.modifiers : undefined,
|
|
39
43
|
empty: mask.alpha ? (cell.empty ?? false) : false,
|
|
40
44
|
opacity: mask.alpha ? (cell.opacity ?? 1) : 1,
|
|
@@ -45,6 +49,8 @@ function cloneCell(cell) {
|
|
|
45
49
|
char: cell.char,
|
|
46
50
|
fg: cell.fg,
|
|
47
51
|
bg: cell.bg,
|
|
52
|
+
fgRGB: cell.fgRGB,
|
|
53
|
+
bgRGB: cell.bgRGB,
|
|
48
54
|
modifiers: cell.modifiers,
|
|
49
55
|
empty: cell.empty,
|
|
50
56
|
opacity: cell.opacity,
|
|
@@ -54,11 +60,13 @@ function copyCellInto(target, source) {
|
|
|
54
60
|
target.char = source.char;
|
|
55
61
|
target.fg = source.fg;
|
|
56
62
|
target.bg = source.bg;
|
|
63
|
+
target.fgRGB = source.fgRGB;
|
|
64
|
+
target.bgRGB = source.bgRGB;
|
|
57
65
|
target.modifiers = source.modifiers;
|
|
58
66
|
target.empty = source.empty;
|
|
59
67
|
target.opacity = source.opacity;
|
|
60
68
|
}
|
|
61
|
-
function isPackedSurface(s) {
|
|
69
|
+
export function isPackedSurface(s) {
|
|
62
70
|
return 'buffer' in s && s.buffer instanceof Uint8Array;
|
|
63
71
|
}
|
|
64
72
|
// ── Packed buffer helpers ────────────────────────────────
|
|
@@ -82,6 +90,23 @@ function inlineHexRGB(hex, out, off) {
|
|
|
82
90
|
out[off + 2] = (hexD(c5) << 4) | hexD(c6);
|
|
83
91
|
return true;
|
|
84
92
|
}
|
|
93
|
+
function writeColorRefInto(ref, rgb, out, off) {
|
|
94
|
+
if (rgb !== undefined) {
|
|
95
|
+
out[off] = rgb[0];
|
|
96
|
+
out[off + 1] = rgb[1];
|
|
97
|
+
out[off + 2] = rgb[2];
|
|
98
|
+
return true;
|
|
99
|
+
}
|
|
100
|
+
if (ref == null)
|
|
101
|
+
return false;
|
|
102
|
+
if (isResolvedColor(ref)) {
|
|
103
|
+
out[off] = ref.rgb[0];
|
|
104
|
+
out[off + 1] = ref.rgb[1];
|
|
105
|
+
out[off + 2] = ref.rgb[2];
|
|
106
|
+
return true;
|
|
107
|
+
}
|
|
108
|
+
return inlineHexRGB(ref, out, off);
|
|
109
|
+
}
|
|
85
110
|
/** Encode a Cell into the packed buffer. */
|
|
86
111
|
function encodeCellIntoBuf(buf, idx, cell, sideTable) {
|
|
87
112
|
const off = idx * CELL_STRIDE;
|
|
@@ -92,14 +117,7 @@ function encodeCellIntoBuf(buf, idx, cell, sideTable) {
|
|
|
92
117
|
// Theme tokens populate fgRGB via resolve.ts populateThemeRGB(),
|
|
93
118
|
// so theme-driven paints skip inlineHexRGB entirely.
|
|
94
119
|
let alphaBits = 0;
|
|
95
|
-
|
|
96
|
-
if (fgRGB !== undefined) {
|
|
97
|
-
buf[off + OFF_FG_R] = fgRGB[0];
|
|
98
|
-
buf[off + OFF_FG_G] = fgRGB[1];
|
|
99
|
-
buf[off + OFF_FG_B] = fgRGB[2];
|
|
100
|
-
alphaBits |= FLAG_FG_SET;
|
|
101
|
-
}
|
|
102
|
-
else if (cell.fg && inlineHexRGB(cell.fg, buf, off + OFF_FG_R)) {
|
|
120
|
+
if (writeColorRefInto(cell.fg, cell.fgRGB, buf, off + OFF_FG_R)) {
|
|
103
121
|
alphaBits |= FLAG_FG_SET;
|
|
104
122
|
}
|
|
105
123
|
else {
|
|
@@ -107,14 +125,7 @@ function encodeCellIntoBuf(buf, idx, cell, sideTable) {
|
|
|
107
125
|
buf[off + OFF_FG_G] = 0;
|
|
108
126
|
buf[off + OFF_FG_B] = 0;
|
|
109
127
|
}
|
|
110
|
-
|
|
111
|
-
if (bgRGB !== undefined) {
|
|
112
|
-
buf[off + OFF_BG_R] = bgRGB[0];
|
|
113
|
-
buf[off + OFF_BG_G] = bgRGB[1];
|
|
114
|
-
buf[off + OFF_BG_B] = bgRGB[2];
|
|
115
|
-
alphaBits |= FLAG_BG_SET;
|
|
116
|
-
}
|
|
117
|
-
else if (cell.bg && inlineHexRGB(cell.bg, buf, off + OFF_BG_R)) {
|
|
128
|
+
if (writeColorRefInto(cell.bg, cell.bgRGB, buf, off + OFF_BG_R)) {
|
|
118
129
|
alphaBits |= FLAG_BG_SET;
|
|
119
130
|
}
|
|
120
131
|
else {
|
|
@@ -133,10 +144,14 @@ function decodeCellFromBuf(buf, idx, sideTable) {
|
|
|
133
144
|
const flags = buf[off + OFF_FLAGS];
|
|
134
145
|
const fgSet = (alphaByte & FLAG_FG_SET) !== 0;
|
|
135
146
|
const bgSet = (alphaByte & FLAG_BG_SET) !== 0;
|
|
147
|
+
const fgRGB = fgSet ? [buf[off + OFF_FG_R], buf[off + OFF_FG_G], buf[off + OFF_FG_B]] : undefined;
|
|
148
|
+
const bgRGB = bgSet ? [buf[off + OFF_BG_R], buf[off + OFF_BG_G], buf[off + OFF_BG_B]] : undefined;
|
|
136
149
|
return {
|
|
137
150
|
char: decodeChar(charCode, sideTable),
|
|
138
151
|
fg: fgSet ? toHex(buf[off + OFF_FG_R], buf[off + OFF_FG_G], buf[off + OFF_FG_B]) : undefined,
|
|
139
152
|
bg: bgSet ? toHex(buf[off + OFF_BG_R], buf[off + OFF_BG_G], buf[off + OFF_BG_B]) : undefined,
|
|
153
|
+
fgRGB,
|
|
154
|
+
bgRGB,
|
|
140
155
|
modifiers: decodeModifiers(flags & ~FLAG_EMPTY),
|
|
141
156
|
empty: (flags & FLAG_EMPTY) !== 0,
|
|
142
157
|
opacity: decodeOpacity(alphaByte & OPACITY_MASK),
|
|
@@ -146,8 +161,10 @@ function decodeCellFromBuf(buf, idx, sideTable) {
|
|
|
146
161
|
function syncCellFromBuf(cell, buf, idx, sideTable, exactOpacity) {
|
|
147
162
|
const decoded = decodeCellFromBuf(buf, idx, sideTable);
|
|
148
163
|
cell.char = decoded.char;
|
|
149
|
-
cell.fg = decoded.fg;
|
|
150
|
-
cell.bg = decoded.bg;
|
|
164
|
+
cell.fg = colorHex(decoded.fg);
|
|
165
|
+
cell.bg = colorHex(decoded.bg);
|
|
166
|
+
cell.fgRGB = colorRgb(decoded.fg);
|
|
167
|
+
cell.bgRGB = colorRgb(decoded.bg);
|
|
151
168
|
cell.modifiers = decoded.modifiers;
|
|
152
169
|
cell.empty = decoded.empty;
|
|
153
170
|
// Preserve exact float when available; use quantized only for buffer-decoded reads
|
|
@@ -167,7 +184,7 @@ function applyMaskToBuf(buf, idx, source, mask, sideTable) {
|
|
|
167
184
|
buf[off + OFF_CHAR + 1] = (charCode >> 8) & 0xFF;
|
|
168
185
|
}
|
|
169
186
|
if (mask.fg) {
|
|
170
|
-
if (source.fg
|
|
187
|
+
if (writeColorRefInto(source.fg, source.fgRGB, buf, off + OFF_FG_R)) {
|
|
171
188
|
buf[off + OFF_ALPHA] = buf[off + OFF_ALPHA] | FLAG_FG_SET;
|
|
172
189
|
}
|
|
173
190
|
else {
|
|
@@ -178,7 +195,7 @@ function applyMaskToBuf(buf, idx, source, mask, sideTable) {
|
|
|
178
195
|
}
|
|
179
196
|
}
|
|
180
197
|
if (mask.bg) {
|
|
181
|
-
if (source.bg
|
|
198
|
+
if (writeColorRefInto(source.bg, source.bgRGB, buf, off + OFF_BG_R)) {
|
|
182
199
|
buf[off + OFF_ALPHA] = buf[off + OFF_ALPHA] | FLAG_BG_SET;
|
|
183
200
|
}
|
|
184
201
|
else {
|
|
@@ -217,8 +234,8 @@ function applyMaskToBuf(buf, idx, source, mask, sideTable) {
|
|
|
217
234
|
* @returns A new Surface instance.
|
|
218
235
|
*/
|
|
219
236
|
export function createSurface(width, height, fill) {
|
|
220
|
-
const w =
|
|
221
|
-
const h =
|
|
237
|
+
const w = sanitizeNonNegativeInt(width, 0);
|
|
238
|
+
const h = sanitizeNonNegativeInt(height, 0);
|
|
222
239
|
const size = w * h;
|
|
223
240
|
const defaultCell = fill ?? { char: ' ', empty: true };
|
|
224
241
|
const sideTable = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"surface.js","sourceRoot":"","sources":["../../src/ports/surface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"surface.js","sourceRoot":"","sources":["../../src/ports/surface.ts"],"names":[],"mappings":"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"}
|