@promptctl/rich-js 0.1.0 → 0.3.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 +29 -15
- package/dist/core/cells.d.ts +83 -3
- package/dist/core/cells.d.ts.map +1 -1
- package/dist/core/cells.js +113 -1
- package/dist/core/cells.js.map +1 -1
- package/dist/core/console.d.ts +0 -1
- package/dist/core/console.d.ts.map +1 -1
- package/dist/core/console.js +20 -16
- package/dist/core/console.js.map +1 -1
- package/dist/core/highlighter.d.ts.map +1 -1
- package/dist/core/highlighter.js.map +1 -1
- package/dist/core/oklch.d.ts +106 -0
- package/dist/core/oklch.d.ts.map +1 -0
- package/dist/core/oklch.js +221 -0
- package/dist/core/oklch.js.map +1 -0
- package/dist/core/render.d.ts +26 -7
- package/dist/core/render.d.ts.map +1 -1
- package/dist/core/render.js +83 -15
- package/dist/core/render.js.map +1 -1
- package/dist/core/segment.d.ts +14 -1
- package/dist/core/segment.d.ts.map +1 -1
- package/dist/core/segment.js +28 -3
- package/dist/core/segment.js.map +1 -1
- package/dist/core/style.d.ts +11 -2
- package/dist/core/style.d.ts.map +1 -1
- package/dist/core/style.js +31 -18
- package/dist/core/style.js.map +1 -1
- package/dist/core/text.d.ts +20 -0
- package/dist/core/text.d.ts.map +1 -1
- package/dist/core/text.js +31 -0
- package/dist/core/text.js.map +1 -1
- package/dist/index.d.ts +11 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -3
- package/dist/index.js.map +1 -1
- package/dist/renderables/columns.d.ts.map +1 -1
- package/dist/renderables/columns.js +15 -22
- package/dist/renderables/columns.js.map +1 -1
- package/dist/renderables/layout.d.ts.map +1 -1
- package/dist/renderables/layout.js +8 -29
- package/dist/renderables/layout.js.map +1 -1
- package/dist/renderables/live.d.ts.map +1 -1
- package/dist/renderables/live.js +8 -7
- package/dist/renderables/live.js.map +1 -1
- package/dist/renderables/panel.d.ts +34 -0
- package/dist/renderables/panel.d.ts.map +1 -1
- package/dist/renderables/panel.js +66 -23
- package/dist/renderables/panel.js.map +1 -1
- package/dist/template-bindings/helpers.d.ts +25 -0
- package/dist/template-bindings/helpers.d.ts.map +1 -0
- package/dist/template-bindings/helpers.js +31 -0
- package/dist/template-bindings/helpers.js.map +1 -0
- package/dist/template-bindings/index.d.ts +57 -18
- package/dist/template-bindings/index.d.ts.map +1 -1
- package/dist/template-bindings/index.js +83 -18
- package/dist/template-bindings/index.js.map +1 -1
- package/dist/template-bindings/palette-funcs.d.ts +76 -0
- package/dist/template-bindings/palette-funcs.d.ts.map +1 -0
- package/dist/template-bindings/palette-funcs.js +157 -0
- package/dist/template-bindings/palette-funcs.js.map +1 -0
- package/dist/template-bindings/style-funcs.d.ts.map +1 -1
- package/dist/template-bindings/style-funcs.js +33 -27
- package/dist/template-bindings/style-funcs.js.map +1 -1
- package/dist/themes/colorMath.d.ts +40 -0
- package/dist/themes/colorMath.d.ts.map +1 -1
- package/dist/themes/colorMath.js +82 -1
- package/dist/themes/colorMath.js.map +1 -1
- package/dist/themes/data/catppuccin-frappe.d.ts +4 -0
- package/dist/themes/data/catppuccin-frappe.d.ts.map +1 -0
- package/dist/themes/data/catppuccin-frappe.js +159 -0
- package/dist/themes/data/catppuccin-frappe.js.map +1 -0
- package/dist/themes/data/catppuccin-macchiato.d.ts +4 -0
- package/dist/themes/data/catppuccin-macchiato.d.ts.map +1 -0
- package/dist/themes/data/catppuccin-macchiato.js +159 -0
- package/dist/themes/data/catppuccin-macchiato.js.map +1 -0
- package/dist/themes/data/cyberpunk.d.ts +18 -0
- package/dist/themes/data/cyberpunk.d.ts.map +1 -0
- package/dist/themes/data/cyberpunk.js +192 -0
- package/dist/themes/data/cyberpunk.js.map +1 -0
- package/dist/themes/data/default.d.ts +4 -0
- package/dist/themes/data/default.d.ts.map +1 -0
- package/dist/themes/data/default.js +159 -0
- package/dist/themes/data/default.js.map +1 -0
- package/dist/themes/data/index.d.ts +10 -3
- package/dist/themes/data/index.d.ts.map +1 -1
- package/dist/themes/data/index.js +24 -7
- package/dist/themes/data/index.js.map +1 -1
- package/dist/themes/data/svg-export.d.ts +4 -0
- package/dist/themes/data/svg-export.d.ts.map +1 -0
- package/dist/themes/data/svg-export.js +159 -0
- package/dist/themes/data/svg-export.js.map +1 -0
- package/dist/themes/data/types.d.ts +4 -3
- package/dist/themes/data/types.d.ts.map +1 -1
- package/dist/themes/registry.d.ts +29 -2
- package/dist/themes/registry.d.ts.map +1 -1
- package/dist/themes/registry.js +62 -12
- package/dist/themes/registry.js.map +1 -1
- package/dist/themes/terminalThemes.d.ts +29 -20
- package/dist/themes/terminalThemes.d.ts.map +1 -1
- package/dist/themes/terminalThemes.js +50 -249
- package/dist/themes/terminalThemes.js.map +1 -1
- package/dist/themes/transpose.d.ts +88 -0
- package/dist/themes/transpose.d.ts.map +1 -0
- package/dist/themes/transpose.js +139 -0
- package/dist/themes/transpose.js.map +1 -0
- package/dist/widgets/button.d.ts +8 -5
- package/dist/widgets/button.d.ts.map +1 -1
- package/dist/widgets/button.js +36 -11
- package/dist/widgets/button.js.map +1 -1
- package/dist/widgets/checkbox.d.ts +1 -2
- package/dist/widgets/checkbox.d.ts.map +1 -1
- package/dist/widgets/checkbox.js +20 -7
- package/dist/widgets/checkbox.js.map +1 -1
- package/dist/widgets/dropdown.d.ts +4 -3
- package/dist/widgets/dropdown.d.ts.map +1 -1
- package/dist/widgets/dropdown.js +109 -27
- package/dist/widgets/dropdown.js.map +1 -1
- package/dist/widgets/event-router.d.ts +6 -3
- package/dist/widgets/event-router.d.ts.map +1 -1
- package/dist/widgets/event-router.js +179 -68
- package/dist/widgets/event-router.js.map +1 -1
- package/dist/widgets/focus-manager.d.ts +2 -1
- package/dist/widgets/focus-manager.d.ts.map +1 -1
- package/dist/widgets/focus-manager.js +28 -9
- package/dist/widgets/focus-manager.js.map +1 -1
- package/dist/widgets/index.d.ts +2 -2
- package/dist/widgets/index.d.ts.map +1 -1
- package/dist/widgets/index.js +1 -1
- package/dist/widgets/index.js.map +1 -1
- package/dist/widgets/screen.d.ts +2 -0
- package/dist/widgets/screen.d.ts.map +1 -1
- package/dist/widgets/screen.js +148 -45
- package/dist/widgets/screen.js.map +1 -1
- package/dist/widgets/slider.d.ts +6 -3
- package/dist/widgets/slider.d.ts.map +1 -1
- package/dist/widgets/slider.js +34 -10
- package/dist/widgets/slider.js.map +1 -1
- package/dist/widgets/static-item.d.ts +1 -1
- package/dist/widgets/static-item.d.ts.map +1 -1
- package/dist/widgets/static-item.js +12 -13
- package/dist/widgets/static-item.js.map +1 -1
- package/dist/widgets/text-input.d.ts +239 -13
- package/dist/widgets/text-input.d.ts.map +1 -1
- package/dist/widgets/text-input.js +1004 -74
- package/dist/widgets/text-input.js.map +1 -1
- package/dist/widgets/toggle.d.ts +1 -2
- package/dist/widgets/toggle.d.ts.map +1 -1
- package/dist/widgets/toggle.js +20 -8
- package/dist/widgets/toggle.js.map +1 -1
- package/dist/widgets/types.d.ts +21 -4
- package/dist/widgets/types.d.ts.map +1 -1
- package/dist/widgets/types.js +19 -0
- package/dist/widgets/types.js.map +1 -1
- package/dist/widgets/widget-base.d.ts +1 -0
- package/dist/widgets/widget-base.d.ts.map +1 -1
- package/dist/widgets/widget-base.js +24 -7
- package/dist/widgets/widget-base.js.map +1 -1
- package/package.json +5 -3
package/README.md
CHANGED
|
@@ -298,13 +298,23 @@ console.saveHtml("output.html");
|
|
|
298
298
|
|
|
299
299
|
## Demos
|
|
300
300
|
|
|
301
|
-
|
|
301
|
+
A handful of demos under `examples/` exercise the library against realistic use cases. Two are explained in detail below (`rich-explore` and `claude-sessions`); the rest are listed here with one-line summaries. The full set of available npm scripts is the authoritative list — `cat package.json | jq .scripts` to see them all.
|
|
302
302
|
|
|
303
303
|
```sh
|
|
304
|
-
|
|
305
|
-
npm run
|
|
306
|
-
npm run
|
|
307
|
-
|
|
304
|
+
# Detailed below
|
|
305
|
+
npm run demo # rich-explore — TUI file browser + markdown/code reader (interactive)
|
|
306
|
+
npm run sessions # claude-sessions — Claude Code session browser (interactive)
|
|
307
|
+
|
|
308
|
+
# Other interactive demos
|
|
309
|
+
npm run demo-inputs # rich-config — TextInput / palette search
|
|
310
|
+
npm run demo:dropdown # dropdown-demo — Dropdown widget showcase
|
|
311
|
+
npm run dash # rich-dash — Live dashboard
|
|
312
|
+
npm run template-bindings # rich-template-bindings — go-template / reactive bindings playground
|
|
313
|
+
|
|
314
|
+
# Non-interactive transcripts
|
|
315
|
+
npm run themes-and-color-studio # color / palette / theme / contrast tour (eight sections)
|
|
316
|
+
npm run strip # rich-strip — side-by-side joiner showcase
|
|
317
|
+
npm run markup-plugins # rich-markup-plugins — plugin-tag examples
|
|
308
318
|
```
|
|
309
319
|
|
|
310
320
|
### rich-explore — TUI file browser + markdown/code reader
|
|
@@ -357,23 +367,28 @@ npm run sessions
|
|
|
357
367
|
| `Panel` | Six distinct border-color schemes by block kind (cyan/blue/yellow/red/magenta/green) |
|
|
358
368
|
| `Layout` | Column split (browser-on-top / viewer-on-bottom), dynamic height budgeting |
|
|
359
369
|
|
|
360
|
-
###
|
|
370
|
+
### themes-and-color-studio — color, palette, theme, and contrast tour
|
|
361
371
|
|
|
362
|
-
|
|
372
|
+
A one-shot non-interactive demo that walks every public surface of the color subsystem in eight sections: ColorRgba values and parsing, ColorSpec and downgrade tables, color-system detection, the theme registry, PaletteResolver spec forms, every bundled `TerminalTheme` constant, OKLCH transposition (hue circle / chroma sweep / lightness invert / themeKeyForRoot), and the WCAG contrast toolkit.
|
|
363
373
|
|
|
364
374
|
```sh
|
|
365
|
-
npm run
|
|
375
|
+
npm run themes-and-color-studio # terminal output
|
|
376
|
+
EXPORT_HTML=out.html npm run themes-and-color-studio # also write a styled HTML transcript
|
|
366
377
|
```
|
|
367
378
|
|
|
368
379
|
**Features exercised (incremental to above):**
|
|
369
380
|
|
|
370
381
|
| Module | How it's used |
|
|
371
382
|
|---|---|
|
|
372
|
-
| `
|
|
373
|
-
| `
|
|
374
|
-
| `
|
|
375
|
-
| `
|
|
376
|
-
| `
|
|
383
|
+
| `ColorRgba` / `parseRgbHex` / `parseRgbaHex` / `blendRgb` | Pixel-level values, two hex parsers, linear blend, alpha compositing |
|
|
384
|
+
| `ColorSpec` / `ColorDepth` | Every factory; downgrade across `STANDARD_TABLE` / `EIGHT_BIT_TABLE` / `WINDOWS_TABLE`; `ANSI_COLOR_NAMES` lookups; `ColorParseError` |
|
|
385
|
+
| `detectColorSystem` / `resolveColorSystem` | Env-driven color-system detection with `DetectColorOptions` fixtures; spec-string resolution |
|
|
386
|
+
| `Palette` / `PaletteResolver` / `buildPalette` | Bare / modifier / alpha / auto spec forms against gruvbox; `BaseColors` → derived `text-*` / `on-*` / `*-muted` vars |
|
|
387
|
+
| Theme registry | `getThemePalette` / `listThemePalettes` / `getThemeBaseColors` walking every bundled theme; raw `THEMES` / `ThemePaletteData` via subpath |
|
|
388
|
+
| `TerminalTheme` constants | All bundled constants (`DEFAULT`, `SVG_EXPORT`, `MONOKAI`, `NORD`, `GRUVBOX`, `DRACULA`, `TOKYO_NIGHT`, `FLEXOKI`, `CYBERPUNK`, `CATPPUCCIN_*`, `SOLARIZED_*`, `ROSE_PINE*`, `ATOM_ONE_*`, `TEXTUAL_*`) |
|
|
389
|
+
| `Oklch` / `transposePalette` / `themeKeyForRoot` | Round-trip + `IDENTITY` / `INVERT_LIGHTNESS`; hue circle; chroma sweep; light↔dark invert; `ANCHORED_ROOTS` / `isAnchored` |
|
|
390
|
+
| `relativeLuminance` / `contrastRatio` / `contrastFor` / `ensureContrast` | WCAG contrast matrix, hue-preserving lightness adjustment to clear the AA threshold |
|
|
391
|
+
| `Console` record / `saveHtml` | Optional HTML export via `EXPORT_HTML=path`; same render pipeline drives both terminal and file output |
|
|
377
392
|
|
|
378
393
|
---
|
|
379
394
|
|
|
@@ -402,8 +417,7 @@ Renderables: `Layout`, `Panel`, `Tree`, `Table`/`Column`, `Markdown`, `Syntax`,
|
|
|
402
417
|
| `Prompt` / `IntPrompt` / `FloatPrompt` / `Confirm` | Interactive input via readline | Add a go-to-path prompt in rich-explore; incompatible with raw-mode loops so needs a modal switch |
|
|
403
418
|
| `emoji` | Shortcode substitution (`:smiley:` → 😃) | Enable in markup-rendered block text in claude-sessions |
|
|
404
419
|
| `NullHighlighter` / `RegexHighlighter` | Specialized highlighters not yet exercised | `RegexHighlighter` for search-term highlighting in claude-sessions |
|
|
405
|
-
| `StyleStack` / `Theme` / `DEFAULT_STYLES` | Theme customization | Add a theme switcher
|
|
406
|
-
| `Color` downgrading | `standard` / `256` / `windows` color system fallbacks | Add a color-system picker to rich-colors |
|
|
420
|
+
| `StyleStack` / `Theme` / `DEFAULT_STYLES` | Theme customization | Add a Console style-theme switcher demo |
|
|
407
421
|
| `Console` recording | `record`, `exportText`, `exportHtml`, `saveHtml` | Add an export-to-HTML feature to claude-sessions |
|
|
408
422
|
| Most `Box` variants | `ASCII`, `SQUARE`, `MINIMAL`, `HEAVY`, `DOUBLE`, `MARKDOWN`, etc. | Add a box-style picker to rich-explore's Panel borders |
|
|
409
423
|
| `Measurement.get()` / `measureRenderables` | Explicit width measurement | Used internally; could add a measurement debug overlay |
|
package/dist/core/cells.d.ts
CHANGED
|
@@ -6,19 +6,99 @@
|
|
|
6
6
|
* Returns the terminal cell width of a string.
|
|
7
7
|
*/
|
|
8
8
|
export declare function cellLen(text: string): number;
|
|
9
|
+
declare const _cellCol: unique symbol;
|
|
10
|
+
declare const _codeUnit: unique symbol;
|
|
11
|
+
declare const _codePoint: unique symbol;
|
|
12
|
+
/** Terminal cell-column offset. Never interchangeable with a code-unit index. */
|
|
13
|
+
export type CellCol = number & {
|
|
14
|
+
readonly [_cellCol]: true;
|
|
15
|
+
};
|
|
16
|
+
/** JS string code-unit index. Never interchangeable with a cell-column offset. */
|
|
17
|
+
export type CodeUnit = number & {
|
|
18
|
+
readonly [_codeUnit]: true;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* A `CodeUnit` index that is additionally guaranteed to fall on a Unicode
|
|
22
|
+
* code-point boundary (i.e. never inside a surrogate pair). Assignable to
|
|
23
|
+
* `CodeUnit`; the reverse assignment is forbidden.
|
|
24
|
+
*/
|
|
25
|
+
export type CodePoint = CodeUnit & {
|
|
26
|
+
readonly [_codePoint]: true;
|
|
27
|
+
};
|
|
28
|
+
/** Brand a raw number as a CellCol. Use only at trust boundaries. */
|
|
29
|
+
export declare function asCellCol(n: number): CellCol;
|
|
30
|
+
/** Brand a raw number as a CodeUnit. Use only at trust boundaries. */
|
|
31
|
+
export declare function asCodeUnit(n: number): CodeUnit;
|
|
32
|
+
/** Brand a raw number as a CodePoint. Use only when the value is known to be
|
|
33
|
+
* on a Unicode code-point boundary. */
|
|
34
|
+
export declare function asCodePoint(n: number): CodePoint;
|
|
9
35
|
/**
|
|
10
36
|
* Pads or crops a string to exactly `totalWidth` terminal cells.
|
|
11
37
|
* Invariant: cellLen(setCellSize(text, n)) === n (unless n is 0)
|
|
12
38
|
*/
|
|
13
|
-
export declare function setCellSize(text: string, totalWidth:
|
|
39
|
+
export declare function setCellSize(text: string, totalWidth: CellCol): string;
|
|
14
40
|
/**
|
|
15
41
|
* Splits text at a cell position. Returns [left, right].
|
|
16
42
|
* When the position falls mid-wide-character, the left side is padded
|
|
17
43
|
* to reach exactly `position` cells. The wide char remains in the right side.
|
|
18
44
|
*/
|
|
19
|
-
export declare function splitText(text: string, position:
|
|
45
|
+
export declare function splitText(text: string, position: CellCol): [string, string];
|
|
20
46
|
/**
|
|
21
47
|
* Wraps text into lines of at most `maxWidth` cells.
|
|
22
48
|
*/
|
|
23
|
-
export declare function chopCells(text: string, maxWidth:
|
|
49
|
+
export declare function chopCells(text: string, maxWidth: CellCol): string[];
|
|
50
|
+
/**
|
|
51
|
+
* Returns the largest prefix of `text` whose cell width fits within `cap` cells.
|
|
52
|
+
* No padding — the returned string may be narrower than `cap` when the next
|
|
53
|
+
* character is wide and would overshoot. Never wider than `cap` cells.
|
|
54
|
+
*
|
|
55
|
+
* When the first character already exceeds `cap` cells, returns "" (the caller
|
|
56
|
+
* must decide whether to force-take the character or skip it).
|
|
57
|
+
*/
|
|
58
|
+
export declare function cellFit(text: string, cap: CellCol): string;
|
|
59
|
+
/**
|
|
60
|
+
* Returns the largest code-unit end offset starting from `startCU` whose
|
|
61
|
+
* prefix (from `startCU`) has cell width ≤ `cap`. Iterates from the given
|
|
62
|
+
* offset without slicing the tail, avoiding O(N²) allocation when called
|
|
63
|
+
* repeatedly across a long string.
|
|
64
|
+
*
|
|
65
|
+
* [LAW:types-are-the-program] returns CodePoint because for...of always
|
|
66
|
+
* stops on a code-point boundary.
|
|
67
|
+
*/
|
|
68
|
+
export declare function cellFitFrom(text: string, startCU: CodePoint, cap: CellCol): CodePoint;
|
|
69
|
+
/**
|
|
70
|
+
* Returns the largest code-unit offset into `content` whose prefix has
|
|
71
|
+
* cell width ≤ `cellCol`. When `cellCol` falls mid-wide-character the
|
|
72
|
+
* function stops before that character (never advances into it).
|
|
73
|
+
* Clamps to `content.length` if `cellCol` exceeds the string's total
|
|
74
|
+
* cell width.
|
|
75
|
+
*
|
|
76
|
+
* This is the inverse of `cellLen(content.slice(0, codeUnit))` — given a
|
|
77
|
+
* visual column, return the corresponding string index.
|
|
78
|
+
*
|
|
79
|
+
* Returns `CodePoint` because `for...of` iteration always stops on a
|
|
80
|
+
* code-point boundary.
|
|
81
|
+
*/
|
|
82
|
+
export declare function cellColToCodeUnitOffset(content: string, cellCol: CellCol): CodePoint;
|
|
83
|
+
/**
|
|
84
|
+
* Advance one full Unicode code point from `cu`, returning the code-unit
|
|
85
|
+
* offset of the start of the *next* code point. Returns `s.length` when
|
|
86
|
+
* already at or past the end.
|
|
87
|
+
*
|
|
88
|
+
* Handles surrogate pairs: when the code point at `cu` is a supplementary
|
|
89
|
+
* character (U+10000…U+10FFFF) it occupies 2 UTF-16 code units, so the
|
|
90
|
+
* returned offset advances by 2.
|
|
91
|
+
*/
|
|
92
|
+
export declare function nextCodePoint(s: string, cu: CodeUnit): CodePoint;
|
|
93
|
+
/**
|
|
94
|
+
* Step back one full Unicode code point from `cu`, returning the code-unit
|
|
95
|
+
* offset of the start of the *previous* code point. Returns 0 when already
|
|
96
|
+
* at the start.
|
|
97
|
+
*
|
|
98
|
+
* Handles surrogate pairs: when the code unit at `cu - 1` is a low surrogate
|
|
99
|
+
* AND the code unit at `cu - 2` is a high surrogate, steps back 2 code units.
|
|
100
|
+
* Unpaired surrogates are treated as 1-CU characters.
|
|
101
|
+
*/
|
|
102
|
+
export declare function prevCodePoint(s: string, cu: CodeUnit): CodePoint;
|
|
103
|
+
export {};
|
|
24
104
|
//# sourceMappingURL=cells.d.ts.map
|
package/dist/core/cells.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cells.d.ts","sourceRoot":"","sources":["../../src/core/cells.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAa5C;
|
|
1
|
+
{"version":3,"file":"cells.d.ts","sourceRoot":"","sources":["../../src/core/cells.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAa5C;AAqBD,OAAO,CAAC,MAAM,QAAQ,EAAE,OAAO,MAAM,CAAC;AACtC,OAAO,CAAC,MAAM,SAAS,EAAE,OAAO,MAAM,CAAC;AACvC,OAAO,CAAC,MAAM,UAAU,EAAE,OAAO,MAAM,CAAC;AAExC,iFAAiF;AACjF,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC;AAE7D,kFAAkF;AAClF,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC;AAE/D;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG;IAAE,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,IAAI,CAAA;CAAE,CAAC;AAEnE,qEAAqE;AACrE,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAyB;AAEtE,sEAAsE;AACtE,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,QAAQ,CAA0B;AAEzE;wCACwC;AACxC,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,CAA2B;AAI5E;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM,CAQrE;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,OAAO,GAChB,CAAC,MAAM,EAAE,MAAM,CAAC,CAuBlB;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM,EAAE,CAkBnE;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,MAAM,CAU1D;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,GAAG,SAAS,CAYrF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,SAAS,CAWpF;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,GAAG,SAAS,CAIhE;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,GAAG,SAAS,CAQhE"}
|
package/dist/core/cells.js
CHANGED
|
@@ -26,6 +26,14 @@ export function cellLen(text) {
|
|
|
26
26
|
}
|
|
27
27
|
return width;
|
|
28
28
|
}
|
|
29
|
+
/** Brand a raw number as a CellCol. Use only at trust boundaries. */
|
|
30
|
+
export function asCellCol(n) { return n; }
|
|
31
|
+
/** Brand a raw number as a CodeUnit. Use only at trust boundaries. */
|
|
32
|
+
export function asCodeUnit(n) { return n; }
|
|
33
|
+
/** Brand a raw number as a CodePoint. Use only when the value is known to be
|
|
34
|
+
* on a Unicode code-point boundary. */
|
|
35
|
+
export function asCodePoint(n) { return n; }
|
|
36
|
+
// ── Cell-aware string utilities ──────────────────────────────────────────────
|
|
29
37
|
/**
|
|
30
38
|
* Pads or crops a string to exactly `totalWidth` terminal cells.
|
|
31
39
|
* Invariant: cellLen(setCellSize(text, n)) === n (unless n is 0)
|
|
@@ -39,7 +47,6 @@ export function setCellSize(text, totalWidth) {
|
|
|
39
47
|
if (currentWidth < totalWidth) {
|
|
40
48
|
return text + " ".repeat(totalWidth - currentWidth);
|
|
41
49
|
}
|
|
42
|
-
// Crop: walk characters, tracking cell width
|
|
43
50
|
return cropToWidth(text, totalWidth);
|
|
44
51
|
}
|
|
45
52
|
/**
|
|
@@ -94,6 +101,111 @@ export function chopCells(text, maxWidth) {
|
|
|
94
101
|
}
|
|
95
102
|
return lines;
|
|
96
103
|
}
|
|
104
|
+
/**
|
|
105
|
+
* Returns the largest prefix of `text` whose cell width fits within `cap` cells.
|
|
106
|
+
* No padding — the returned string may be narrower than `cap` when the next
|
|
107
|
+
* character is wide and would overshoot. Never wider than `cap` cells.
|
|
108
|
+
*
|
|
109
|
+
* When the first character already exceeds `cap` cells, returns "" (the caller
|
|
110
|
+
* must decide whether to force-take the character or skip it).
|
|
111
|
+
*/
|
|
112
|
+
export function cellFit(text, cap) {
|
|
113
|
+
let w = 0;
|
|
114
|
+
let i = 0;
|
|
115
|
+
for (const ch of text) {
|
|
116
|
+
const cw = cellLen(ch);
|
|
117
|
+
if (w + cw > cap)
|
|
118
|
+
break;
|
|
119
|
+
w += cw;
|
|
120
|
+
i += ch.length;
|
|
121
|
+
}
|
|
122
|
+
return text.slice(0, i);
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Returns the largest code-unit end offset starting from `startCU` whose
|
|
126
|
+
* prefix (from `startCU`) has cell width ≤ `cap`. Iterates from the given
|
|
127
|
+
* offset without slicing the tail, avoiding O(N²) allocation when called
|
|
128
|
+
* repeatedly across a long string.
|
|
129
|
+
*
|
|
130
|
+
* [LAW:types-are-the-program] returns CodePoint because for...of always
|
|
131
|
+
* stops on a code-point boundary.
|
|
132
|
+
*/
|
|
133
|
+
export function cellFitFrom(text, startCU, cap) {
|
|
134
|
+
let w = 0;
|
|
135
|
+
let i = startCU;
|
|
136
|
+
while (i < text.length) {
|
|
137
|
+
const cp = text.codePointAt(i);
|
|
138
|
+
const ch = String.fromCodePoint(cp);
|
|
139
|
+
const cw = cellLen(ch);
|
|
140
|
+
if (w + cw > cap)
|
|
141
|
+
break;
|
|
142
|
+
w += cw;
|
|
143
|
+
i = asCodePoint(i + ch.length);
|
|
144
|
+
}
|
|
145
|
+
return i;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Returns the largest code-unit offset into `content` whose prefix has
|
|
149
|
+
* cell width ≤ `cellCol`. When `cellCol` falls mid-wide-character the
|
|
150
|
+
* function stops before that character (never advances into it).
|
|
151
|
+
* Clamps to `content.length` if `cellCol` exceeds the string's total
|
|
152
|
+
* cell width.
|
|
153
|
+
*
|
|
154
|
+
* This is the inverse of `cellLen(content.slice(0, codeUnit))` — given a
|
|
155
|
+
* visual column, return the corresponding string index.
|
|
156
|
+
*
|
|
157
|
+
* Returns `CodePoint` because `for...of` iteration always stops on a
|
|
158
|
+
* code-point boundary.
|
|
159
|
+
*/
|
|
160
|
+
export function cellColToCodeUnitOffset(content, cellCol) {
|
|
161
|
+
let w = 0;
|
|
162
|
+
let i = 0;
|
|
163
|
+
for (const ch of content) {
|
|
164
|
+
if (w >= cellCol)
|
|
165
|
+
break;
|
|
166
|
+
const cw = cellLen(ch);
|
|
167
|
+
if (w + cw > cellCol)
|
|
168
|
+
break;
|
|
169
|
+
w += cw;
|
|
170
|
+
i += ch.length;
|
|
171
|
+
}
|
|
172
|
+
return asCodePoint(i);
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Advance one full Unicode code point from `cu`, returning the code-unit
|
|
176
|
+
* offset of the start of the *next* code point. Returns `s.length` when
|
|
177
|
+
* already at or past the end.
|
|
178
|
+
*
|
|
179
|
+
* Handles surrogate pairs: when the code point at `cu` is a supplementary
|
|
180
|
+
* character (U+10000…U+10FFFF) it occupies 2 UTF-16 code units, so the
|
|
181
|
+
* returned offset advances by 2.
|
|
182
|
+
*/
|
|
183
|
+
export function nextCodePoint(s, cu) {
|
|
184
|
+
if (cu >= s.length)
|
|
185
|
+
return asCodePoint(s.length);
|
|
186
|
+
const cp = s.codePointAt(cu);
|
|
187
|
+
return asCodePoint(cu + (cp > 0xFFFF ? 2 : 1));
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Step back one full Unicode code point from `cu`, returning the code-unit
|
|
191
|
+
* offset of the start of the *previous* code point. Returns 0 when already
|
|
192
|
+
* at the start.
|
|
193
|
+
*
|
|
194
|
+
* Handles surrogate pairs: when the code unit at `cu - 1` is a low surrogate
|
|
195
|
+
* AND the code unit at `cu - 2` is a high surrogate, steps back 2 code units.
|
|
196
|
+
* Unpaired surrogates are treated as 1-CU characters.
|
|
197
|
+
*/
|
|
198
|
+
export function prevCodePoint(s, cu) {
|
|
199
|
+
if (cu <= 0)
|
|
200
|
+
return asCodePoint(0);
|
|
201
|
+
const low = s.charCodeAt(cu - 1);
|
|
202
|
+
if (low >= 0xDC00 && low <= 0xDFFF && cu >= 2) {
|
|
203
|
+
const high = s.charCodeAt(cu - 2);
|
|
204
|
+
if (high >= 0xD800 && high <= 0xDBFF)
|
|
205
|
+
return asCodePoint(cu - 2);
|
|
206
|
+
}
|
|
207
|
+
return asCodePoint(cu - 1);
|
|
208
|
+
}
|
|
97
209
|
// --- internal ---
|
|
98
210
|
function cropToWidth(text, targetWidth) {
|
|
99
211
|
let width = 0;
|
package/dist/core/cells.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cells.js","sourceRoot":"","sources":["../../src/core/cells.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,WAAW,MAAM,cAAc,CAAC;AAEvC,gFAAgF;AAChF,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;AAC/C,MAAM,SAAS,GAAG,IAAI,CAAC;AAEvB;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,IAAY;IAClC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAChC,2BAA2B;IAC3B,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC;IAC1C,CAAC;IACD,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;QACtB,IAAI,YAAY,CAAC,IAAI,IAAI,SAAS;YAAE,YAAY,CAAC,KAAK,EAAE,CAAC;QACzD,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;
|
|
1
|
+
{"version":3,"file":"cells.js","sourceRoot":"","sources":["../../src/core/cells.ts"],"names":[],"mappings":"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"}
|
package/dist/core/console.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/core/console.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/core/console.ts"],"names":[],"mappings":"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"}
|
package/dist/core/console.js
CHANGED
|
@@ -9,7 +9,7 @@ import { RichText } from "./text.js";
|
|
|
9
9
|
import { render as renderMarkup } from "./markup.js";
|
|
10
10
|
import { ReprHighlighter } from "./highlighter.js";
|
|
11
11
|
import { Rule } from "../renderables/rule.js";
|
|
12
|
-
import {
|
|
12
|
+
import { segmentsToString } from "./render.js";
|
|
13
13
|
import { isRenderable } from "./protocol.js";
|
|
14
14
|
function resolveStyle(style) {
|
|
15
15
|
if (style === undefined)
|
|
@@ -222,10 +222,15 @@ export class Console {
|
|
|
222
222
|
const final = this._style.isNull
|
|
223
223
|
? styled
|
|
224
224
|
: [...Segment.applyStyle(styled, this._style)];
|
|
225
|
-
// Output
|
|
225
|
+
// Output. The line-end goes through the same writeSegments funnel as
|
|
226
|
+
// every other emitted text so it survives recording — otherwise
|
|
227
|
+
// `exportText` and `exportHtml` would join consecutive prints onto a
|
|
228
|
+
// single line. [LAW:single-enforcer]
|
|
226
229
|
this._writeSegments(final);
|
|
230
|
+
// The common default end is "\n" — reuse Segment's cached newline rather
|
|
231
|
+
// than allocating one per print; only a non-default end needs a fresh one.
|
|
227
232
|
if (end)
|
|
228
|
-
this.
|
|
233
|
+
this._writeSegments([end === "\n" ? Segment.line() : new Segment(end)]);
|
|
229
234
|
}
|
|
230
235
|
log(...args) {
|
|
231
236
|
// Simple log implementation — adds timestamp
|
|
@@ -325,22 +330,21 @@ export class Console {
|
|
|
325
330
|
return parts.join(";");
|
|
326
331
|
}
|
|
327
332
|
// --- Internal ---
|
|
333
|
+
// [LAW:single-enforcer] One encode call per write batch routes through the
|
|
334
|
+
// same `segmentsToString` tree-coalescer used by `renderToString`. Adjacent
|
|
335
|
+
// same-style segments share one SGR open/close pair on the wire instead of
|
|
336
|
+
// one pair per segment. Recording captures every non-control segment for
|
|
337
|
+
// replay regardless of how the bytes coalesce.
|
|
328
338
|
_writeSegments(segments) {
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
this._write(text);
|
|
334
|
-
if (this._record) {
|
|
335
|
-
this._recorded.push(segment);
|
|
339
|
+
if (this._record) {
|
|
340
|
+
for (const segment of segments) {
|
|
341
|
+
if (!segment.isControl)
|
|
342
|
+
this._recorded.push(segment);
|
|
336
343
|
}
|
|
337
344
|
}
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
// construction.
|
|
342
|
-
_renderSegment(segment) {
|
|
343
|
-
return segmentToString(segment, this._colorSystem);
|
|
345
|
+
const encoded = segmentsToString(segments, this._colorSystem);
|
|
346
|
+
if (encoded.length > 0)
|
|
347
|
+
this._write(encoded);
|
|
344
348
|
}
|
|
345
349
|
_write(text) {
|
|
346
350
|
if (this._buffer !== undefined && this._buffer !== "") {
|
package/dist/core/console.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"console.js","sourceRoot":"","sources":["../../src/core/console.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"console.js","sourceRoot":"","sources":["../../src/core/console.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"highlighter.d.ts","sourceRoot":"","sources":["../../src/core/highlighter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAIrC,8BAAsB,WAAW;IAC/B,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAExC,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;CAK9B;AAID,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,SAAS,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;CAGjC;AAID,qBAAa,gBAAiB,SAAQ,WAAW;IAC/C,MAAM,CAAC,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAM;IAC5C;;;qEAGiE;IACjE,MAAM,CAAC,SAAS,SAAM;IAEtB,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;CAuChC;AAKD,qBAAa,eAAgB,SAAQ,gBAAgB;IACnD,
|
|
1
|
+
{"version":3,"file":"highlighter.d.ts","sourceRoot":"","sources":["../../src/core/highlighter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAIrC,8BAAsB,WAAW;IAC/B,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAExC,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;CAK9B;AAID,qBAAa,eAAgB,SAAQ,WAAW;IAC9C,SAAS,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;CAGjC;AAID,qBAAa,gBAAiB,SAAQ,WAAW;IAC/C,MAAM,CAAC,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAM;IAC5C;;;qEAGiE;IACjE,MAAM,CAAC,SAAS,SAAM;IAEtB,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;CAuChC;AAKD,qBAAa,eAAgB,SAAQ,gBAAgB;IACnD,OAAgB,SAAS,SAAW;IACpC,OAAgB,UAAU,WAaxB;CACH;AAID,qBAAa,eAAgB,SAAQ,gBAAgB;IACnD,OAAgB,SAAS,SAAW;IACpC,OAAgB,UAAU,WAOxB;CACH;AAID,qBAAa,kBAAmB,SAAQ,gBAAgB;IACtD,OAAgB,SAAS,SAAc;IACvC,OAAgB,UAAU,WAIxB;CACH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"highlighter.js","sourceRoot":"","sources":["../../src/core/highlighter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,eAAe;AAEf,MAAM,OAAgB,WAAW;IAG/B,IAAI,CAAC,KAAa;QAChB,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED,0BAA0B;AAE1B,MAAM,OAAO,eAAgB,SAAQ,WAAW;IAC9C,SAAS,CAAC,KAAe;QACvB,QAAQ;IACV,CAAC;CACF;AAED,2BAA2B;AAE3B,MAAM,OAAO,gBAAiB,SAAQ,WAAW;IAC/C,MAAM,CAAC,UAAU,GAAwB,EAAE,CAAC;IAC5C;;;qEAGiE;IACjE,MAAM,CAAC,SAAS,GAAG,EAAE,CAAC;IAEtB,SAAS,CAAC,IAAc;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAsC,CAAC;QACzD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,mDAAmD;QACnD,6DAA6D;QAC7D,MAAM,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAE5C,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,MAAM,EAAE,GACN,OAAO,YAAY,MAAM;gBACvB,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,GAAG,CAAC;gBAC/F,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAE/B,IAAI,KAA6B,CAAC;YAClC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC9C,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,EAAE,CAAC,SAAS,EAAE,CAAC;oBACf,SAAS;gBACX,CAAC;gBAED,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjB,IAAI,UAAU,GAAG,CAAC,CAAC;oBACnB,KAAK,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;wBACnE,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;4BAC7B,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;4BAC5D,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;gCACpB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC;gCACvC,MAAM,KAAK,GAAG,WAAW;oCACvB,CAAC,CAAC,GAAG,SAAS,GAAG,SAAS,EAAE;oCAC5B,CAAC,CAAC,SAAS,IAAI,SAAS,CAAC;gCAC3B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;gCACtD,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;4BAC9C,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;;AAGH,0BAA0B;AAE1B,wFAAwF;AACxF,MAAM,OAAO,eAAgB,SAAQ,gBAAgB;IACnD,MAAM,
|
|
1
|
+
{"version":3,"file":"highlighter.js","sourceRoot":"","sources":["../../src/core/highlighter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,eAAe;AAEf,MAAM,OAAgB,WAAW;IAG/B,IAAI,CAAC,KAAa;QAChB,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED,0BAA0B;AAE1B,MAAM,OAAO,eAAgB,SAAQ,WAAW;IAC9C,SAAS,CAAC,KAAe;QACvB,QAAQ;IACV,CAAC;CACF;AAED,2BAA2B;AAE3B,MAAM,OAAO,gBAAiB,SAAQ,WAAW;IAC/C,MAAM,CAAC,UAAU,GAAwB,EAAE,CAAC;IAC5C;;;qEAGiE;IACjE,MAAM,CAAC,SAAS,GAAG,EAAE,CAAC;IAEtB,SAAS,CAAC,IAAc;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAsC,CAAC;QACzD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,mDAAmD;QACnD,6DAA6D;QAC7D,MAAM,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAE5C,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,MAAM,EAAE,GACN,OAAO,YAAY,MAAM;gBACvB,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,GAAG,CAAC;gBAC/F,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAE/B,IAAI,KAA6B,CAAC;YAClC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC9C,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,EAAE,CAAC,SAAS,EAAE,CAAC;oBACf,SAAS;gBACX,CAAC;gBAED,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjB,IAAI,UAAU,GAAG,CAAC,CAAC;oBACnB,KAAK,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;wBACnE,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;4BAC7B,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;4BAC5D,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;gCACpB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC;gCACvC,MAAM,KAAK,GAAG,WAAW;oCACvB,CAAC,CAAC,GAAG,SAAS,GAAG,SAAS,EAAE;oCAC5B,CAAC,CAAC,SAAS,IAAI,SAAS,CAAC;gCAC3B,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;gCACtD,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;4BAC9C,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;;AAGH,0BAA0B;AAE1B,wFAAwF;AACxF,MAAM,OAAO,eAAgB,SAAQ,gBAAgB;IACnD,MAAM,CAAU,SAAS,GAAG,OAAO,CAAC;IACpC,MAAM,CAAU,UAAU,GAAG;QAC3B,OAAO;QACP,gCAAgC;QAChC,QAAQ;QACR,yEAAyE;QACzE,iBAAiB;QACjB,0BAA0B;QAC1B,WAAW;QACX,8BAA8B;QAC9B,sBAAsB;QACtB,2CAA2C;QAC3C,gCAAgC;QAChC,yEAAyE;KAC1E,CAAC;;AAGJ,0BAA0B;AAE1B,MAAM,OAAO,eAAgB,SAAQ,gBAAgB;IACnD,MAAM,CAAU,SAAS,GAAG,OAAO,CAAC;IACpC,MAAM,CAAU,UAAU,GAAG;QAC3B,sBAAsB;QACtB,sBAAsB;QACtB,8BAA8B;QAC9B,oBAAoB;QACpB,8CAA8C;QAC9C,oBAAoB;KACrB,CAAC;;AAGJ,6BAA6B;AAE7B,MAAM,OAAO,kBAAmB,SAAQ,gBAAgB;IACtD,MAAM,CAAU,SAAS,GAAG,UAAU,CAAC;IACvC,MAAM,CAAU,UAAU,GAAG;QAC3B,6BAA6B;QAC7B,uCAAuC;QACvC,iCAAiC;KAClC,CAAC"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OKLCH color space — perceptually-uniform polar form of OKLab.
|
|
3
|
+
*
|
|
4
|
+
* Math from Björn Ottosson's OKLab specification:
|
|
5
|
+
* https://bottosson.github.io/posts/oklab/
|
|
6
|
+
*
|
|
7
|
+
* The full pipeline:
|
|
8
|
+
* sRGB (0..255 int) ↔ sRGB linear (0..1 float) ↔ OKLab ↔ OKLCH polar
|
|
9
|
+
* `fromRgba` walks left→right, `toRgba` walks right→left. The only lossy
|
|
10
|
+
* step is the final 0..255 quantization; the float math itself is
|
|
11
|
+
* reversible to within a few ULP.
|
|
12
|
+
*
|
|
13
|
+
* [LAW:one-type-per-behavior] OKLCH and sRGB are different *behaviors*:
|
|
14
|
+
* sRGB is the wire format terminals consume (what ANSI escape codes
|
|
15
|
+
* carry); OKLCH is the perceptual manipulation space (where equal
|
|
16
|
+
* numerical deltas mean equal perceptual deltas, which is the property
|
|
17
|
+
* "transposition" requires). Two types, mutual conversion, no hybrid.
|
|
18
|
+
*
|
|
19
|
+
* [LAW:one-way-deps] This module imports `ColorRgba` from core/color and
|
|
20
|
+
* nothing else from inside the project. Nothing in core/ depends back on
|
|
21
|
+
* this file.
|
|
22
|
+
*/
|
|
23
|
+
import { ColorRgba } from "./color.js";
|
|
24
|
+
/**
|
|
25
|
+
* A perceptually-uniform color transform.
|
|
26
|
+
*
|
|
27
|
+
* [LAW:dataflow-not-control-flow] Identity is *data* (`IDENTITY`), not a
|
|
28
|
+
* special case. Every transposition runs the same code path — the values
|
|
29
|
+
* decide whether the operation is a no-op or a 180° rotation.
|
|
30
|
+
*
|
|
31
|
+
* Lightness is parameterized as `L' = clamp01(L * scale + shift)` to make
|
|
32
|
+
* "invert" expressible as `{scale: -1, shift: 1}` without a boolean knob.
|
|
33
|
+
*/
|
|
34
|
+
export interface ThemeKey {
|
|
35
|
+
/** Hue offset in degrees; positive rotates toward warmer→cooler→back. */
|
|
36
|
+
readonly hueShift: number;
|
|
37
|
+
/** Multiplier on chroma. 0 = grayscale, 1 = identity, >1 = more saturated. */
|
|
38
|
+
readonly chromaScale: number;
|
|
39
|
+
/** Multiplier on lightness. 1 = identity, -1 = invert around the L axis. */
|
|
40
|
+
readonly lightnessScale: number;
|
|
41
|
+
/** Additive on lightness; applied *after* the scale. */
|
|
42
|
+
readonly lightnessShift: number;
|
|
43
|
+
}
|
|
44
|
+
export declare const IDENTITY: ThemeKey;
|
|
45
|
+
/**
|
|
46
|
+
* Flip lightness around the midpoint (`L' = 1 - L`) with hue and chroma
|
|
47
|
+
* untouched. Combined with the anchor logic in `transposePalette`, this
|
|
48
|
+
* converts a dark theme to its light "octave": semantic anchors
|
|
49
|
+
* (error/success/warning) still lightness-invert — only their *hue* is
|
|
50
|
+
* preserved — so errors stay red and dark-on-light becomes light-on-dark.
|
|
51
|
+
*/
|
|
52
|
+
export declare const INVERT_LIGHTNESS: ThemeKey;
|
|
53
|
+
/**
|
|
54
|
+
* Whether a key is the no-op transform. Exported so that callers
|
|
55
|
+
* (`transposePalette`) can fast-path byte-exact identity without going
|
|
56
|
+
* through the lossy sRGB↔OKLCH round-trip. [LAW:one-source-of-truth] —
|
|
57
|
+
* the predicate lives once, here.
|
|
58
|
+
*/
|
|
59
|
+
export declare function isIdentityKey(k: ThemeKey): boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Immutable OKLCH color. `l` ∈ [0, 1] (lightness), `c` ≥ 0 (chroma; typical
|
|
62
|
+
* sRGB-representable colors top out near 0.32), `h` ∈ [0, 360) (hue
|
|
63
|
+
* degrees), `alpha` ∈ [0, 1].
|
|
64
|
+
*
|
|
65
|
+
* [LAW:single-enforcer] Constructor is the only validation site, matching
|
|
66
|
+
* the `ColorRgba` pattern. Out-of-range `alpha` throws. l/c/h must be
|
|
67
|
+
* finite but are *not* clamped at construction — they're clamped during
|
|
68
|
+
* `toRgba` instead, so transforms can pass through intermediate
|
|
69
|
+
* representations (e.g. h = 720°, c = -0.1 mid-pipeline) before the final
|
|
70
|
+
* sRGB-quantization step normalizes them.
|
|
71
|
+
*/
|
|
72
|
+
export declare class Oklch {
|
|
73
|
+
readonly l: number;
|
|
74
|
+
readonly c: number;
|
|
75
|
+
readonly h: number;
|
|
76
|
+
readonly alpha: number;
|
|
77
|
+
constructor(l: number, c: number, h: number, alpha?: number);
|
|
78
|
+
/** sRGB → linear → OKLab → polar. Pure; no I/O, no allocation beyond the result. */
|
|
79
|
+
static fromRgba(color: ColorRgba): Oklch;
|
|
80
|
+
/**
|
|
81
|
+
* Polar → OKLab → linear → sRGB (with chroma-bisection gamut clamping).
|
|
82
|
+
*
|
|
83
|
+
* [LAW:single-enforcer] All sRGB-gamut clamping for OKLCH happens here.
|
|
84
|
+
* Callers don't see intermediate float channels; they get a valid
|
|
85
|
+
* `ColorRgba` or a thrown error.
|
|
86
|
+
*/
|
|
87
|
+
toRgba(): ColorRgba;
|
|
88
|
+
/**
|
|
89
|
+
* Apply a `ThemeKey`. Returns a new `Oklch`; pure.
|
|
90
|
+
*
|
|
91
|
+
* [LAW:dataflow-not-control-flow] Identity short-circuits to `this` —
|
|
92
|
+
* same shape as `ColorRgba.compositeOver(bg)` returning `this` when
|
|
93
|
+
* `alpha === 1`. Callers invoke unconditionally; the data decides.
|
|
94
|
+
*/
|
|
95
|
+
applyKey(k: ThemeKey): Oklch;
|
|
96
|
+
/** Linear-sRGB coordinates for an explicit (l, C, h). Pure; `toRgba` passes
|
|
97
|
+
* already-normalized values so this never sees out-of-range inputs. */
|
|
98
|
+
private toLinearRgb;
|
|
99
|
+
/**
|
|
100
|
+
* Largest chroma ≤ `c` whose (l, h) projection lies in sRGB.
|
|
101
|
+
* Standard chroma-reduction-by-bisection: 24 iterations gives ~1e-7
|
|
102
|
+
* precision, more than enough since the next step quantizes to 1/255.
|
|
103
|
+
*/
|
|
104
|
+
private findInGamutChroma;
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=oklch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oklch.d.ts","sourceRoot":"","sources":["../../src/core/oklch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAMvC;;;;;;;;;GASG;AACH,MAAM,WAAW,QAAQ;IACvB,yEAAyE;IACzE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,8EAA8E;IAC9E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,4EAA4E;IAC5E,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,wDAAwD;IACxD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAED,eAAO,MAAM,QAAQ,EAAE,QAKrB,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,EAAE,QAK7B,CAAC;AAEH;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,QAAQ,GAAG,OAAO,CAOlD;AAwCD;;;;;;;;;;;GAWG;AACH,qBAAa,KAAK;IAEd,QAAQ,CAAC,CAAC,EAAE,MAAM;IAClB,QAAQ,CAAC,CAAC,EAAE,MAAM;IAClB,QAAQ,CAAC,CAAC,EAAE,MAAM;IAClB,QAAQ,CAAC,KAAK,EAAE,MAAM;gBAHb,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,GAAE,MAAU;IAU5B,oFAAoF;IACpF,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK;IA0BxC;;;;;;OAMG;IACH,MAAM,IAAI,SAAS;IAgBnB;;;;;;OAMG;IACH,QAAQ,CAAC,CAAC,EAAE,QAAQ,GAAG,KAAK;IAY5B;2EACuE;IACvE,OAAO,CAAC,WAAW;IAoBnB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;CAa1B"}
|