@promptctl/rich-js 0.6.0 → 0.7.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 (33) hide show
  1. package/dist/index.d.ts +1 -2
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +3 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/template-bindings/color-funcs.d.ts +78 -0
  6. package/dist/template-bindings/color-funcs.d.ts.map +1 -0
  7. package/dist/template-bindings/color-funcs.js +212 -0
  8. package/dist/template-bindings/color-funcs.js.map +1 -0
  9. package/dist/template-bindings/index.d.ts +25 -18
  10. package/dist/template-bindings/index.d.ts.map +1 -1
  11. package/dist/template-bindings/index.js +27 -19
  12. package/dist/template-bindings/index.js.map +1 -1
  13. package/dist/template-bindings/palette-funcs.d.ts +60 -53
  14. package/dist/template-bindings/palette-funcs.d.ts.map +1 -1
  15. package/dist/template-bindings/palette-funcs.js +64 -132
  16. package/dist/template-bindings/palette-funcs.js.map +1 -1
  17. package/dist/template-bindings/style-funcs.d.ts +11 -12
  18. package/dist/template-bindings/style-funcs.d.ts.map +1 -1
  19. package/dist/template-bindings/style-funcs.js +48 -74
  20. package/dist/template-bindings/style-funcs.js.map +1 -1
  21. package/dist/themes/buildPalette.d.ts +7 -1
  22. package/dist/themes/buildPalette.d.ts.map +1 -1
  23. package/dist/themes/buildPalette.js +15 -1
  24. package/dist/themes/buildPalette.js.map +1 -1
  25. package/dist/themes/colorRef.d.ts +52 -0
  26. package/dist/themes/colorRef.d.ts.map +1 -0
  27. package/dist/themes/colorRef.js +97 -0
  28. package/dist/themes/colorRef.js.map +1 -0
  29. package/dist/themes/palette.d.ts +4 -2
  30. package/dist/themes/palette.d.ts.map +1 -1
  31. package/dist/themes/palette.js +4 -2
  32. package/dist/themes/palette.js.map +1 -1
  33. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -5,8 +5,7 @@ export type { DetectColorOptions } from "./core/color.js";
5
5
  export { Oklch, IDENTITY, INVERT_LIGHTNESS, isIdentityKey, } from "./core/oklch.js";
6
6
  export type { ThemeKey } from "./core/oklch.js";
7
7
  export { Palette } from "./themes/palette.js";
8
- export { PaletteResolver } from "./themes/paletteResolver.js";
9
- export type { ResolveContext } from "./themes/paletteResolver.js";
8
+ export { resolveColorRef, parseHexColor, ColorRefError, HEX_COLOR_RE, } from "./themes/colorRef.js";
10
9
  export { buildPalette } from "./themes/buildPalette.js";
11
10
  export type { BaseColors } from "./themes/buildPalette.js";
12
11
  export { DEFAULT_TERMINAL_THEME, MONOKAI, SVG_EXPORT_THEME, NORD, GRUVBOX, DRACULA, TOKYO_NIGHT, FLEXOKI, CYBERPUNK, CATPPUCCIN_MOCHA, CATPPUCCIN_LATTE, CATPPUCCIN_FRAPPE, CATPPUCCIN_MACCHIATO, SOLARIZED_DARK, SOLARIZED_LIGHT, ROSE_PINE, ROSE_PINE_MOON, ROSE_PINE_DAWN, ATOM_ONE_DARK, ATOM_ONE_LIGHT, TEXTUAL_DARK, TEXTUAL_LIGHT, TEXTUAL_ANSI, } from "./themes/terminalThemes.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -5,7 +5,9 @@ export { ColorRgba, ColorTable, ColorDepth, ColorSpec, ColorParseError, Terminal
5
5
  export { Oklch, IDENTITY, INVERT_LIGHTNESS, isIdentityKey, } from "./core/oklch.js";
6
6
  // Themes — semantic palettes (distinct from ColorTable quantization LUTs)
7
7
  export { Palette } from "./themes/palette.js";
8
- export { PaletteResolver } from "./themes/paletteResolver.js";
8
+ // The one checkpoint turning an author-written colour string — a palette
9
+ // variable name or a `#RRGGBB` literal — into a colour. [LAW:parse-dont-validate]
10
+ export { resolveColorRef, parseHexColor, ColorRefError, HEX_COLOR_RE, } from "./themes/colorRef.js";
9
11
  export { buildPalette } from "./themes/buildPalette.js";
