@flyingrobots/bijou 4.4.0 → 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 +52 -189
- 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 +40 -0
- package/dist/context-theme.d.ts.map +1 -0
- package/dist/context-theme.js +42 -0
- package/dist/context-theme.js.map +1 -0
- 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 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -5
- 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":"graph.d.ts","sourceRoot":"","sources":["../../../src/core/theme/graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/core/theme/graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAO,MAAM,aAAa,CAAC;AAYnD,OAAO,KAAK,EACV,eAAe,EAEf,gBAAgB,EAEhB,UAAU,EACX,MAAM,kBAAkB,CAAC;AAE1B,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,6DAA6D;IAC7D,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IAChD,sDAAsD;IACtD,QAAQ,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACzD,+DAA+D;IAC/D,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAChD,6CAA6C;IAC7C,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG;QAAE,OAAO,IAAI,IAAI,CAAA;KAAE,CAAC;IACzD,qEAAqE;IACrE,MAAM,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,4DAA4D;IAC5D,OAAO,IAAI,IAAI,CAAC;CACjB;AAMD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,UAAU,CA0MvE"}
|
package/dist/core/theme/graph.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { hexToRgb, rgbToHex, lighten, darken, mix, complementary, saturate, desaturate } from './color.js';
|
|
1
|
+
import { hexToRgb, tryHexToRgb, rgbToHex, lighten, darken, mix, complementary, saturate, desaturate } from './color.js';
|
|
2
2
|
function isTokenValue(obj) {
|
|
3
3
|
return typeof obj === 'object' && obj !== null && 'hex' in obj;
|
|
4
4
|
}
|
|
@@ -8,6 +8,8 @@ function isTokenValue(obj) {
|
|
|
8
8
|
export function createTokenGraph(initial) {
|
|
9
9
|
const definitions = new Map();
|
|
10
10
|
const subscribers = new Set();
|
|
11
|
+
const tokenCache = new Map();
|
|
12
|
+
const rgbCache = new Map();
|
|
11
13
|
if (initial) {
|
|
12
14
|
importInternal('', initial);
|
|
13
15
|
}
|
|
@@ -20,6 +22,8 @@ export function createTokenGraph(initial) {
|
|
|
20
22
|
fg: value.hex,
|
|
21
23
|
bg: value.bg,
|
|
22
24
|
modifiers: value.modifiers,
|
|
25
|
+
fgRGB: value.fgRGB,
|
|
26
|
+
bgRGB: value.bgRGB,
|
|
23
27
|
});
|
|
24
28
|
}
|
|
25
29
|
else if (typeof value === 'object' && value !== null && !('ref' in value) && !('light' in value) && !('fg' in value)) {
|
|
@@ -30,6 +34,20 @@ export function createTokenGraph(initial) {
|
|
|
30
34
|
}
|
|
31
35
|
}
|
|
32
36
|
}
|
|
37
|
+
function clearCaches() {
|
|
38
|
+
tokenCache.clear();
|
|
39
|
+
rgbCache.clear();
|
|
40
|
+
}
|
|
41
|
+
function resolveRgb(hex) {
|
|
42
|
+
if (hex == null)
|
|
43
|
+
return undefined;
|
|
44
|
+
if (rgbCache.has(hex)) {
|
|
45
|
+
return rgbCache.get(hex) ?? undefined;
|
|
46
|
+
}
|
|
47
|
+
const rgb = tryHexToRgb(hex);
|
|
48
|
+
rgbCache.set(hex, rgb ?? null);
|
|
49
|
+
return rgb;
|
|
50
|
+
}
|
|
33
51
|
function resolveColor(def, mode, visited) {
|
|
34
52
|
if (typeof def === 'string') {
|
|
35
53
|
// Normalize hex string
|
|
@@ -106,27 +124,54 @@ export function createTokenGraph(initial) {
|
|
|
106
124
|
}
|
|
107
125
|
const graph = {
|
|
108
126
|
get(path, mode = 'dark') {
|
|
127
|
+
const cacheKey = `${mode}:${path}`;
|
|
128
|
+
const cached = tokenCache.get(cacheKey);
|
|
129
|
+
if (cached)
|
|
130
|
+
return cached;
|
|
109
131
|
const def = definitions.get(path);
|
|
110
132
|
if (!def)
|
|
111
133
|
throw new Error(`Token not found: ${path}`);
|
|
112
134
|
if (typeof def === 'object' && 'fg' in def) {
|
|
113
135
|
const tokenDef = def;
|
|
114
|
-
|
|
136
|
+
const token = {
|
|
115
137
|
hex: resolveColor(tokenDef.fg, mode, new Set([path])),
|
|
116
138
|
bg: tokenDef.bg ? resolveColor(tokenDef.bg, mode, new Set([path])) : undefined,
|
|
117
139
|
modifiers: tokenDef.modifiers,
|
|
118
140
|
};
|
|
141
|
+
const resolved = {
|
|
142
|
+
...token,
|
|
143
|
+
fgRGB: tokenDef.fgRGB ?? resolveRgb(token.hex),
|
|
144
|
+
bgRGB: token.bg != null ? (tokenDef.bgRGB ?? resolveRgb(token.bg)) : undefined,
|
|
145
|
+
};
|
|
146
|
+
tokenCache.set(cacheKey, resolved);
|
|
147
|
+
return resolved;
|
|
119
148
|
}
|
|
120
149
|
// If it's just a color definition, return it as a TokenValue
|
|
121
|
-
|
|
122
|
-
|
|
150
|
+
const hex = resolveColor(def, mode, new Set([path]));
|
|
151
|
+
const resolved = {
|
|
152
|
+
hex,
|
|
153
|
+
fgRGB: resolveRgb(hex),
|
|
123
154
|
};
|
|
155
|
+
tokenCache.set(cacheKey, resolved);
|
|
156
|
+
return resolved;
|
|
124
157
|
},
|
|
125
158
|
getColor(def, mode = 'dark') {
|
|
126
159
|
return resolveColor(def, mode, new Set());
|
|
127
160
|
},
|
|
128
161
|
set(path, definition) {
|
|
129
|
-
|
|
162
|
+
if (isTokenValue(definition)) {
|
|
163
|
+
definitions.set(path, {
|
|
164
|
+
fg: definition.hex,
|
|
165
|
+
bg: definition.bg,
|
|
166
|
+
modifiers: definition.modifiers,
|
|
167
|
+
fgRGB: definition.fgRGB,
|
|
168
|
+
bgRGB: definition.bgRGB,
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
else {
|
|
172
|
+
definitions.set(path, definition);
|
|
173
|
+
}
|
|
174
|
+
clearCaches();
|
|
130
175
|
for (const handler of subscribers) {
|
|
131
176
|
handler(path);
|
|
132
177
|
}
|
|
@@ -141,11 +186,13 @@ export function createTokenGraph(initial) {
|
|
|
141
186
|
},
|
|
142
187
|
import(defs) {
|
|
143
188
|
importInternal('', defs);
|
|
189
|
+
clearCaches();
|
|
144
190
|
for (const handler of subscribers) {
|
|
145
191
|
handler('*'); // Notify full re-import
|
|
146
192
|
}
|
|
147
193
|
},
|
|
148
194
|
dispose() {
|
|
195
|
+
clearCaches();
|
|
149
196
|
definitions.clear();
|
|
150
197
|
subscribers.clear();
|
|
151
198
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph.js","sourceRoot":"","sources":["../../../src/core/theme/graph.ts"],"names":[],"mappings":"AACA,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,EACN,GAAG,EACH,aAAa,EACb,QAAQ,EACR,UAAU,EACX,MAAM,YAAY,CAAC;AA6BpB,SAAS,YAAY,CAAC,GAAQ;IAC5B,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,KAAK,IAAI,GAAG,CAAC;AACjE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAA0B;IACzD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAe,CAAC;IAC3C,MAAM,WAAW,GAAG,IAAI,GAAG,EAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"graph.js","sourceRoot":"","sources":["../../../src/core/theme/graph.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,5 +20,6 @@ export { createThemeAccessors, type ThemeAccessors } from './accessors.js';
|
|
|
20
20
|
export { createTokenGraph } from './graph.js';
|
|
21
21
|
export type { TokenGraph, ThemeMode } from './graph.js';
|
|
22
22
|
export type { ColorDefinition, TokenDefinition, TokenDefinitions, ColorTransform, } from './graph-types.js';
|
|
23
|
-
export { hexToRgb, rgbToHex, lighten, darken, mix, complementary, saturate, desaturate, } from './color.js';
|
|
23
|
+
export { color, colorHex, colorRgb, hexToRgb, isResolvedColor, resolveColor, rgbToHex, tryResolveColor, lighten, darken, mix, complementary, saturate, desaturate, } from './color.js';
|
|
24
|
+
export type { ColorRef, ResolvedColor } from './color.js';
|
|
24
25
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/theme/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,YAAY,EACV,GAAG,EACH,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,aAAa,EACb,SAAS,EACT,eAAe,EACf,KAAK,GACN,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAG3E,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGpD,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAIvF,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGpE,OAAO,EACL,YAAY,EACZ,cAAc,EACd,WAAW,EACX,eAAe,EACf,KAAK,UAAU,GAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAG3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACxD,YAAY,EACV,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,EACN,GAAG,EACH,aAAa,EACb,QAAQ,EACR,UAAU,GACX,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/theme/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,YAAY,EACV,GAAG,EACH,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,aAAa,EACb,SAAS,EACT,eAAe,EACf,KAAK,GACN,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAG3E,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGpD,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAIvF,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGpE,OAAO,EACL,YAAY,EACZ,cAAc,EACd,WAAW,EACX,eAAe,EACf,KAAK,UAAU,GAChB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAG3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACxD,YAAY,EACV,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,cAAc,GACf,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,OAAO,EACP,MAAM,EACN,GAAG,EACH,aAAa,EACb,QAAQ,EACR,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
|
package/dist/core/theme/index.js
CHANGED
|
@@ -24,5 +24,5 @@ export { createThemeAccessors } from './accessors.js';
|
|
|
24
24
|
// Reactive Token Graph
|
|
25
25
|
export { createTokenGraph } from './graph.js';
|
|
26
26
|
// Color manipulation
|
|
27
|
-
export { hexToRgb, rgbToHex, lighten, darken, mix, complementary, saturate, desaturate, } from './color.js';
|
|
27
|
+
export { color, colorHex, colorRgb, hexToRgb, isResolvedColor, resolveColor, rgbToHex, tryResolveColor, lighten, darken, mix, complementary, saturate, desaturate, } from './color.js';
|
|
28
28
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/theme/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAeH,UAAU;AACV,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAE3E,8BAA8B;AAC9B,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEnD,kBAAkB;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,WAAW;AACX,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEpD,WAAW;AACX,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,cAAc,GACf,MAAM,cAAc,CAAC;AAOtB,eAAe;AACf,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAG7C,qBAAqB;AACrB,OAAO,EACL,YAAY,EACZ,cAAc,EACd,WAAW,EACX,eAAe,GAEhB,MAAM,iBAAiB,CAAC;AACzB,kBAAkB;AAClB,OAAO,EAAE,oBAAoB,EAAuB,MAAM,gBAAgB,CAAC;AAE3E,uBAAuB;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAS9C,qBAAqB;AACrB,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,EACN,GAAG,EACH,aAAa,EACb,QAAQ,EACR,UAAU,GACX,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/theme/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAeH,UAAU;AACV,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAE3E,8BAA8B;AAC9B,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEnD,kBAAkB;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,WAAW;AACX,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEpD,WAAW;AACX,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,cAAc,GACf,MAAM,cAAc,CAAC;AAOtB,eAAe;AACf,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAG7C,qBAAqB;AACrB,OAAO,EACL,YAAY,EACZ,cAAc,EACd,WAAW,EACX,eAAe,GAEhB,MAAM,iBAAiB,CAAC;AACzB,kBAAkB;AAClB,OAAO,EAAE,oBAAoB,EAAuB,MAAM,gBAAgB,CAAC;AAE3E,uBAAuB;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAS9C,qBAAqB;AACrB,OAAO,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,OAAO,EACP,MAAM,EACN,GAAG,EACH,aAAa,EACb,QAAQ,EACR,UAAU,GACX,MAAM,YAAY,CAAC"}
|
|
@@ -8,8 +8,9 @@ import type { Theme, BaseStatusKey, TokenValue, TextModifier } from './tokens.js
|
|
|
8
8
|
*/
|
|
9
9
|
export declare function tv(hex: string, modifiers?: TextModifier[]): TokenValue;
|
|
10
10
|
/**
|
|
11
|
-
* Populate fgRGB and bgRGB on an existing TokenValue
|
|
12
|
-
* Used by theme resolution to ensure
|
|
11
|
+
* Populate fgRGB and bgRGB on an existing TokenValue from its current hex/bg.
|
|
12
|
+
* Used by theme resolution to ensure cached RGB bytes stay in sync even when
|
|
13
|
+
* callers clone a theme token and override only the string color fields.
|
|
13
14
|
*
|
|
14
15
|
* **Mutates the token in place.** Callers should not pass frozen/shared tokens.
|
|
15
16
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../src/core/theme/presets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../../src/core/theme/presets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGlF;;;;;;GAMG;AACH,wBAAgB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,YAAY,EAAE,GAAG,UAAU,CAMtE;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,CAa9D;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,aAAa,CA4D7C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,aAAa,CA8DjD,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAkHzC,CAAC"}
|
|
@@ -1,21 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Parse '#rrggbb' to [r, g, b] via charCode arithmetic.
|
|
3
|
-
*
|
|
4
|
-
* Validates hex digits: `d()` returns -1 for any non-hex character, and
|
|
5
|
-
* because -1 propagates through bitwise OR/shift, the final `< 0` guard
|
|
6
|
-
* catches invalid input even when only one nibble is bad.
|
|
7
|
-
*/
|
|
8
|
-
function hexToRGB(hex) {
|
|
9
|
-
if (hex.length !== 7 || hex.charCodeAt(0) !== 0x23)
|
|
10
|
-
return undefined;
|
|
11
|
-
const d = (c) => c >= 97 ? c - 87 : c >= 65 ? c - 55 : c >= 48 ? c - 48 : -1;
|
|
12
|
-
const r = (d(hex.charCodeAt(1)) << 4) | d(hex.charCodeAt(2));
|
|
13
|
-
const g = (d(hex.charCodeAt(3)) << 4) | d(hex.charCodeAt(4));
|
|
14
|
-
const b = (d(hex.charCodeAt(5)) << 4) | d(hex.charCodeAt(6));
|
|
15
|
-
if (r < 0 || g < 0 || b < 0)
|
|
16
|
-
return undefined;
|
|
17
|
-
return [r, g, b];
|
|
18
|
-
}
|
|
1
|
+
import { tryHexToRgb } from './color.js';
|
|
19
2
|
/**
|
|
20
3
|
* Shorthand helper to create a TokenValue with less boilerplate.
|
|
21
4
|
* Automatically pre-parses hex into numeric fgRGB for hot rendering paths.
|
|
@@ -24,28 +7,34 @@ function hexToRGB(hex) {
|
|
|
24
7
|
* @returns TokenValue with the given hex, fgRGB, and optional modifiers.
|
|
25
8
|
*/
|
|
26
9
|
export function tv(hex, modifiers) {
|
|
27
|
-
const fgRGB =
|
|
10
|
+
const fgRGB = tryHexToRgb(hex);
|
|
28
11
|
if (modifiers !== undefined) {
|
|
29
12
|
return fgRGB ? { hex, modifiers, fgRGB } : { hex, modifiers };
|
|
30
13
|
}
|
|
31
14
|
return fgRGB ? { hex, fgRGB } : { hex };
|
|
32
15
|
}
|
|
33
16
|
/**
|
|
34
|
-
* Populate fgRGB and bgRGB on an existing TokenValue
|
|
35
|
-
* Used by theme resolution to ensure
|
|
17
|
+
* Populate fgRGB and bgRGB on an existing TokenValue from its current hex/bg.
|
|
18
|
+
* Used by theme resolution to ensure cached RGB bytes stay in sync even when
|
|
19
|
+
* callers clone a theme token and override only the string color fields.
|
|
36
20
|
*
|
|
37
21
|
* **Mutates the token in place.** Callers should not pass frozen/shared tokens.
|
|
38
22
|
*/
|
|
39
23
|
export function populateTokenRGB(token) {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
24
|
+
const fgRGB = tryHexToRgb(token.hex);
|
|
25
|
+
if (fgRGB)
|
|
26
|
+
token.fgRGB = fgRGB;
|
|
27
|
+
else
|
|
28
|
+
delete token.fgRGB;
|
|
29
|
+
if (token.bg) {
|
|
30
|
+
const bgRGB = tryHexToRgb(token.bg);
|
|
31
|
+
if (bgRGB)
|
|
32
|
+
token.bgRGB = bgRGB;
|
|
33
|
+
else
|
|
34
|
+
delete token.bgRGB;
|
|
44
35
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
if (rgb)
|
|
48
|
-
token.bgRGB = rgb;
|
|
36
|
+
else {
|
|
37
|
+
delete token.bgRGB;
|
|
49
38
|
}
|
|
50
39
|
return token;
|
|
51
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../src/core/theme/presets.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../../../src/core/theme/presets.ts"],"names":[],"mappings":"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"}
|
package/dist/factory.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import type { RuntimePort } from './ports/runtime.js';
|
|
|
3
3
|
import type { IOPort } from './ports/io.js';
|
|
4
4
|
import type { StylePort } from './ports/style.js';
|
|
5
5
|
import type { Theme } from './core/theme/tokens.js';
|
|
6
|
+
import type { ColorScheme } from './core/detect/tty.js';
|
|
6
7
|
import type { ClockPort } from './ports/clock.js';
|
|
7
8
|
/** Options for {@link createBijou}. */
|
|
8
9
|
export interface CreateBijouOptions {
|
|
@@ -20,6 +21,8 @@ export interface CreateBijouOptions {
|
|
|
20
21
|
presets?: Record<string, Theme>;
|
|
21
22
|
/** Environment variable that selects a preset or JSON path. Defaults to `"BIJOU_THEME"`. */
|
|
22
23
|
envVar?: string;
|
|
24
|
+
/** Explicit light/dark scheme for adaptive token resolution. Defaults to runtime detection. */
|
|
25
|
+
colorScheme?: ColorScheme;
|
|
23
26
|
}
|
|
24
27
|
/**
|
|
25
28
|
* Create a fully-wired {@link BijouContext} from adapter ports.
|
package/dist/factory.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAQpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,mCAAmC;IACnC,OAAO,EAAE,WAAW,CAAC;IACrB,8CAA8C;IAC9C,EAAE,EAAE,MAAM,CAAC;IACX,6DAA6D;IAC7D,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,+CAA+C;IAC/C,KAAK,EAAE,SAAS,CAAC;IACjB,+DAA+D;IAC/D,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,gFAAgF;IAChF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAChC,4FAA4F;IAC5F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+FAA+F;IAC/F,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,YAAY,CAyCrE"}
|
package/dist/factory.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { createResolved } from './core/theme/resolve.js';
|
|
2
2
|
import { createThemeAccessors } from './core/theme/accessors.js';
|
|
3
|
-
import { createTokenGraph } from './core/theme/graph.js';
|
|
4
3
|
import { CYAN_MAGENTA } from './core/theme/presets.js';
|
|
5
4
|
import { PRESETS } from './core/theme/presets.js';
|
|
6
5
|
import { fromDTCG } from './core/theme/dtcg.js';
|
|
7
|
-
import { detectOutputMode } from './core/detect/tty.js';
|
|
6
|
+
import { detectColorScheme, detectOutputMode } from './core/detect/tty.js';
|
|
8
7
|
import { systemClock } from './core/clock.js';
|
|
9
8
|
/**
|
|
10
9
|
* Create a fully-wired {@link BijouContext} from adapter ports.
|
|
@@ -24,6 +23,7 @@ export function createBijou(options) {
|
|
|
24
23
|
const presets = options.presets ?? PRESETS;
|
|
25
24
|
const fallback = options.theme ?? CYAN_MAGENTA;
|
|
26
25
|
const noColor = runtime.env('NO_COLOR') !== undefined;
|
|
26
|
+
const colorScheme = options.colorScheme ?? detectColorScheme(runtime);
|
|
27
27
|
const themeValue = runtime.env(envVar);
|
|
28
28
|
let themeObj = fallback;
|
|
29
29
|
if (themeValue) {
|
|
@@ -41,10 +41,8 @@ export function createBijou(options) {
|
|
|
41
41
|
themeObj = presets[themeValue] ?? fallback;
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
const theme = createResolved(themeObj, noColor);
|
|
44
|
+
const theme = createResolved(themeObj, noColor, colorScheme);
|
|
45
45
|
const mode = detectOutputMode(runtime);
|
|
46
|
-
// Initialize Reactive Token Graph
|
|
47
|
-
const tokenGraph = createTokenGraph(themeObj);
|
|
48
46
|
return {
|
|
49
47
|
theme,
|
|
50
48
|
mode,
|
|
@@ -52,7 +50,7 @@ export function createBijou(options) {
|
|
|
52
50
|
io,
|
|
53
51
|
clock,
|
|
54
52
|
style,
|
|
55
|
-
tokenGraph,
|
|
53
|
+
tokenGraph: theme.tokenGraph,
|
|
56
54
|
resolveBCSS: () => ({}),
|
|
57
55
|
...createThemeAccessors(theme),
|
|
58
56
|
};
|
package/dist/factory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAsB,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../src/factory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAsB,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAqB,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAuB9C;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,OAA2B;IACrD,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IACvC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,WAAW,EAAE,CAAC;IAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,aAAa,CAAC;IAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC;IAC3C,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,IAAI,YAAY,CAAC;IAE/C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,SAAS,CAAC;IACtD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACtE,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAEvC,IAAI,QAAQ,GAAU,QAAQ,CAAC;IAE/B,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACxC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAiB,CAAC;gBAChD,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,oCAAoC;YACtC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAkB,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IAC5E,MAAM,IAAI,GAAe,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAEnD,OAAO;QACL,KAAK;QACL,IAAI;QACJ,OAAO;QACP,EAAE;QACF,KAAK;QACL,KAAK;QACL,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;QACvB,GAAG,oBAAoB,CAAC,KAAK,CAAC;KAC/B,CAAC;AACJ,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,21 +5,24 @@
|
|
|
5
5
|
* with graceful degradation across output modes.
|
|
6
6
|
*/
|
|
7
7
|
export type { RuntimePort, WritePort, QueryPort, InteractivePort, FilePort, IOPort, ClockPort, RawInputHandle, TimerHandle, KeyInputMsg, StylePort, BijouContext, } from './ports/index.js';
|
|
8
|
-
export { type Cell, type Surface, type PackedSurface, type CellMask, type Matrix3x3, type TransformOptions, createSurface, FULL_MASK, ROTATION_CHAR_MAP, } from './ports/surface.js';
|
|
8
|
+
export { type Cell, type Surface, type PackedSurface, type CellMask, type Matrix3x3, type TransformOptions, createSurface, isPackedSurface, FULL_MASK, ROTATION_CHAR_MAP, } from './ports/surface.js';
|
|
9
9
|
export { FLAG_BOLD, FLAG_DIM, FLAG_STRIKETHROUGH, FLAG_INVERSE, FLAG_EMPTY, UNDERLINE_SOLID, UNDERLINE_CURLY, UNDERLINE_DOTDASH, FLAG_DASHED, } from './core/render/packed-cell.js';
|
|
10
|
-
export { getDefaultContext, setDefaultContext, } from './context.js';
|
|
10
|
+
export { getDefaultContext, setDefaultContext, setDefaultContextInitializer, } from './context.js';
|
|
11
|
+
export { cloneContextWithResolvedTheme, cloneContextWithTheme, observeTheme, type ThemeChange, type ThemeObservation, } from './context-theme.js';
|
|
11
12
|
export { resolveCtx, resolveSafeCtx } from './core/resolve-ctx.js';
|
|
12
13
|
export { systemClock, resolveClock, sleep, defer } from './core/clock.js';
|
|
13
14
|
export { decodeRawKeyInput, decodeRawKeySequence } from './core/key-input.js';
|
|
14
15
|
export { type RuntimeViewport, sanitizeRuntimeDimension, readRuntimeViewport, installRuntimeViewportOverlay, updateRuntimeViewport, } from './core/runtime-viewport.js';
|
|
16
|
+
export { sanitizeNonNegativeInt, sanitizeOptionalNonNegativeInt, sanitizeOptionalPositiveInt, sanitizePositiveInt, } from './core/numeric.js';
|
|
17
|
+
export { solveGridRects, solveSplitAxisSizes, solveSplitPaneRects, type GridTrack, type SplitAxisOptions, type SplitAxisSizes, type SplitLayoutDirection, type SplitPaneRectOptions, type SplitPaneRects, type GridRectOptions, } from './core/layout/geometry.js';
|
|
15
18
|
export { renderByMode, type ModeHandler, type ModeMap, } from './core/mode-render.js';
|
|
16
19
|
export { shouldApplyBg, makeBgFill } from './core/bg-fill.js';
|
|
17
20
|
export { createBijou, type CreateBijouOptions } from './factory.js';
|
|
18
|
-
export { type RGB, type GradientStop, type TextModifier, type TokenValue, type InkColor, type BaseStatusKey, type BaseUiKey, type BaseGradientKey, type Theme, CYAN_MAGENTA, TEAL_ORANGE_PINK, PRESETS, tv, styled, styledStatus, extendTheme, lerp3, gradientText, type GradientTextOptions, isNoColor, createThemeResolver, createResolved, type ResolvedTheme, type ThemeResolver, type ThemeResolverOptions, fromDTCG, toDTCG, type DTCGDocument, type DTCGToken, type DTCGGroup, rgbToAnsi256, nearestAnsi256, rgbToAnsi16, ansi256ToAnsi16, type ColorLevel, createThemeAccessors, type ThemeAccessors, hexToRgb, rgbToHex, lighten, darken, mix, complementary, saturate, desaturate, createTokenGraph, type TokenGraph, type ThemeMode, type ColorDefinition, type TokenDefinition, type TokenDefinitions, type ColorTransform, } from './core/theme/index.js';
|
|
19
|
-
export { isWideChar, segmentGraphemes, graphemeClusterWidth, graphemeWidth, prepareWrappedText, wrapPreparedTextToWidth, clipToWidth, wrapToWidth, ANSI_SGR_RE, stripAnsi, } from './core/text/index.js';
|
|
21
|
+
export { type RGB, type GradientStop, type TextModifier, type TokenValue, type InkColor, type BaseStatusKey, type BaseUiKey, type BaseGradientKey, type Theme, CYAN_MAGENTA, TEAL_ORANGE_PINK, PRESETS, tv, styled, styledStatus, extendTheme, lerp3, gradientText, type GradientTextOptions, isNoColor, createThemeResolver, createResolved, type ResolvedTheme, type ThemeResolver, type ThemeResolverOptions, fromDTCG, toDTCG, type DTCGDocument, type DTCGToken, type DTCGGroup, rgbToAnsi256, nearestAnsi256, rgbToAnsi16, ansi256ToAnsi16, type ColorLevel, createThemeAccessors, type ThemeAccessors, color, colorHex, colorRgb, hexToRgb, isResolvedColor, resolveColor, rgbToHex, tryResolveColor, lighten, darken, mix, complementary, saturate, desaturate, type ColorRef, type ResolvedColor, createTokenGraph, type TokenGraph, type ThemeMode, type ColorDefinition, type TokenDefinition, type TokenDefinitions, type ColorTransform, } from './core/theme/index.js';
|
|
22
|
+
export { forceTextPresentation, TEXT_PRESENTATION_SELECTOR, isWideChar, segmentGraphemes, graphemeClusterWidth, graphemeWidth, sanitizeTerminalText, sanitizePlainTerminalText, prepareWrappedText, wrapPreparedTextToWidth, clipToWidth, wrapToWidth, ANSI_CONTROL_SEQUENCE_RE, ANSI_SGR_RE, stripAnsi, } from './core/text/index.js';
|
|
20
23
|
export type { PreparedWrappedLine, PreparedWrappedText, } from './core/text/index.js';
|
|
21
24
|
export { detectOutputMode, detectColorScheme, type OutputMode, type ColorScheme, } from './core/detect/index.js';
|
|
22
|
-
export { spinnerFrame, createSpinner, type SpinnerOptions, type SpinnerController, type OverflowBehavior, progressBar, createProgressBar, createAnimatedProgressBar, type ProgressBarOptions, type LiveProgressBarOptions, type AnimatedProgressBarOptions, type ProgressBarController, table, type TableColumn, type TableOptions, tableSurface, type TableSurfaceCell, type TableSurfaceOptions, box, headerBox, type BoxOptions, type HeaderBoxOptions, boxSurface, headerBoxSurface, selectLogoSize, loadRandomLogo, type LogoSize, type LogoResult, type LogoConstraints, type LogoOptions, separator, type SeparatorOptions, separatorSurface, badge, type BadgeVariant, type BadgeOptions, alert, type AlertVariant, type AlertOptions, alertSurface, skeleton, type SkeletonOptions, kbd, type KbdOptions, tree, type TreeNode, type TreeOptions, accordion, type AccordionSection, type AccordionOptions, timeline, type TimelineEvent, type TimelineOptions, tabs, type TabItem, type TabsOptions, breadcrumb, type BreadcrumbOptions, paginator, type PaginatorOptions, stepper, type StepperStep, type StepperOptions, explainability, type ExplainabilityEvidenceItem, type ExplainabilityOptions, inspector, type InspectorChrome, type InspectorSectionTone, type InspectorSection, type InspectorOptions, dag, dagSlice, dagLayout, type DagNode, type DagOptions, type DagNodePosition, type DagLayout, arraySource, isDagSource, isSlicedDagSource, type DagSource, type SlicedDagSource, type DagSliceOptions, dagStats, type DagStats, enumeratedList, type BulletStyle, type EnumeratedListOptions, hyperlink, type HyperlinkOptions, log, type LogLevel, type LogOptions, markdown, type MarkdownOptions, constrain, type ConstrainOptions, timer, createTimer, createStopwatch, type TimerOptions, type TimerController, type CreateTimerOptions, type CreateStopwatchOptions, cursorGuard, withHiddenCursor, type CursorGuard, type CursorHideHandle, sparkline, type SparklineOptions, brailleChartSurface, type BrailleChartOptions, statsPanelSurface, type StatsPanelEntry, type StatsPanelOptions, perfOverlaySurface, type PerfOverlayStats, type PerfOverlayOptions, } from './core/components/index.js';
|
|
25
|
+
export { spinnerFrame, createSpinner, type SpinnerOptions, type SpinnerController, type OverflowBehavior, progressBar, createProgressBar, createAnimatedProgressBar, type ProgressBarOptions, type LiveProgressBarOptions, type AnimatedProgressBarOptions, type ProgressBarController, table, type TableColumn, type TableTextCell, type TableTextRow, type TableOptions, tableSurface, type TableSurfaceCell, type TableSurfaceRow, type TableSurfaceOptions, box, headerBox, type BoxOptions, type HeaderBoxOptions, boxSurface, headerBoxSurface, selectLogoSize, loadRandomLogo, type LogoSize, type LogoResult, type LogoConstraints, type LogoOptions, separator, type SeparatorOptions, separatorSurface, badge, type BadgeVariant, type BadgeOptions, alert, type AlertVariant, type AlertOptions, alertSurface, skeleton, type SkeletonOptions, kbd, type KbdOptions, tree, type TreeNode, type TreeOptions, accordion, type AccordionSection, type AccordionOptions, timeline, type TimelineEvent, type TimelineOptions, tabs, type TabItem, type TabsOptions, breadcrumb, type BreadcrumbOptions, paginator, type PaginatorOptions, stepper, type StepperStep, type StepperOptions, guidedFlow, type GuidedFlowStepStatus, type GuidedFlowStep, type GuidedFlowSectionTone, type GuidedFlowSection, type GuidedFlowOptions, explainability, type ExplainabilityEvidenceItem, type ExplainabilityOptions, inspector, type InspectorChrome, type InspectorSectionTone, type InspectorSection, type InspectorOptions, dag, dagSlice, dagLayout, type DagNode, type DagOptions, type DagNodePosition, type DagLayout, arraySource, isDagSource, isSlicedDagSource, type DagSource, type SlicedDagSource, type DagSliceOptions, dagStats, type DagStats, enumeratedList, type BulletStyle, type EnumeratedListOptions, hyperlink, type HyperlinkOptions, log, type LogLevel, type LogOptions, markdown, type MarkdownOptions, constrain, type ConstrainOptions, timer, createTimer, createStopwatch, type TimerOptions, type TimerController, type CreateTimerOptions, type CreateStopwatchOptions, cursorGuard, withHiddenCursor, type CursorGuard, type CursorHideHandle, sparkline, type SparklineOptions, brailleChartSurface, type BrailleChartOptions, statsPanelSurface, type StatsPanelEntry, type StatsPanelOptions, perfOverlaySurface, type PerfOverlayStats, type PerfOverlayOptions, } from './core/components/index.js';
|
|
23
26
|
export { preferenceListSurface, preferenceRowSurface, resolvePreferenceRowLayout, preparePreferenceRow, preparePreferenceSections, } from './core/components/preference-list.js';
|
|
24
27
|
export type { PreferenceListTheme, PreferenceRowKind, PreferenceRow, PreparedPreferenceRow, PreferenceSection, PreparedPreferenceSection, PreferenceRowLayout, PreferenceRowSurfaceOptions, PreferenceListSurfaceOptions, } from './core/components/preference-list.js';
|
|
25
28
|
export { HIDE_CURSOR, SHOW_CURSOR, CLEAR_LINE_RETURN } from './core/ansi.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,YAAY,EACV,WAAW,EACX,SAAS,EACT,SAAS,EACT,eAAe,EACf,QAAQ,EACR,MAAM,EACN,SAAS,EACT,cAAc,EACd,WAAW,EACX,WAAW,EACX,SAAS,EACT,YAAY,GACb,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,KAAK,IAAI,EACT,KAAK,OAAO,EACZ,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,aAAa,EACb,SAAS,EACT,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,SAAS,EACT,QAAQ,EACR,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACV,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,WAAW,GACZ,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EACL,iBAAiB,EACjB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -4,15 +4,18 @@
|
|
|
4
4
|
* Themed terminal components for CLIs, loggers, and scripts —
|
|
5
5
|
* with graceful degradation across output modes.
|
|
6
6
|
*/
|
|
7
|
-
export { createSurface, FULL_MASK, ROTATION_CHAR_MAP, } from './ports/surface.js';
|
|
7
|
+
export { createSurface, isPackedSurface, FULL_MASK, ROTATION_CHAR_MAP, } from './ports/surface.js';
|
|
8
8
|
export { FLAG_BOLD, FLAG_DIM, FLAG_STRIKETHROUGH, FLAG_INVERSE, FLAG_EMPTY, UNDERLINE_SOLID, UNDERLINE_CURLY, UNDERLINE_DOTDASH, FLAG_DASHED, } from './core/render/packed-cell.js';
|
|
9
9
|
// Context
|
|
10
|
-
export { getDefaultContext, setDefaultContext, } from './context.js';
|
|
10
|
+
export { getDefaultContext, setDefaultContext, setDefaultContextInitializer, } from './context.js';
|
|
11
|
+
export { cloneContextWithResolvedTheme, cloneContextWithTheme, observeTheme, } from './context-theme.js';
|
|
11
12
|
// Context resolution helpers
|
|
12
13
|
export { resolveCtx, resolveSafeCtx } from './core/resolve-ctx.js';
|
|
13
14
|
export { systemClock, resolveClock, sleep, defer } from './core/clock.js';
|
|
14
15
|
export { decodeRawKeyInput, decodeRawKeySequence } from './core/key-input.js';
|
|
15
16
|
export { sanitizeRuntimeDimension, readRuntimeViewport, installRuntimeViewportOverlay, updateRuntimeViewport, } from './core/runtime-viewport.js';
|
|
17
|
+
export { sanitizeNonNegativeInt, sanitizeOptionalNonNegativeInt, sanitizeOptionalPositiveInt, sanitizePositiveInt, } from './core/numeric.js';
|
|
18
|
+
export { solveGridRects, solveSplitAxisSizes, solveSplitPaneRects, } from './core/layout/geometry.js';
|
|
16
19
|
// Mode rendering strategy
|
|
17
20
|
export { renderByMode, } from './core/mode-render.js';
|
|
18
21
|
// Background fill utilities
|
|
@@ -38,15 +41,15 @@ rgbToAnsi256, nearestAnsi256, rgbToAnsi16, ansi256ToAnsi16,
|
|
|
38
41
|
// Theme accessors
|
|
39
42
|
createThemeAccessors,
|
|
40
43
|
// Color manipulation
|
|
41
|
-
hexToRgb, rgbToHex, lighten, darken, mix, complementary, saturate, desaturate,
|
|
44
|
+
color, colorHex, colorRgb, hexToRgb, isResolvedColor, resolveColor, rgbToHex, tryResolveColor, lighten, darken, mix, complementary, saturate, desaturate,
|
|
42
45
|
// Reactive Token Graph
|
|
43
46
|
createTokenGraph, } from './core/theme/index.js';
|
|
44
47
|
// Text / grapheme utilities
|
|
45
|
-
export { isWideChar, segmentGraphemes, graphemeClusterWidth, graphemeWidth, prepareWrappedText, wrapPreparedTextToWidth, clipToWidth, wrapToWidth, ANSI_SGR_RE, stripAnsi, } from './core/text/index.js';
|
|
48
|
+
export { forceTextPresentation, TEXT_PRESENTATION_SELECTOR, isWideChar, segmentGraphemes, graphemeClusterWidth, graphemeWidth, sanitizeTerminalText, sanitizePlainTerminalText, prepareWrappedText, wrapPreparedTextToWidth, clipToWidth, wrapToWidth, ANSI_CONTROL_SEQUENCE_RE, ANSI_SGR_RE, stripAnsi, } from './core/text/index.js';
|
|
46
49
|
// Detection
|
|
47
50
|
export { detectOutputMode, detectColorScheme, } from './core/detect/index.js';
|
|
48
51
|
// Components
|
|
49
|
-
export { spinnerFrame, createSpinner, progressBar, createProgressBar, createAnimatedProgressBar, table, tableSurface, box, headerBox, boxSurface, headerBoxSurface, selectLogoSize, loadRandomLogo, separator, separatorSurface, badge, alert, alertSurface, skeleton, kbd, tree, accordion, timeline, tabs, breadcrumb, paginator, stepper, explainability, inspector, dag, dagSlice, dagLayout, arraySource, isDagSource, isSlicedDagSource, dagStats, enumeratedList, hyperlink, log, markdown, constrain, timer, createTimer, createStopwatch, cursorGuard, withHiddenCursor, sparkline, brailleChartSurface, statsPanelSurface, perfOverlaySurface, } from './core/components/index.js';
|
|
52
|
+
export { spinnerFrame, createSpinner, progressBar, createProgressBar, createAnimatedProgressBar, table, tableSurface, box, headerBox, boxSurface, headerBoxSurface, selectLogoSize, loadRandomLogo, separator, separatorSurface, badge, alert, alertSurface, skeleton, kbd, tree, accordion, timeline, tabs, breadcrumb, paginator, stepper, guidedFlow, explainability, inspector, dag, dagSlice, dagLayout, arraySource, isDagSource, isSlicedDagSource, dagStats, enumeratedList, hyperlink, log, markdown, constrain, timer, createTimer, createStopwatch, cursorGuard, withHiddenCursor, sparkline, brailleChartSurface, statsPanelSurface, perfOverlaySurface, } from './core/components/index.js';
|
|
50
53
|
export { preferenceListSurface, preferenceRowSurface, resolvePreferenceRowLayout, preparePreferenceRow, preparePreferenceSections, } from './core/components/preference-list.js';
|
|
51
54
|
// Shared ANSI escape constants
|
|
52
55
|
export { HIDE_CURSOR, SHOW_CURSOR, CLEAR_LINE_RETURN } from './core/ansi.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,OAAO,EAOL,aAAa,EACb,SAAS,EACT,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,SAAS,EACT,QAAQ,EACR,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACV,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,WAAW,GACZ,MAAM,8BAA8B,CAAC;AAEtC,UAAU;AACV,OAAO,EACL,iBAAiB,EACjB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/ports/context.d.ts
CHANGED
|
@@ -25,7 +25,12 @@ export interface BijouContext {
|
|
|
25
25
|
readonly clock?: ClockPort;
|
|
26
26
|
/** Color / text-decoration adapter. */
|
|
27
27
|
readonly style: StylePort;
|
|
28
|
-
/**
|
|
28
|
+
/**
|
|
29
|
+
* Reactive token graph for advanced theming.
|
|
30
|
+
*
|
|
31
|
+
* Third-party component authors should prefer the public `observeTheme()`
|
|
32
|
+
* seam over subscribing to this graph directly.
|
|
33
|
+
*/
|
|
29
34
|
readonly tokenGraph: TokenGraph;
|
|
30
35
|
/** Resolve styles from a global stylesheet based on component identity. */
|
|
31
36
|
resolveBCSS(identity: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/ports/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,kEAAkE;IAClE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,yFAAyF;IACzF,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,iDAAiD;IACjD,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/ports/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,kEAAkE;IAClE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,yFAAyF;IACzF,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,iDAAiD;IACjD,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAEhC,2EAA2E;IAC3E,WAAW,CAAC,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjG,sCAAsC;IACtC,QAAQ,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC;IACnD,oCAAoC;IACpC,MAAM,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC;IAC/C,qCAAqC;IACrC,OAAO,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC;IACjD,6DAA6D;IAC7D,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;IAChC,wCAAwC;IACxC,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;IAC5B,4DAA4D;IAC5D,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,EAAE,CAAC;CACvC"}
|
package/dist/ports/surface.d.ts
CHANGED
|
@@ -4,16 +4,17 @@
|
|
|
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 { type ColorRef } from '../core/theme/color.js';
|
|
7
8
|
/**
|
|
8
9
|
* A single terminal character cell.
|
|
9
10
|
*/
|
|
10
11
|
export interface Cell {
|
|
11
12
|
/** The character to display. Must be a single grapheme. */
|
|
12
13
|
char: string;
|
|
13
|
-
/** Foreground
|
|
14
|
-
fg?:
|
|
15
|
-
/** Background
|
|
16
|
-
bg?:
|
|
14
|
+
/** Foreground color reference. Undefined = terminal default. */
|
|
15
|
+
fg?: ColorRef;
|
|
16
|
+
/** Background color reference. Undefined = terminal default. */
|
|
17
|
+
bg?: ColorRef;
|
|
17
18
|
/**
|
|
18
19
|
* Pre-parsed foreground RGB channels `[r, g, b]` (0–255 each).
|
|
19
20
|
* When present, the hot path skips hex string parsing of `fg`
|
|
@@ -181,6 +182,7 @@ export interface Surface {
|
|
|
181
182
|
* of common line-art and box-drawing characters.
|
|
182
183
|
*/
|
|
183
184
|
export declare const ROTATION_CHAR_MAP: Record<string, string>;
|
|
185
|
+
export declare function isPackedSurface(s: Surface): s is PackedSurface;
|
|
184
186
|
/**
|
|
185
187
|
* Extended surface interface exposing the packed buffer for hot-path consumers.
|
|
186
188
|
*/
|