@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.
- package/README.md +19 -15
- package/dist/core/console.d.ts +29 -11
- package/dist/core/console.d.ts.map +1 -1
- package/dist/core/console.js +86 -30
- package/dist/core/console.js.map +1 -1
- package/dist/core/render.d.ts.map +1 -1
- package/dist/core/render.js +8 -1
- package/dist/core/render.js.map +1 -1
- package/dist/core/sanitize.d.ts +16 -0
- package/dist/core/sanitize.d.ts.map +1 -0
- package/dist/core/sanitize.js +19 -0
- package/dist/core/sanitize.js.map +1 -0
- package/dist/core/strip.d.ts +16 -74
- package/dist/core/strip.d.ts.map +1 -1
- package/dist/core/strip.js +39 -75
- package/dist/core/strip.js.map +1 -1
- package/dist/core/style.d.ts +1 -0
- package/dist/core/style.d.ts.map +1 -1
- package/dist/core/style.js +38 -5
- package/dist/core/style.js.map +1 -1
- package/dist/core/text.d.ts +54 -1
- package/dist/core/text.d.ts.map +1 -1
- package/dist/core/text.js +194 -12
- package/dist/core/text.js.map +1 -1
- package/dist/index.d.ts +7 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/node/prompt.d.ts +22 -0
- package/dist/node/prompt.d.ts.map +1 -0
- package/dist/node/prompt.js +31 -0
- package/dist/node/prompt.js.map +1 -0
- package/dist/node/save.d.ts +22 -0
- package/dist/node/save.d.ts.map +1 -0
- package/dist/node/save.js +22 -0
- package/dist/node/save.js.map +1 -0
- package/dist/renderables/prompt.d.ts +31 -6
- package/dist/renderables/prompt.d.ts.map +1 -1
- package/dist/renderables/prompt.js +39 -22
- package/dist/renderables/prompt.js.map +1 -1
- package/dist/widgets/event-router.d.ts +16 -14
- package/dist/widgets/event-router.d.ts.map +1 -1
- package/dist/widgets/event-router.js +71 -38
- package/dist/widgets/event-router.js.map +1 -1
- package/dist/widgets/host-stream.d.ts +31 -0
- package/dist/widgets/host-stream.d.ts.map +1 -0
- package/dist/widgets/host-stream.js +36 -0
- package/dist/widgets/host-stream.js.map +1 -0
- package/dist/widgets/index.d.ts +3 -0
- package/dist/widgets/index.d.ts.map +1 -1
- package/dist/widgets/index.js +2 -0
- package/dist/widgets/index.js.map +1 -1
- package/dist/widgets/screen.d.ts +12 -5
- package/dist/widgets/screen.d.ts.map +1 -1
- package/dist/widgets/screen.js +9 -11
- package/dist/widgets/screen.js.map +1 -1
- package/dist/widgets/terminal-host.d.ts +188 -0
- package/dist/widgets/terminal-host.d.ts.map +1 -0
- package/dist/widgets/terminal-host.js +258 -0
- package/dist/widgets/terminal-host.js.map +1 -0
- package/package.json +20 -6
package/dist/core/strip.d.ts
CHANGED
|
@@ -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
|
|
24
|
-
*
|
|
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
|
-
*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
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
|
-
|
|
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
|
/**
|
package/dist/core/strip.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strip.d.ts","sourceRoot":"","sources":["../../src/core/strip.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"strip.d.ts","sourceRoot":"","sources":["../../src/core/strip.ts"],"names":[],"mappings":"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"}
|
package/dist/core/strip.js
CHANGED
|
@@ -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
|
|
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
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
return new Style({ color:
|
|
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 ?? "
|
|
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
|
|
136
|
-
|
|
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
|
-
//
|
|
140
|
-
|
|
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 ?? "
|
|
149
|
-
this._right = options?.right ?? "
|
|
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 = "
|
|
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
|
|
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.
|
|
212
|
-
const rbg = right.
|
|
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();
|
package/dist/core/strip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strip.js","sourceRoot":"","sources":["../../src/core/strip.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"strip.js","sourceRoot":"","sources":["../../src/core/strip.ts"],"names":[],"mappings":"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"}
|
package/dist/core/style.d.ts
CHANGED
|
@@ -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.
|
package/dist/core/style.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../../src/core/style.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAEL,SAAS,EACT,UAAU,EACX,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../../src/core/style.ts"],"names":[],"mappings":"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"}
|
package/dist/core/style.js
CHANGED
|
@@ -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
|
-
|
|
6
|
-
//
|
|
7
|
-
//
|
|
8
|
-
//
|
|
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
|
-
|
|
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
|
}
|
package/dist/core/style.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.js","sourceRoot":"","sources":["../../src/core/style.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,SAAS,EACT,SAAS,GAEV,MAAM,YAAY,CAAC;AAGpB,8EAA8E;AAC9E,8EAA8E;AAC9E,6EAA6E;AAC7E,8BAA8B;AAC9B,MAAM,aAAa,GAAG,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAE7C,gCAAgC;AAEhC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,MAAM;IACN,KAAK;IACL,QAAQ;IACR,WAAW;IACX,OAAO;IACP,QAAQ;IACR,SAAS;IACT,SAAS;IACT,QAAQ;IACR,YAAY;IACZ,OAAO;IACP,UAAU;IACV,UAAU;CACF,CAAC;AAIX,0CAA0C;AAC1C,MAAM,aAAa,GAA4C;IAC7D,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IACb,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IACZ,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IACf,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IAClB,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IACd,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IACf,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IAChB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IAChB,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;IACf,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IACpB,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IACf,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;IAClB,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;CACnB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAkC;IACpE,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,WAAW;IACd,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,UAAU;IACb,EAAE,EAAE,YAAY;CACjB,CAAC;AAwBF,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACzC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAED,wFAAwF;AACxF,MAAM,eAAe,GAAG,IAAI,GAAG,EAAiB,CAAC;AAEjD,gBAAgB;AAEhB,MAAM,OAAO,KAAK;IACP,KAAK,CAAwB;IAC7B,OAAO,CAAwB;IAC/B,IAAI,CAAsB;IAC1B,GAAG,CAAsB;IACzB,MAAM,CAAsB;IAC5B,SAAS,CAAsB;IAC/B,KAAK,CAAsB;IAC3B,MAAM,CAAsB;IAC5B,OAAO,CAAsB;IAC7B,OAAO,CAAsB;IAC7B,MAAM,CAAsB;IAC5B,UAAU,CAAsB;IAChC,KAAK,CAAsB;IAC3B,QAAQ,CAAsB;IAC9B,QAAQ,CAAsB;IAC9B,IAAI,CAAqB;IACzB,IAAI,CAAsC;IAEnD,YAAY,OAAsB;QAChC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YACvB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;YACtB,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YACvB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAC5B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YACvB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC1B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC1B,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;YACtB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;YACtB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,IAAI,MAAM;QACR,OAAO,CACL,IAAI,CAAC,KAAK,KAAK,SAAS;YACxB,IAAI,CAAC,OAAO,KAAK,SAAS;YAC1B,IAAI,CAAC,IAAI,KAAK,SAAS;YACvB,IAAI,CAAC,GAAG,KAAK,SAAS;YACtB,IAAI,CAAC,MAAM,KAAK,SAAS;YACzB,IAAI,CAAC,SAAS,KAAK,SAAS;YAC5B,IAAI,CAAC,KAAK,KAAK,SAAS;YACxB,IAAI,CAAC,MAAM,KAAK,SAAS;YACzB,IAAI,CAAC,OAAO,KAAK,SAAS;YAC1B,IAAI,CAAC,OAAO,KAAK,SAAS;YAC1B,IAAI,CAAC,MAAM,KAAK,SAAS;YACzB,IAAI,CAAC,UAAU,KAAK,SAAS;YAC7B,IAAI,CAAC,KAAK,KAAK,SAAS;YACxB,IAAI,CAAC,QAAQ,KAAK,SAAS;YAC3B,IAAI,CAAC,QAAQ,KAAK,SAAS;YAC3B,IAAI,CAAC,IAAI,KAAK,SAAS;YACvB,IAAI,CAAC,IAAI,KAAK,SAAS,CACxB,CAAC;IACJ,CAAC;IAED,IAAI,qBAAqB;QACvB,OAAO,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;IAC9D,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,KAAK,CAAC;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,KAAK,CAAC;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,KAAwB;QAC1B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACxC,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAE9B,OAAO,IAAI,KAAK,CAAC;YACf,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK;YAChC,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;YACtC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI;YAC7B,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG;YAC1B,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM;YACnC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS;YAC5C,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK;YAChC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM;YACnC,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;YACtC,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;YACtC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM;YACnC,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU;YAC/C,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK;YAChC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ;YACzC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ;YACzC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI;YAC7B,IAAI,EACF,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI;gBACrB,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE;gBACjC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI;SAC9B,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,KAAY;QACjB,IAAI,IAAI,KAAK,KAAK;YAAE,OAAO,IAAI,CAAC;QAChC,OAAO,CACL,IAAI,CAAC,KAAK,EAAE,IAAI,KAAK,KAAK,CAAC,KAAK,EAAE,IAAI;YACtC,IAAI,CAAC,OAAO,EAAE,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,IAAI;YAC1C,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YACxB,IAAI,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;YACtB,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;YAClC,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK;YAC1B,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;YAC9B,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;YAC9B,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAC5B,IAAI,CAAC,UAAU,KAAK,KAAK,CAAC,UAAU;YACpC,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK;YAC1B,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ;YAChC,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ;YAChC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CACzB,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,UAAU,CAAC,WAAwB;QACjC,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QAE3B,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,yEAAyE;QACzE,4EAA4E;QAC5E,yEAAyE;QACzE,gBAAgB;QAChB,MAAM,OAAO,GAAG,aAAa,CAAC;QAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,WAAW,GAAG,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC;QACtE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;QAErD,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,GACL,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACrE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,GACL,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACrE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;QACvC,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;YACnC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBACjB,KAAK,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC1C,CAAC;iBAAM,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;gBACzB,KAAK,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,IAAY,EAAE,WAAwB;QAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAE7B,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3C,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;QAEtE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,mEAAmE;YACnE,oEAAoE;YACpE,wEAAwE;YACxE,qEAAqE;YACrE,sEAAsE;YACtE,qEAAqE;YACrE,sEAAsE;YACtE,wEAAwE;YACxE,MAAM,GAAG,WAAW,IAAI,CAAC,IAAI,SAAS,MAAM,gBAAgB,CAAC;QAC/D,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,KAAqB;QAChC,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACrD,KAAK,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACxD,KAAK,CAAC,IAAI,CAAC,qBAAqB,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,IAAI,CAAC,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC/C,IAAI,IAAI,CAAC,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAElD,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,SAAS;YAAE,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,IAAI,CAAC,MAAM;YAAE,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAClD,IAAI,IAAI,CAAC,QAAQ;YAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,oBAAoB,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,IAAI,CAAC,GAAG;YAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAEzC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,MAAM,CAAC;QAC/B,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,2BAA2B;QAC3B,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK;gBAAE,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,sBAAsB;QACtB,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,IAAI,CAAC,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACxD,IAAI,IAAI,CAAC,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAE/C,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC;IACnC,CAAC;IAED,yBAAyB;IAEzB,MAAM,CAAC,IAAI;QACT,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,KAAiB,EAAE,OAAmB;QACrD,OAAO,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAA6B;QAC3C,OAAO,IAAI,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,GAAG,IAA2B;QAC7C,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,SAAS;gBAAE,OAAO,CAAC,CAAC;QAChC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,MAA6B;QAC1C,IAAI,MAAM,GAAU,UAAU,CAAC;QAC/B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACvB,IAAI,CAAC;gBAAE,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,GAAG,MAA6B;QAC3C,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,UAAkB;QACjC,OAAO,UAAU,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,UAAkB;QAC7B,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,UAAU,KAAK,EAAE,IAAI,UAAU,KAAK,MAAM;YAAE,OAAO,UAAU,CAAC;QAElE,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAE1B,gFAAgF;QAChF,0EAA0E;QAC1E,yEAAyE;QACzE,IAAI,kBAAkB,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACnD,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;YAC5C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;gBAC1C,OAAO,QAAQ,CAAC;YAClB,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAChD,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACxC,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,KAAK,EAAE,CAAC;AAEtC,qBAAqB;AAErB,MAAM,OAAO,UAAU;IACJ,KAAK,CAAU;IAEhC,YAAY,OAAc,UAAU;QAClC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;IAC5C,CAAC;IAED,IAAI,CAAC,KAAY;QACf,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,GAAG;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAG,CAAC;IAC3B,CAAC;CACF;AAED,gBAAgB;AAEhB,MAAM,aAAa,GAAG,qBAAqB,CAAC;AAE5C,MAAM,OAAO,KAAK;IACC,MAAM,CAAqB;IAE5C,YACE,cAAsC,EAAE,EACxC,OAA+B;QAE/B,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,KAAK,KAAK,CAAC;QAC3C,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC3D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CACb,wBAAwB,IAAI,uFAAuF,CACpH,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IAED,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;CACF;AAED,wBAAwB;AAExB,MAAM,aAAa,GAAG,IAAI,GAAG,CAAS,eAAe,CAAC,CAAC;AAEvD,SAAS,oBAAoB,CAAC,UAAkB;IAC9C,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,IAAI,GAAiB,EAAE,CAAC;IAE9B,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;QAEzB,eAAe;QACf,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YACpB,CAAC,EAAE,CAAC;YACJ,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACvB,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,gBAAgB,CAAC,oDAAoD,CAAC,CAAC;YACnF,CAAC;YACD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;YACvD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,gBAAgB,CAAC,uBAAuB,IAAI,GAAG,CAAC,CAAC;YAC7D,CAAC;YACA,IAAgC,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;YACpD,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,eAAe;QACf,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,CAAC,EAAE,CAAC;YACJ,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACvB,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,gBAAgB,CAAC,+CAA+C,CAAC,CAAC;YAC9E,CAAC;YACD,IAAI,CAAC;gBACH,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACvC,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,gBAAgB,CAAC,8BAA8B,IAAI,GAAG,CAAC,CAAC;YACpE,CAAC;YACD,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,eAAe;QACf,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACrB,CAAC,EAAE,CAAC;YACJ,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,GAAG,EAAE,CAAC;gBACR,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;YAClB,CAAC;YACD,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,wBAAwB;QACxB,MAAM,YAAY,GAAG,uBAAuB,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC;QAC7D,IAAI,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YACnC,IAAgC,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;YACvD,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,kBAAkB;QAClB,IAAI,CAAC;YACH,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,gBAAgB,CAAC,8BAA8B,KAAK,GAAG,CAAC,CAAC;QACrE,CAAC;QACD,CAAC,EAAE,CAAC;IACN,CAAC;IAED,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,YAAY,CAAC,CAAiC;IACrD,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACtC,IAAI,CAAC,YAAY,SAAS;QAAE,OAAO,CAAC,CAAC;IACrC,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC5B,CAAC;AAED,yBAAyB;AACzB,iFAAiF;AAEjF,IAAI,kBAAkB,GAAG,KAAK,CAAC;AAE/B,MAAM,CAAC,MAAM,cAAc,GAA0B;IACnD,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,IAAI,KAAK,CAAC;QACf,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE;QAC1B,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE;QAC5B,IAAI,EAAE,KAAK;QACX,GAAG,EAAE,KAAK;QACV,MAAM,EAAE,KAAK;QACb,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,KAAK;QACb,UAAU,EAAE,KAAK;QACjB,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,KAAK;KAChB,CAAC;IACF,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC/B,GAAG,EAAE,IAAI,KAAK,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IAC7B,MAAM,EAAE,IAAI,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACnC,SAAS,EAAE,IAAI,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACzC,KAAK,EAAE,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACjC,MAAM,EAAE,IAAI,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACnC,OAAO,EAAE,IAAI,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACrC,OAAO,EAAE,IAAI,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACrC,MAAM,EAAE,IAAI,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACnC,UAAU,EAAE,IAAI,KAAK,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC3C,KAAK,EAAE,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACjC,QAAQ,EAAE,IAAI,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACvC,QAAQ,EAAE,IAAI,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAEvC,QAAQ;IACR,cAAc,EAAE,IAAI,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACzC,cAAc,EAAE,IAAI,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACzC,YAAY,EAAE,UAAU;IACxB,aAAa,EAAE,IAAI,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC1C,eAAe,EAAE,IAAI,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IAEvD,oBAAoB;IACpB,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IAChC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAClC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC;IACjD,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAC1C,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,kCAAkC,CAAC;IAC3D,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC;IACzC,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC;IACrC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC;IACvC,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;IACzC,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;IAC3C,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IACxC,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IACrC,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAC9C,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;IAC3C,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAEnC,MAAM;IACN,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC;IACnC,aAAa,EAAE,UAAU;IACzB,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;IAC9B,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAClC,WAAW,EAAE,UAAU;IAEvB,OAAO;IACP,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IACjC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAEhC,OAAO;IACP,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IACjC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC;IACjD,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC;IACpC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAC1C,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAClC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IAEhC,WAAW;IACX,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAC5C,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAClC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC;IACtC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC;IAC7C,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAC9C,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;IACpC,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;IAC3C,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAExC,WAAW;IACX,sBAAsB,EAAE,UAAU;IAClC,qBAAqB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAC1C,oBAAoB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IACzC,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IACvC,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IACxC,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IACzC,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IACzC,yBAAyB,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IAC/C,qBAAqB,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;IAEzC,MAAM;IACN,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;IACjC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;IACtC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IACpC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;IAEnC,OAAO;IACP,MAAM,EAAE,UAAU;IAClB,YAAY,EAAE,UAAU;IAExB,SAAS;IACT,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IACtC,gBAAgB,EAAE,UAAU;IAE5B,SAAS;IACT,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAC7B,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC;IACxC,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IAErC,UAAU;IACV,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC;IAC5C,qBAAqB,EAAE,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC;IACvD,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC;IAC/C,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC;IACxC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IACnC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;IACjC,sBAAsB,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;IAE5C,YAAY;IACZ,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;IACtC,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;IACpC,iBAAiB,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC;IAC1C,oBAAoB,EAAE,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC;IACpD,qBAAqB,EAAE,UAAU;IACjC,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC;IAElD,QAAQ;IACR,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IACnC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;IAClC,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC;IAE9C,SAAS;IACT,QAAQ,EAAE,UAAU;IAEpB,UAAU;IACV,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IACnC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;IACnC,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;CAC/C,CAAC;AAEF,kBAAkB,GAAG,IAAI,CAAC"}
|
|
1
|
+
{"version":3,"file":"style.js","sourceRoot":"","sources":["../../src/core/style.ts"],"names":[],"mappings":"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"}
|
package/dist/core/text.d.ts
CHANGED
|
@@ -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
|
|
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;
|
package/dist/core/text.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/core/text.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,KAAK,EAAgC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/core/text.ts"],"names":[],"mappings":"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"}
|