10
12
  export { DEFAULT_TERMINAL_THEME, MONOKAI, SVG_EXPORT_THEME, NORD, GRUVBOX, DRACULA, TOKYO_NIGHT, FLEXOKI, CYBERPUNK, CATPPUCCIN_MOCHA, CATPPUCCIN_LATTE, CATPPUCCIN_FRAPPE, CATPPUCCIN_MACCHIATO, SOLARIZED_DARK, SOLARIZED_LIGHT, ROSE_PINE, ROSE_PINE_MOON, ROSE_PINE_DAWN, ATOM_ONE_DARK, ATOM_ONE_LIGHT, TEXTUAL_DARK, TEXTUAL_LIGHT, TEXTUAL_ANSI, } from "./themes/terminalThemes.js";
11
13
  export { getThemePalette, listThemePalettes } from "./themes/registry.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Color *values* for the rich-js template binding.
3
+ *
4
+ * ### Why colors are values
5
+ *
6
+ * Every other function in this binding layer takes a child fragment and
7
+ * returns a styled fragment. These do not: they take colors and return a
8
+ * color. That is the whole point. Before this module existed, a color could
9
+ * not survive between two operations — every color function resolved and
10
+ * applied in one breath — so composing two color operations had to be spelled
11
+ * as a *string grammar* (`"primary-darken-3 50%"`), a second language
12
+ * reimplementing function application inside a string literal. Every new color
13
+ * operation meant a new grammar production. [LAW:no-mode-explosion]
14
+ *
15
+ * With colors as values the surface is one shape that grows by nesting:
16
+ *
17
+ * ```
18
+ * {{ fg (color "primary") .branch }}
19
+ * {{ fg (darken (color "primary") 2) .branch }}
20
+ * {{ fg (mix (color "foreground") (color "surface") 65) .label }}
21
+ * ```
22
+ *
23
+ * The simple case is a literal prefix of the composed case — an author adding
24
+ * a `darken` to working code wraps it, rather than rewriting it into an
25
+ * unfamiliar form. [LAW:composability]
26
+ *
27
+ * ### The carrier is a hex string, deliberately
28
+ *
29
+ * A color crosses the template seam as `#RRGGBB`, not as an opaque object,
30
+ * for three reasons:
31
+ *
32
+ * 1. **The type separates.** `"string"` is the strictest arg slot the template
33
+ * engine has — it *refuses* typed `T`. So a color slot cannot silently
34
+ * accept a text fragment. An opaque object would land in `"T"`/`"liftable"`,
35
+ * both of which admit any non-primitive, and `{{ bold (color "primary") }}`
36
+ * would type-check its way into nonsense. [LAW:types-are-the-program]
37
+ * 2. **It flows through the language.** `{{ $muted := mix … }}` holds it,
38
+ * `printf` prints it, `eq` compares it — no engine changes required. Naming
39
+ * a color once and using it ten times is the ergonomic payoff.
40
+ * 3. **Misuse is visible.** A color that lands in text position renders as
41
+ * `#7aa2f7` — wrong in a way an author immediately sees, never a silently
42
+ * dropped style. [LAW:no-silent-failure]
43
+ *
44
+ * No precision is given up: `darken`, `blendRgb`, and `contrastFor` already
45
+ * take and return 8-bit `ColorRgba`. The one caveat is OKLCH: each of the
46
+ * axis functions below round-trips sRGB→OKLCH→sRGB, so chaining three or more
47
+ * of them quantizes visibly. Compose two, or reach for `transposePalette` when
48
+ * a whole palette needs adapting — the same caveat that already applies to
49
+ * chained transpositions.
50
+ *
51
+ * ### Palette-free on purpose
52
+ *
53
+ * Nothing here knows what a palette is. `color` (the one palette-dependent
54
+ * function, in `palette-funcs.ts`) turns a name into a hex string; from that
55
+ * point on the math is pure. A consumer with no theme system at all still gets
56
+ * the full color vocabulary by feeding it hex literals. [LAW:one-way-deps]
57
+ */
58
+ import type { FuncMap } from "@promptctl/go-template-js";
59
+ /**
60
+ * The palette-free color vocabulary: every function takes colors and returns a
61
+ * color, so they compose by nesting.
62
+ *
63
+ * | function | meaning |
64
+ * |---|---|
65
+ * | `darken c n` / `lighten c n` | slide HSL lightness by N 10% levels |
66
+ * | `mix a b pct` | blend `a` toward `b` by `pct`% (0 → `a`, 100 → `b`) |
67
+ * | `contrastOn bg` | black or white, whichever is readable on `bg` |
68
+ * | `readableOn fg bg ratio` | `fg` nudged in OKLCH lightness until it clears `ratio` on `bg`, hue preserved |
69
+ * | `shiftHue c deg` | rotate hue in OKLCH |
70
+ * | `scaleChroma c f` | multiply chroma (0 → gray, 1 → identity) |
71
+ * | `scaleLightness c f` | multiply lightness (1 → identity, -1 → invert) |
72
+ * | `shiftLightness c d` | add to lightness, after any scale |
73
+ *
74
+ * Pair with `paletteFuncs()` to name colors from a theme, and with
75
+ * `richTextStyleFuncs()`'s `fg`/`bg` to paint them onto text.
76
+ */
77
+ export declare function colorFuncs(): FuncMap;
78
+ //# sourceMappingURL=color-funcs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color-funcs.d.ts","sourceRoot":"","sources":["../../src/template-bindings/color-funcs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAgB,MAAM,2BAA2B,CAAC;AAgLvE;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,UAAU,IAAI,OAAO,CASpC"}
@@ -0,0 +1,212 @@
1
+ /**
2
+ * Color *values* for the rich-js template binding.
3
+ *
4
+ * ### Why colors are values
5
+ *
6
+ * Every other function in this binding layer takes a child fragment and
7
+ * returns a styled fragment. These do not: they take colors and return a
8
+ * color. That is the whole point. Before this module existed, a color could
9
+ * not survive between two operations — every color function resolved and
10
+ * applied in one breath — so composing two color operations had to be spelled
11
+ * as a *string grammar* (`"primary-darken-3 50%"`), a second language
12
+ * reimplementing function application inside a string literal. Every new color
13
+ * operation meant a new grammar production. [LAW:no-mode-explosion]
14
+ *
15
+ * With colors as values the surface is one shape that grows by nesting:
16
+ *
17
+ * ```
18
+ * {{ fg (color "primary") .branch }}
19
+ * {{ fg (darken (color "primary") 2) .branch }}
20
+ * {{ fg (mix (color "foreground") (color "surface") 65) .label }}
21
+ * ```
22
+ *
23
+ * The simple case is a literal prefix of the composed case — an author adding
24
+ * a `darken` to working code wraps it, rather than rewriting it into an
25
+ * unfamiliar form. [LAW:composability]
26
+ *
27
+ * ### The carrier is a hex string, deliberately
28
+ *
29
+ * A color crosses the template seam as `#RRGGBB`, not as an opaque object,
30
+ * for three reasons:
31
+ *
32
+ * 1. **The type separates.** `"string"` is the strictest arg slot the template
33
+ * engine has — it *refuses* typed `T`. So a color slot cannot silently
34
+ * accept a text fragment. An opaque object would land in `"T"`/`"liftable"`,
35
+ * both of which admit any non-primitive, and `{{ bold (color "primary") }}`
36
+ * would type-check its way into nonsense. [LAW:types-are-the-program]
37
+ * 2. **It flows through the language.** `{{ $muted := mix … }}` holds it,
38
+ * `printf` prints it, `eq` compares it — no engine changes required. Naming
39
+ * a color once and using it ten times is the ergonomic payoff.
40
+ * 3. **Misuse is visible.** A color that lands in text position renders as
41
+ * `#7aa2f7` — wrong in a way an author immediately sees, never a silently
42
+ * dropped style. [LAW:no-silent-failure]
43
+ *
44
+ * No precision is given up: `darken`, `blendRgb`, and `contrastFor` already
45
+ * take and return 8-bit `ColorRgba`. The one caveat is OKLCH: each of the
46
+ * axis functions below round-trips sRGB→OKLCH→sRGB, so chaining three or more
47
+ * of them quantizes visibly. Compose two, or reach for `transposePalette` when
48
+ * a whole palette needs adapting — the same caveat that already applies to
49
+ * chained transpositions.
50
+ *
51
+ * ### Palette-free on purpose
52
+ *
53
+ * Nothing here knows what a palette is. `color` (the one palette-dependent
54
+ * function, in `palette-funcs.ts`) turns a name into a hex string; from that
55
+ * point on the math is pure. A consumer with no theme system at all still gets
56
+ * the full color vocabulary by feeding it hex literals. [LAW:one-way-deps]
57
+ */
58
+ import { blendRgb } from "../core/color.js";
59
+ import { Oklch, IDENTITY } from "../core/oklch.js";
60
+ import { HEX_COLOR_RE, parseHexColor } from "../themes/colorRef.js";
61
+ import { darken, contrastFor, ensureContrast } from "../themes/colorMath.js";
62
+ /**
63
+ * The gate every color argument crosses. [LAW:parse-dont-validate] — the
64
+ * function bodies below receive `ColorRgba` and never re-check.
65
+ *
66
+ * Parsing itself is `parseHexColor`'s job; this wrapper exists only to replace
67
+ * its error *wording*, because the mistake it catches is almost always the
68
+ * same one — a palette name passed where a color belongs (`darken "primary" 2`)
69
+ * — and an author who reads "wrap it: darken (color "primary")" is corrected in
70
+ * one step, where "expected #RRGGBB" leaves them guessing.
71
+ * [LAW:no-silent-failure]
72
+ */
73
+ function asColor(value, func) {
74
+ if (!HEX_COLOR_RE.test(value.trim())) {
75
+ throw new TypeError(`${func} expected a color (#RRGGBB or #RRGGBBAA), got ${JSON.stringify(value)}` +
76
+ ` — to use a palette name here, wrap it: ${func} (color ${JSON.stringify(value)}) …`);
77
+ }
78
+ return parseHexColor(value);
79
+ }
80
+ function colorFunc(argTypes, fn) {
81
+ return { fn, argTypes, returnType: "string" };
82
+ }
83
+ /**
84
+ * The gate every *numeric* argument crosses, with an optional inclusive range.
85
+ *
86
+ * [LAW:single-enforcer] One check for the whole family. The template engine
87
+ * treats a trailing slot as variadic, so an under-supplied call
88
+ * (`{{ darken "#102030" }}`) reaches the body with `undefined` rather than
89
+ * failing at the gate. Without this, that `undefined` propagated into the color
90
+ * math and surfaced as `ColorRgba.red must be an integer in [0, 255]; got NaN`
91
+ * — loud, but pointing at a channel the author never wrote, three layers from
92
+ * the missing argument. An error that does not locate its cause is barely
93
+ * better than a silent one. [LAW:no-silent-failure]
94
+ */
95
+ function asAmount(value, func, param, range) {
96
+ const inRange = range === undefined || (value >= range.min && value <= range.max);
97
+ if (!Number.isFinite(value) || !inRange) {
98
+ const bound = range === undefined
99
+ ? "a finite number"
100
+ : `within ${range.min}..${range.max} (${range.note})`;
101
+ throw new RangeError(`${func}'s ${param} must be ${bound}, got ${value}` +
102
+ (value === undefined ? ` — ${func} takes it as its last argument` : ""));
103
+ }
104
+ return value;
105
+ }
106
+ // --- HSL lightness ---
107
+ //
108
+ // `lighten` is `darken` with the sign flipped — the same operation, not a
109
+ // second one (colorMath's `lighten` is literally `darken(c, -levels)`). Both
110
+ // names ship because "lighten by 2" and "darken by -2" are not equally
111
+ // readable at a call site, and the operation is genuinely bidirectional.
112
+ const darkenFunc = colorFunc(["string", "int"], ((hex, levels) => darken(asColor(hex, "darken"), asAmount(levels, "darken", "levels")).hex));
113
+ const lightenFunc = colorFunc(["string", "int"], ((hex, levels) => darken(asColor(hex, "lighten"), -asAmount(levels, "lighten", "levels")).hex));
114
+ // --- Blending ---
115
+ //
116
+ // [LAW:one-type-per-behavior] There is no separate `alphaBlend` binding.
117
+ // `alphaBlend(fg, bg, a)` in colorMath is *defined* as `blendRgb(bg, fg, a)` —
118
+ // one operation wearing two names. Compositing a translucent color over a
119
+ // background and mixing two colors by a percentage are the same arithmetic,
120
+ // so they get one function. Terminals have no alpha channel, which is also why
121
+ // no function here *produces* a translucent color: it could not be rendered,
122
+ // and a color that silently does nothing in the sink is worse than no
123
+ // function at all.
124
+ const MIX_PCT_MAX = 100;
125
+ const MIX_RANGE = { min: 0, max: MIX_PCT_MAX, note: "0 = from, 100 = toward" };
126
+ const mixFunc = colorFunc(["string", "string", "float"], ((fromHex, towardHex, pct) => blendRgb(asColor(fromHex, "mix"), asColor(towardHex, "mix"), asAmount(pct, "mix", "percentage", MIX_RANGE) / MIX_PCT_MAX).hex));
127
+ // --- Readability ---
128
+ //
129
+ // Two different questions, so two functions rather than one with a flag:
130
+ // `contrastOn` asks "what is maximally readable here" (black or white, WCAG
131
+ // relative-luminance cutoff); `readableOn` asks "keep this color recognizably
132
+ // itself, but guarantee it clears `ratio`" — it slides OKLCH lightness and
133
+ // preserves hue, so a blue on dark blue becomes a lighter blue rather than
134
+ // white.
135
+ //
136
+ // [LAW:no-silent-failure] `ratio` is required, not defaulted to WCAG AA's 4.5.
137
+ // The threshold is the whole decision this function makes, and the right value
138
+ // genuinely differs by intent — 4.5 for body text, 3.0 for large or
139
+ // deliberately recessive text. A hidden default would silently govern an
140
+ // accessibility outcome the author never saw, and would quietly over-correct a
141
+ // caller whose *point* was to be quiet: de-emphasized text floored at 4.5 is no
142
+ // longer de-emphasized.
143
+ // WCAG 2.x contrast ratios live in [1, 21] — 1 is a color on itself.
144
+ const RATIO_RANGE = {
145
+ min: 1,
146
+ max: 21,
147
+ note: "4.5 = AA body text, 3 = AA large text",
148
+ };
149
+ const contrastOnFunc = colorFunc(["string"], ((bgHex) => contrastFor(asColor(bgHex, "contrastOn")).hex));
150
+ const readableOnFunc = colorFunc(["string", "string", "float"], ((fgHex, bgHex, ratio) => ensureContrast(asColor(fgHex, "readableOn"), asColor(bgHex, "readableOn"), asAmount(ratio, "readableOn", "ratio", RATIO_RANGE)).hex));
151
+ // --- OKLCH axes ---
152
+ //
153
+ // [LAW:one-source-of-truth] One function per `ThemeKey` axis, and the table is
154
+ // keyed BY the axis so the compiler proves it total: add a field to `ThemeKey`
155
+ // and this object stops satisfying `Record<keyof ThemeKey, string>` until a
156
+ // binding name is chosen for it. The same derive-registrations-from-the-real-
157
+ // inventory trick `attributeFuncs()` uses over `ATTRIBUTE_NAMES`.
158
+ //
159
+ // Naming follows the axis semantics rather than the field spelling: `shift`
160
+ // for the additive axes, `scale` for the multiplicative ones, so a reader can
161
+ // tell from the call site whether `1` means "no change" or "one unit".
162
+ const OKLCH_AXIS_FUNCS = {
163
+ hueShift: "shiftHue",
164
+ chromaScale: "scaleChroma",
165
+ lightnessScale: "scaleLightness",
166
+ lightnessShift: "shiftLightness",
167
+ };
168
+ function oklchAxisFuncs() {
169
+ const out = {};
170
+ for (const [axis, funcName] of Object.entries(OKLCH_AXIS_FUNCS)) {
171
+ // [LAW:dataflow-not-control-flow] Every axis takes the identical path —
172
+ // splice one value into the identity key and apply it. The axis is data.
173
+ const key = axis;
174
+ out[funcName] = colorFunc(["string", "float"], ((hex, amount) => {
175
+ const themeKey = {
176
+ ...IDENTITY,
177
+ [key]: asAmount(amount, funcName, "amount"),
178
+ };
179
+ return Oklch.fromRgba(asColor(hex, funcName)).applyKey(themeKey).toRgba().hex;
180
+ }));
181
+ }
182
+ return out;
183
+ }
184
+ /**
185
+ * The palette-free color vocabulary: every function takes colors and returns a
186
+ * color, so they compose by nesting.
187
+ *
188
+ * | function | meaning |
189
+ * |---|---|
190
+ * | `darken c n` / `lighten c n` | slide HSL lightness by N 10% levels |
191
+ * | `mix a b pct` | blend `a` toward `b` by `pct`% (0 → `a`, 100 → `b`) |
192
+ * | `contrastOn bg` | black or white, whichever is readable on `bg` |
193
+ * | `readableOn fg bg ratio` | `fg` nudged in OKLCH lightness until it clears `ratio` on `bg`, hue preserved |
194
+ * | `shiftHue c deg` | rotate hue in OKLCH |
195
+ * | `scaleChroma c f` | multiply chroma (0 → gray, 1 → identity) |
196
+ * | `scaleLightness c f` | multiply lightness (1 → identity, -1 → invert) |
197
+ * | `shiftLightness c d` | add to lightness, after any scale |
198
+ *
199
+ * Pair with `paletteFuncs()` to name colors from a theme, and with
200
+ * `richTextStyleFuncs()`'s `fg`/`bg` to paint them onto text.
201
+ */
202
+ export function colorFuncs() {
203
+ return {
204
+ darken: darkenFunc,
205
+ lighten: lightenFunc,
206
+ mix: mixFunc,
207
+ contrastOn: contrastOnFunc,
208
+ readableOn: readableOnFunc,
209
+ ...oklchAxisFuncs(),
210
+ };
211
+ }
212
+ //# sourceMappingURL=color-funcs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color-funcs.js","sourceRoot":"","sources":["../../src/template-bindings/color-funcs.ts"],"names":[],"mappings":"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"}
@@ -3,20 +3,27 @@
3
3
  *
