@promptctl/rich-js 0.3.0 → 0.4.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 (61) hide show
  1. package/README.md +19 -15
  2. package/dist/core/console.d.ts +29 -11
  3. package/dist/core/console.d.ts.map +1 -1
  4. package/dist/core/console.js +86 -30
  5. package/dist/core/console.js.map +1 -1
  6. package/dist/core/render.d.ts.map +1 -1
  7. package/dist/core/render.js +8 -1
  8. package/dist/core/render.js.map +1 -1
  9. package/dist/core/sanitize.d.ts +16 -0
  10. package/dist/core/sanitize.d.ts.map +1 -0
  11. package/dist/core/sanitize.js +19 -0
  12. package/dist/core/sanitize.js.map +1 -0
  13. package/dist/core/strip.d.ts +16 -74
  14. package/dist/core/strip.d.ts.map +1 -1
  15. package/dist/core/strip.js +39 -75
  16. package/dist/core/strip.js.map +1 -1
  17. package/dist/core/style.d.ts +1 -0
  18. package/dist/core/style.d.ts.map +1 -1
  19. package/dist/core/style.js +38 -5
  20. package/dist/core/style.js.map +1 -1
  21. package/dist/core/text.d.ts +54 -1
  22. package/dist/core/text.d.ts.map +1 -1
  23. package/dist/core/text.js +194 -12
  24. package/dist/core/text.js.map +1 -1
  25. package/dist/index.d.ts +7 -3
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +3 -1
  28. package/dist/index.js.map +1 -1
  29. package/dist/node/prompt.d.ts +22 -0
  30. package/dist/node/prompt.d.ts.map +1 -0
  31. package/dist/node/prompt.js +31 -0
  32. package/dist/node/prompt.js.map +1 -0
  33. package/dist/node/save.d.ts +22 -0
  34. package/dist/node/save.d.ts.map +1 -0
  35. package/dist/node/save.js +22 -0
  36. package/dist/node/save.js.map +1 -0
  37. package/dist/renderables/prompt.d.ts +31 -6
  38. package/dist/renderables/prompt.d.ts.map +1 -1
  39. package/dist/renderables/prompt.js +39 -22
  40. package/dist/renderables/prompt.js.map +1 -1
  41. package/dist/widgets/event-router.d.ts +16 -14
  42. package/dist/widgets/event-router.d.ts.map +1 -1
  43. package/dist/widgets/event-router.js +71 -38
  44. package/dist/widgets/event-router.js.map +1 -1
  45. package/dist/widgets/host-stream.d.ts +31 -0
  46. package/dist/widgets/host-stream.d.ts.map +1 -0
  47. package/dist/widgets/host-stream.js +36 -0
  48. package/dist/widgets/host-stream.js.map +1 -0
  49. package/dist/widgets/index.d.ts +3 -0
  50. package/dist/widgets/index.d.ts.map +1 -1
  51. package/dist/widgets/index.js +2 -0
  52. package/dist/widgets/index.js.map +1 -1
  53. package/dist/widgets/screen.d.ts +12 -5
  54. package/dist/widgets/screen.d.ts.map +1 -1
  55. package/dist/widgets/screen.js +9 -11
  56. package/dist/widgets/screen.js.map +1 -1
  57. package/dist/widgets/terminal-host.d.ts +188 -0
  58. package/dist/widgets/terminal-host.d.ts.map +1 -0
  59. package/dist/widgets/terminal-host.js +258 -0
  60. package/dist/widgets/terminal-host.js.map +1 -0
  61. package/package.json +20 -6
@@ -15,88 +15,30 @@
15
15
  * is the single authority for how strips lay out. Every joiner participates
16
16
  * in the same protocol; "look up the previous segment's bg" is no longer a
17
17
  * powerline-specific hack but the contract every joiner shares.
18
+ *
19
+ * [LAW:locality-or-seam] The joiner protocol asks each item only for its
20
+ * *edge* style — the column adjacent to the joiner — not for a single
21
+ * whole-item style. This pushes the bg-uniformity requirement out of the
22
+ * cell type and into the narrowest place that actually needs it: the column
23
+ * boundary. Items with uniform styling report the same style at both edges;
24
+ * items with varying styling report the actual boundary column. There is no
25
+ * single-style invariant on the cell type — the terminal supports per-column
26
+ * styling, so the cell type does too.
18
27
  */
19
28
  import { Segment } from "./segment.js";
20
29
  import { Style } from "./style.js";