4
4
  * [LAW:one-source-of-truth] This module is the public entry point for
5
5
  * rich-js's styling vocabulary as `@promptctl/go-template-js` template
6
- * functions. Two complementary registrations are exported:
6
+ * functions. The split between the two exported registrations is exactly the
7
+ * split between what needs a theme and what does not:
7
8
  *
8
- * - `richTextFuncs()` — foreground colours, background, text attributes, and
9
- * `link`. Does not require configuration; safe to register unconditionally.
10
- * - `paletteFuncs(resolver)` — semantic palette, auto-contrast, and extended
11
- * spec forms. Requires a `PaletteResolver` argument bound to the active
12
- * theme; consumers merge it alongside `richTextFuncs()`.
9
+ * - `richTextFuncs()` — the colour sinks (`fg`/`bg`), the palette-free colour
10
+ * math (`darken`, `mix`, `contrastOn`, the OKLCH axes …), text attributes,
11
+ * and `link`. Needs no configuration; safe to register unconditionally. A
12
+ * consumer with no theme system still gets the complete colour vocabulary by
13
+ * feeding it hex literals.
14
+ * - `paletteFuncs(getPalette)` — the single function `color`, which turns a
15
+ * palette variable name into a colour. This is the *only* registration that
16
+ * knows a palette exists, which is why it is the only one that takes an
17
+ * argument. [LAW:one-way-deps]
13
18
  *
14
- * `createRichTextEngine()` is convenience sugar that wires up `richTextFuncs()`
15
- * only — it does not include `paletteFuncs`, because palette functions require
16
- * a resolver the factory cannot supply. Consumers that need palette access
17
- * call `paletteFuncs(resolver)` and merge it into their own engine config.
18
- * Nesting is plain function composition (`{{ red (bold "x") }}`), not a
19
- * second markup grammar.
19
+ * `createRichTextEngine()` wires up `richTextFuncs()` only — it cannot supply a
20
+ * palette. Consumers that name theme colours call `paletteFuncs(getPalette)`
21
+ * and merge it into their own engine config.
22
+ *
23
+ * Colours compose by nesting, like every other function:
24
+ * `{{ fg (darken (color "primary") 2) (bold "x") }}`. There is no second
25
+ * markup grammar and no colour-spec mini-language — the template *is* the
26
+ * composition mechanism.
20
27
  *
21
28
  * Fragment type: `RichText`. Chosen because it is the library's primary
22
29
  * text type (implements `Renderable` + `Measurable`), composes via
@@ -30,13 +37,13 @@ import { type Engine, type FuncMap } from "@promptctl/go-template-js";
30
37
  import { RichText } from "../core/text.js";
31
38
  import { Segment } from "../core/segment.js";