21
30
  import type { Renderable, RenderOptions } from "./protocol.js";
22
31
  /**
23
- * Items in a `Strip` expose a single dominant `style` so joiners can read
24
- * fg/bg without inspecting the rendered output.
25
- *
26
- * ## Single-style invariant (load-bearing)
27
- *
28
- * Joiners — `PowerlineJoiner`, `CapsuleJoiner`, `GradientJoiner` — paint edges
29
- * by reading `item.style.bgcolor` for adjacent items. If `render()` emits a
30
- * `Segment` whose `style.bgcolor` diverges from `this.style.bgcolor`, the
31
- * arrow/cap glyph between this item and its neighbour will use the *declared*
32
- * bg even though the item *displayed* a different bg. The result is a
33
- * visually wrong transition (e.g. a powerline arrow whose source colour
34
- * doesn't match the cell it's bleeding out of).
35
- *
36
- * **The invariant**: for every `Segment` yielded by `render()`, either
37
- * - `segment.style.bgcolor === this.style.bgcolor`, or
38
- * - `segment.style.bgcolor === undefined` (transparent — terminal default).
39
- *
40
- * Foreground colour and text attributes (bold, italic, underline, etc.) may
41
- * vary freely within a single item — only `bgcolor` is constrained, because
42
- * that's the only field joiners read.
32
+ * Items in a `Strip` expose their per-edge style so joiners can paint the
33
+ * transition glyph at each boundary.
43
34
  *
44
- * ## What breaks the invariant
45
- *
46
- * - Yielding inline `Segment`s with their own `bgcolor` set to a different
47
- * value (e.g. an embedded "warning" highlight with a yellow background).
48
- * - Wrapping a renderable that paints its own background — `Panel`, a styled
49
- * `Group`, or any `RichText` whose base style includes a bg.
50
- *
51
- * ## The safe path
52
- *
53
- * Use `StripCell(text, style)` for plain styled text — it satisfies the
54
- * invariant by construction. For richer items, implement this interface
55
- * directly and ensure your `render()` only emits Segments whose bg matches
56
- * `this.style.bgcolor` (or is undefined). Inline fg variation is fine; bg
57
- * variation is not.
35
+ * `edgeStyle("left")` reports the style of the item's leftmost cell column;
36
+ * `edgeStyle("right")` reports the rightmost. Joiners read only these — the
37
+ * item's interior may carry any per-column variation without breaking the
38
+ * join.
58
39
  */
59
40
  export interface StyledRenderable extends Renderable {
60
- readonly style: Style;
61
- }
62
- /**
63
- * A styled run within a `StripCell` — text plus an optional foreground /
64
- * text-attribute overlay. Used to express inline fg variation inside a single
65
- * cell (e.g. a status string where some characters render green and others
66
- * red, all on the same cell-level bg).
67
- *
68
- * The overlay must NOT set `bgcolor`. Cell-level bg is the joiner-visible bg
69
- * per the single-style invariant on `StyledRenderable`; allowing parts to
70
- * override it would silently violate that invariant. `StripCell` rejects parts
71
- * with a `bgcolor` overlay at construction.
72
- */
73
- export interface StripCellPart {
74
- readonly text: string;
75
- readonly style?: Style;
76
- }
77
- /**
78
- * Canonical safe implementation of `StyledRenderable`. Two construction
79
- * shapes:
80
- *
81
- * - `new StripCell(text, style)` — a single styled run. One segment out.
82
- * - `new StripCell(parts, style)` — multiple runs sharing one cell-level
83
- * `style`. Each part may carry its own fg / attribute overlay; cell-level
84
- * `style` always governs the bg. Consumers needing inline fg variation
85
- * (e.g. `[ main S +3 -2 ]` where `S`/`+3` are green, `-2` is red, all on
86
- * the same blue bg) use this shape instead of writing a custom
87
- * `StyledRenderable`.
88
- *
89
- * Both shapes satisfy the single-style invariant by construction: parts with
90
- * `bgcolor` set are rejected, so every emitted `Segment`'s bg matches
91
- * `this.style.bgcolor` (or is undefined when the cell has no bg).
92
- */
93
- export declare class StripCell implements StyledRenderable {
94
- readonly text: string;
95
- readonly style: Style;
96
- private readonly _parts;
97
- constructor(text: string, style?: Style);
98
- constructor(parts: readonly StripCellPart[], style?: Style);
99
- render(_options: RenderOptions): Iterable<Segment>;
41
+ edgeStyle(side: "left" | "right"): Style;
100
42
  }