32
39
  export { paletteFuncs } from "./palette-funcs.js";
40
+ export { colorFuncs } from "./color-funcs.js";
33
41
  /**
34
- * Funcs registered by the rich-js binding — style functions (foreground,
35
- * background, attributes) and the `link` cell-splitter. Exposed as a factory
36
- * so future registrations that need configuration have a place to receive
37
- * arguments. Palette/theme/auto-contrast functions ship separately via
38
- * `paletteFuncs(resolver)` and are merged at consumer side — they require a
39
- * `PaletteResolver` argument and so cannot be included in this generic call.
42
+ * Funcs registered by the rich-js binding — the colour sinks, the palette-free
43
+ * colour math, text attributes, and the `link` cell-splitter. Everything here
44
+ * is configuration-free by construction; the one function that needs a theme
45
+ * (`color`) ships separately via `paletteFuncs(getPalette)` and is merged
46
+ * consumer-side.
40
47
  *
41
48
  * `FuncMap` is not parameterised over `T` in `@promptctl/go-template-js` — the engine's
42
49
  * `T` lives on the `Engine`/`EngineConfig`, and per-function input/output
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/template-bindings/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAgB,KAAK,MAAM,EAAE,KAAK,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG7C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAAC,QAAQ,CAAC,CAMvD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,EACxB,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,OAAY,EACnB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACnD,OAAO,EAAE,CAYX"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/template-bindings/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,EAAgB,KAAK,MAAM,EAAE,KAAK,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAI7C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAAC,QAAQ,CAAC,CAMvD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,EACxB,MAAM,EAAE,MAAM,EACd,KAAK,GAAE,OAAY,EACnB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GACnD,OAAO,EAAE,CAYX"}
@@ -3,20 +3,27 @@
3
3
  *
4
4
  * [LAW:one-source-of-truth] This module is the public entry point for
5
5
  * rich-js's styling vocabulary as `@promptctl/go-template-js` template
6
- * functions. Two complementary registrations are exported:
6
+ * functions. The split between the two exported registrations is exactly the
7
+ * split between what needs a theme and what does not:
7
8
  *
8
- * - `richTextFuncs()` — foreground colours, background, text attributes, and
9
- * `link`. Does not require configuration; safe to register unconditionally.
10
- * - `paletteFuncs(resolver)` — semantic palette, auto-contrast, and extended
11
- * spec forms. Requires a `PaletteResolver` argument bound to the active
12
- * theme; consumers merge it alongside `richTextFuncs()`.
9
+ * - `richTextFuncs()` — the colour sinks (`fg`/`bg`), the palette-free colour
10
+ * math (`darken`, `mix`, `contrastOn`, the OKLCH axes …), text attributes,
11
+ * and `link`. Needs no configuration; safe to register unconditionally. A
12
+ * consumer with no theme system still gets the complete colour vocabulary by
13
+ * feeding it hex literals.
14
+ * - `paletteFuncs(getPalette)` — the single function `color`, which turns a
15
+ * palette variable name into a colour. This is the *only* registration that
16
+ * knows a palette exists, which is why it is the only one that takes an
17
+ * argument. [LAW:one-way-deps]
13
18
  *
14
- * `createRichTextEngine()` is convenience sugar that wires up `richTextFuncs()`
15
- * only — it does not include `paletteFuncs`, because palette functions require
16
- * a resolver the factory cannot supply. Consumers that need palette access
17
- * call `paletteFuncs(resolver)` and merge it into their own engine config.
18
- * Nesting is plain function composition (`{{ red (bold "x") }}`), not a
19
- * second markup grammar.
19
+ * `createRichTextEngine()` wires up `richTextFuncs()` only — it cannot supply a
20
+ * palette. Consumers that name theme colours call `paletteFuncs(getPalette)`
21
+ * and merge it into their own engine config.
22
+ *
23
+ * Colours compose by nesting, like every other function:
24
+ * `{{ fg (darken (color "primary") 2) (bold "x") }}`. There is no second
25
+ * markup grammar and no colour-spec mini-language — the template *is* the
26
+ * composition mechanism.
20
27
  *
21
28
  * Fragment type: `RichText`. Chosen because it is the library's primary
22
29
  * text type (implements `Renderable` + `Measurable`), composes via
@@ -31,14 +38,15 @@ import { RichText } from "../core/text.js";
31
38
  import { Style } from "../core/style.js";
32
39
  import { Segment } from "../core/segment.js";
33
40
  import { richTextStyleFuncs } from "./style-funcs.js";
41
+ import { colorFuncs } from "./color-funcs.js";
34
42
  export { paletteFuncs } from "./palette-funcs.js";
43
+ export { colorFuncs } from "./color-funcs.js";
35
44
  /**
36
- * Funcs registered by the rich-js binding — style functions (foreground,
37
- * background, attributes) and the `link` cell-splitter. Exposed as a factory
38
- * so future registrations that need configuration have a place to receive
39
- * arguments. Palette/theme/auto-contrast functions ship separately via
40
- * `paletteFuncs(resolver)` and are merged at consumer side — they require a
41
- * `PaletteResolver` argument and so cannot be included in this generic call.
45
+ * Funcs registered by the rich-js binding — the colour sinks, the palette-free
46
+ * colour math, text attributes, and the `link` cell-splitter. Everything here
47
+ * is configuration-free by construction; the one function that needs a theme
48
+ * (`color`) ships separately via `paletteFuncs(getPalette)` and is merged
49
+ * consumer-side.
42
50
  *
43
51
  * `FuncMap` is not parameterised over `T` in `@promptctl/go-template-js` — the engine's
44
52
  * `T` lives on the `Engine`/`EngineConfig`, and per-function input/output
@@ -52,7 +60,7 @@ export { paletteFuncs } from "./palette-funcs.js";
52
60
  * whose `T` is something else will compile but fail at evaluation time.
53
61
  */
54
62
  export function richTextFuncs() {
55
- return richTextStyleFuncs();
63
+ return { ...richTextStyleFuncs(), ...colorFuncs() };
56
64
  }
57
65
  /**
58
66
  * Construct an `Engine<RichText>` with the rich-js style-function set
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/template-bindings/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,YAAY,EAA6B,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,kBAAkB,EAAE,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB;IAClC,OAAO,YAAY,CAAW;QAC5B,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC;QAClC,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK;QAC1B,KAAK,EAAE,aAAa,EAAE;KACvB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAwB,EACxB,MAAc,EACd,QAAiB,EAAE,EACnB,OAAoD;IAEpD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACzC,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;YAC1B,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,GAAG;YAClC,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC,CAAC;IACN,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,OAAO,CAAC,WAAW,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IAClG,CAAC;AACH,CAAC;AAED,uEAAuE;AACvE,wEAAwE;AACxE,wEAAwE;AACxE,4DAA4D;AAC5D,MAAM,oBAAoB,GAAG,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;AACpE,SAAS,cAAc,CAAC,IAAwB;IAC9C,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,oBAAoB,CAAC;IACpD,IAAI,CAAC;QACH,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,oBAAoB,CAAC;IAC9B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/template-bindings/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,EAAE,YAAY,EAA6B,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,EAAE,GAAG,kBAAkB,EAAE,EAAE,GAAG,UAAU,EAAE,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB;IAClC,OAAO,YAAY,CAAW;QAC5B,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC;QAClC,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK;QAC1B,KAAK,EAAE,aAAa,EAAE;KACvB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAwB,EACxB,MAAc,EACd,QAAiB,EAAE,EACnB,OAAoD;IAEpD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACzC,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;YAC1B,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,GAAG;YAClC,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC,CAAC;IACN,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,OAAO,CAAC,WAAW,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IAClG,CAAC;AACH,CAAC;AAED,uEAAuE;AACvE,wEAAwE;AACxE,wEAAwE;AACxE,4DAA4D;AAC5D,MAAM,oBAAoB,GAAG,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;AACpE,SAAS,cAAc,CAAC,IAAwB;IAC9C,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,oBAAoB,CAAC;IACpD,IAAI,CAAC;QACH,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,oBAAoB,CAAC;IAC9B,CAAC;AACH,CAAC"}