101
43
  export interface Joiner<T extends StyledRenderable = StyledRenderable> {
102
44
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"strip.d.ts","sourceRoot":"","sources":["../../src/core/strip.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"strip.d.ts","sourceRoot":"","sources":["../../src/core/strip.ts"],"names":[],"mappings":"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"}
@@ -15,62 +15,19 @@
15
15
  * is the single authority for how strips lay out. Every joiner participates
16
16
  * in the same protocol; "look up the previous segment's bg" is no longer a
17
17
  * powerline-specific hack but the contract every joiner shares.
18
+ *
19
+ * [LAW:locality-or-seam] The joiner protocol asks each item only for its
20
+ * *edge* style — the column adjacent to the joiner — not for a single
21
+ * whole-item style. This pushes the bg-uniformity requirement out of the
22
+ * cell type and into the narrowest place that actually needs it: the column
23
+ * boundary. Items with uniform styling report the same style at both edges;
24
+ * items with varying styling report the actual boundary column. There is no
25
+ * single-style invariant on the cell type — the terminal supports per-column
26
+ * styling, so the cell type does too.
18
27
  */
19
28
  import { Segment } from "./segment.js";
20
- import { Style, NULL_STYLE } from "./style.js";
29
+ import { Style } from "./style.js";
21
30
  import { ColorSpec, blendRgb } from "./color.js";
22
- /**
23
- * Canonical safe implementation of `StyledRenderable`. Two construction
24
- * shapes:
25
- *
26
- * - `new StripCell(text, style)` — a single styled run. One segment out.
27
- * - `new StripCell(parts, style)` — multiple runs sharing one cell-level
28
- * `style`. Each part may carry its own fg / attribute overlay; cell-level
29
- * `style` always governs the bg. Consumers needing inline fg variation
30
- * (e.g. `[ main S +3 -2 ]` where `S`/`+3` are green, `-2` is red, all on
31
- * the same blue bg) use this shape instead of writing a custom
32
- * `StyledRenderable`.
33
- *
34
- * Both shapes satisfy the single-style invariant by construction: parts with
35
- * `bgcolor` set are rejected, so every emitted `Segment`'s bg matches
36
- * `this.style.bgcolor` (or is undefined when the cell has no bg).
37
- */
38
- export class StripCell {
39
- text;
40
- style;
41
- _parts;
42
- constructor(textOrParts, style) {
43
- this.style = style ?? NULL_STYLE;
44
- if (typeof textOrParts === "string") {
45
- this.text = textOrParts;
46
- this._parts = [{ text: textOrParts }];
47
- return;
48
- }
49
- // [LAW:single-enforcer] cell-level bg is the only joiner-visible bg.
50
- // Reject parts that try to set their own bg at construction so the
51
- // invariant cannot be silently broken downstream.
52
- for (const part of textOrParts) {
53
- if (part.style?.bgcolor !== undefined) {
54
- throw new Error("StripCell part style must not set bgcolor — cell-level style governs the bg (single-style invariant). Use the cell `style` argument for bg.");
55
- }
56
- }
57
- this._parts = textOrParts.slice();
58
- this.text = textOrParts.map((p) => p.text).join("");
59
- }
60
- *render(_options) {
61
- // [LAW:dataflow-not-control-flow] The walk is identical for both
62
- // construction shapes: one part for the (text, style) form, N parts for
63
- // the parts form. Variability lives in `_parts`, not in branching here.
64
- for (const part of this._parts) {
65
- const partStyle = part.style;
66
- // `Style.add` keeps `this.style.bgcolor` whenever the overlay's bg is
67
- // undefined — and the constructor guarantees that. So the merged style
68
- // always satisfies `merged.bgcolor === this.style.bgcolor`.
69
- const style = partStyle ? this.style.add(partStyle) : this.style;
70
- yield new Segment(part.text, style);
71
- }
72
- }
73
- }
74
31
  // --- Strip ---
75
32
  export class Strip {
76
33
  items;
@@ -113,17 +70,17 @@ class FixedSegment {
113
70
  yield new Segment(this._text, this._style);
114
71
  }
115
72
  }
116
- function bgAsFg(item) {
117
- // Endpoint and powerline join glyphs paint the previous/next item's bg
118
- // *as* their fg. If the source item has no bgcolor, the glyph degrades to
119
- // the default fg — which renders as nothing visible against the terminal
120
- // background, the right outcome for an unstyled cell.
121
- return new Style({ color: item.style.bgcolor });
73
+ // Endpoint and powerline join glyphs paint the adjacent item's edge bg
74
+ // *as* their fg. If the edge has no bgcolor, the glyph degrades to the
75
+ // default fg — which renders as nothing visible against the terminal
76
+ // background, the right outcome for an unstyled edge.
77
+ function bgAsFg(edge) {
78
+ return new Style({ color: edge.bgcolor });
122
79
  }
123
80
  export class PowerlineJoiner {
124
81
  _glyph;
125
82
  constructor(options) {
126
- this._glyph = options?.glyph ?? "\ue0b0";
83
+ this._glyph = options?.glyph ?? "";
127
84
  }
128
85
  join(left, right) {
129
86
  // Start cap: empty. A right-pointing arrow with no source segment to its
@@ -132,12 +89,19 @@ export class PowerlineJoiner {
132
89
  if (left === null)
133
90
  return EMPTY;
134
91
  if (right === null) {
135
- // End cap: fg = left.bg, no bg — last segment bleeds out into the
136
- // terminal background.
137
- return new FixedSegment(this._glyph, bgAsFg(left));
92
+ // End cap: fg = left's right edge bg, no bg — bleed out into terminal bg.
93
+ return new FixedSegment(this._glyph, bgAsFg(left.edgeStyle("right")));
138
94
  }
139
- // Middle: fg = left.bg, bg = right.bg.
140
- return new FixedSegment(this._glyph, new Style({ color: left.style.bgcolor, bgcolor: right.style.bgcolor }));
95
+ // [LAW:dataflow-not-control-flow] The transition is a function of the
96
+ // edge colors. When both neighbors' adjacent edges share a bg, there is
97
+ // no visual transition to paint — emit EMPTY so the coalescer in
98
+ // segmentsToString can merge adjacent same-style cells under one SGR
99
+ // wrap. Equality uses `.name` to match Style.equals' precedent.
100
+ const leftEdge = left.edgeStyle("right");
101
+ const rightEdge = right.edgeStyle("left");
102
+ if (leftEdge.bgcolor?.name === rightEdge.bgcolor?.name)
103
+ return EMPTY;
104
+ return new FixedSegment(this._glyph, new Style({ color: leftEdge.bgcolor, bgcolor: rightEdge.bgcolor }));
141
105
  }
142
106
  }
143
107
  export class CapsuleJoiner {
@@ -145,26 +109,26 @@ export class CapsuleJoiner {
145
109
  _right;
146
110
  _separator;
147
111
  constructor(options) {
148
- this._left = options?.left ?? "\ue0b6";
149
- this._right = options?.right ?? "\ue0b4";
112
+ this._left = options?.left ?? "";
113
+ this._right = options?.right ?? "";
150
114
  this._separator = options?.separator ?? " ";
151
115
  }
152
116
  *_emit(left, right, options) {
153
117
  if (left === null && right === null)
154
118
  return;
155
119
  if (left === null) {
156
- yield new Segment(this._left, bgAsFg(right));
120
+ yield new Segment(this._left, bgAsFg(right.edgeStyle("left")));
157
121
  return;
158
122
  }
159
123
  if (right === null) {
160
- yield new Segment(this._right, bgAsFg(left));
124
+ yield new Segment(this._right, bgAsFg(left.edgeStyle("right")));
161
125
  return;
162
126
  }
163
127
  // Middle: close the left capsule, separator (unstyled), open the right.
164
- yield new Segment(this._right, bgAsFg(left));
128
+ yield new Segment(this._right, bgAsFg(left.edgeStyle("right")));
165
129
  if (this._separator.length > 0)
166
130
  yield new Segment(this._separator);
167
- yield new Segment(this._left, bgAsFg(right));
131
+ yield new Segment(this._left, bgAsFg(right.edgeStyle("left")));
168
132
  void options;
169
133
  }
170
134
  join(left, right) {
@@ -196,7 +160,7 @@ export class PlainJoiner {
196
160
  * two colour samples — `2 * steps` samples in `steps` cells — so the gradient
197
161
  * looks twice as smooth as one-colour-per-cell at the same width.
198
162
  */
199
- const HALF_BLOCK = "\u258c"; // ▌
163
+ const HALF_BLOCK = "▌"; // ▌
200
164
  export class GradientJoiner {
201
165
  _steps;
202
166
  constructor(options) {
@@ -205,11 +169,11 @@ export class GradientJoiner {
205
169
  join(left, right) {
206
170
  // [LAW:dataflow-not-control-flow] Endpoints have no opposite anchor to
207
171
  // interpolate toward — the data (a missing neighbor) makes the gradient
208
- // empty. Same for items lacking a bgcolor: nothing to blend between.
172
+ // empty. Same for edges lacking a bgcolor: nothing to blend between.
209
173
  if (left === null || right === null)
210
174
  return EMPTY;
211
- const lbg = left.style.bgcolor;
212
- const rbg = right.style.bgcolor;
175
+ const lbg = left.edgeStyle("right").bgcolor;
176
+ const rbg = right.edgeStyle("left").bgcolor;
213
177
  if (!lbg || !rbg)
214
178
  return EMPTY;
215
179
  const lTrip = lbg.getTruecolor();
@@ -1 +1 @@
1
- {"version":3,"file":"strip.js","sourceRoot":"","sources":["../../src/core/strip.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"strip.js","sourceRoot":"","sources":["../../src/core/strip.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,7 @@ export declare class Style {
63
63
  get transparentBackground(): boolean;
64
64
  get backgroundStyle(): Style;
65
65
  get withoutColor(): Style;
66
+ withLink(link: string | undefined): Style;
66
67
  clearMetaAndLinks(): Style;
67
68
  /**
68
69
  * Merges two styles. `other`'s values take priority.
@@ -1 +1 @@
1
- {"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../../src/core/style.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../../src/core/style.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,12 @@
2
2
  * Immutable style descriptors — colors, text attributes, links, metadata.
3
3
  */
4
4
  import { ColorRgba, ColorSpec, } from "./color.js";
5
- // [LAW:one-way-deps] `core/style` depends only on `core/color`; the substrate
6
- // fallback is the canonical canvas color (black), inlined to avoid pulling in
7
- // any preset theme constants. Preset themes live in `src/themes/` and depend
8
- // on core, never the reverse.
5
+ import { stripOscTerminators } from "./sanitize.js";
6
+ // [LAW:one-way-deps] `core/style` depends only on `core/color` and the leaf
7
+ // `core/sanitize` (a dep-free utility module). The substrate fallback is the
8
+ // canonical canvas color (black), inlined to avoid pulling in any preset
9
+ // theme constants. Preset themes live in `src/themes/` and depend on core,
10
+ // never the reverse.
9
11
  const SURFACE_BLACK = new ColorRgba(0, 0, 0);
10
12
  // --- Attribute definitions ---
11
13
  /**
@@ -171,6 +173,31 @@ export class Style {
171
173
  meta: this.meta,
172
174
  });
173
175
  }
176
+ // [LAW:types-are-the-program] Structural clone helper — pure rearrangement
177
+ // of fields, no policy. Sanitization of the URL is the trust boundary's
178
+ // job (see RichText in text.ts); Style stays a faithful container so
179
+ // callers that have already sanitized are not silently re-mutated.
180
+ withLink(link) {
181
+ return new Style({
182
+ color: this.color,
183
+ bgcolor: this.bgcolor,
184
+ bold: this.bold,
185
+ dim: this.dim,
186
+ italic: this.italic,
187
+ underline: this.underline,
188
+ blink: this.blink,
189
+ blink2: this.blink2,
190
+ reverse: this.reverse,
191
+ conceal: this.conceal,
192
+ strike: this.strike,
193
+ underline2: this.underline2,
194
+ frame: this.frame,
195
+ encircle: this.encircle,
196
+ overline: this.overline,
197
+ link,
198
+ meta: this.meta,
199
+ });
200
+ }
174
201
  clearMetaAndLinks() {
175
202
  return new Style({
176
203
  color: this.color,
@@ -300,7 +327,13 @@ export class Style {
300
327
  // pair instead of sharing an id). The coalescer in render.ts already
301
328
  // merges adjacent same-link runs into one wrap, so the common case is
302
329
  // unaffected; non-adjacent hover-grouping is the intentional sacrifice.
303
- result = `\x1b]8;;${this.link}\x1b\\${result}\x1b]8;;\x1b\\`;
330
+ //
331
+ // [LAW:single-enforcer] Wire-byte sanitization at the OSC 8 emit site
332
+ // — paired with the same call in render.ts:segmentsToString so every
333
+ // path that turns `Style.link` into bytes goes through one rule. Style
334
+ // itself stays a faithful container (this.link is unchanged); only the
335
+ // bytes going out the door are stripped.
336
+ result = `\x1b]8;;${stripOscTerminators(this.link)}\x1b\\${result}\x1b]8;;\x1b\\`;
304
337
  }
305
338
  return result;
306
339
  }
@@ -1 +1 @@
1
- {"version":3,"file":"style.js","sourceRoot":"","sources":["../../src/core/style.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"style.js","sourceRoot":"","sources":["../../src/core/style.ts"],"names":[],"mappings":"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"}
@@ -47,7 +47,27 @@ export declare class RichText implements Renderable, Measurable {
47
47
  set overflow(value: "fold" | "crop" | "ellipsis" | undefined);
48
48
  get end(): string;
49
49
  set end(value: string);
50
+ get noWrap(): boolean;
51
+ set noWrap(value: boolean);
50
52
  get spans(): readonly Span[];
53
+ /**
54
+ * The style of the cell-column at the named edge — base style merged with
55
+ * any spans covering the leftmost (side="left") or rightmost (side="right")
56
+ * character.
57
+ *
58
+ * [LAW:locality-or-seam] Used by `Joiner`s to paint the transition between
59
+ * adjacent `Strip` items. Joiners only ever need the column adjacent to
60
+ * them, so the cell type exposes that column rather than constraining its
61
+ * interior to be uniform. For RichText with uniform styling, both edges
62
+ * return the same style; for RichText with edge variation, each edge
63
+ * accurately reports the column the joiner actually meets.
64
+ *
65
+ * Position is by character index (not cell column). For wide-character
66
+ * text, the last character occupies the rightmost cell column — the bg
67
+ * of that character covers both columns, so character-index lookup gives
68
+ * the correct edge color.
69
+ */
70
+ edgeStyle(side: "left" | "right"): Style;
51
71
  append(content: string | RichText, style?: string | Style): this;
52
72
  contains(needle: string | RichText): boolean;
53
73
  at(index: number): RichText;
@@ -67,10 +87,43 @@ export declare class RichText implements Renderable, Measurable {
67
87
  padRight(count: number, char?: string): this;
68
88
  setLength(length: number): this;
69
89
  extendStyle(count: number): this;
90
+ /**
91
+ * Truncate to a fixed cell-column width. Three modes, plus a back-compat
92
+ * `overflow` form.
93
+ *
94
+ * - `mode: "right"` (default) \u2014 drop characters from the right; append
95
+ * `marker` (if any) at the cut.
96
+ * - `mode: "left"` \u2014 drop characters from the left; prepend `marker` at
97
+ * the cut.
98
+ * - `mode: "middle"` \u2014 keep equal halves from both ends; place `marker`
99
+ * in the middle.
100
+ *
101
+ * Marker default is `"\u2026"`. Pass `marker: ""` for raw cropping without an
102
+ * indicator glyph.
103
+ *
104
+ * Legacy form: `{ overflow: "ellipsis" }` is equivalent to
105
+ * `{ mode: "right", marker: "\u2026" }`; `{ overflow: "crop" | "fold" }` is
106
+ * equivalent to `{ marker: "" }`.
107
+ *
108
+ * Spans are preserved through the cut: characters that survive keep their
109
+ * styling; the marker (if any) is inserted as plain text with no span.
110
+ * Use `stylize(...)` on the result to color the marker if needed.
111
+ *
112
+ * [LAW:dataflow-not-control-flow] mode/marker/width all flow as values;
113
+ * the walk is the same shape regardless. No "if truncated then rebuild"
114
+ * branch \u2014 the unchanged path just early-returns when content fits.
115
+ */
70
116
  truncate(width: number, options?: {
71
117
  overflow?: "fold" | "crop" | "ellipsis";
118
+ mode?: "right" | "left" | "middle";
119
+ marker?: string;
72
120
  }): this;
73
- private _truncateToWidth;
121
+ private _cropRightTo;
122
+ private _cropLeftTo;
123
+ /** Number of char-index code units that fit within `targetWidth` cell columns from the left. */
124
+ private _cellPrefixCharLength;
125
+ /** Char-index at which the suffix of `targetWidth` cell columns starts. */
126
+ private _cellSuffixStartCharIndex;
74
127
  align(justify: "left" | "center" | "right", width: number): this;
75
128
  removeSuffix(suffix: string): this;
76
129
  appendTokens(tokens: Array<[string, (string | Style)?]>): this;
@@ -1 +1 @@
1
- {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/core/text.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/core/text.ts"],"names":[],"mappings":"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"}