@promptctl/rich-js 0.8.0 → 0.10.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 +68 -1
- package/dist/core/box.d.ts +93 -39
- package/dist/core/box.d.ts.map +1 -1
- package/dist/core/box.js +348 -490
- package/dist/core/box.js.map +1 -1
- package/dist/core/color.d.ts.map +1 -1
- package/dist/core/color.js +22 -8
- package/dist/core/color.js.map +1 -1
- package/dist/core/console.d.ts +2 -4
- package/dist/core/console.d.ts.map +1 -1
- package/dist/core/console.js +35 -24
- package/dist/core/console.js.map +1 -1
- package/dist/core/highlighter.d.ts +2 -1
- package/dist/core/highlighter.d.ts.map +1 -1
- package/dist/core/highlighter.js +28 -6
- package/dist/core/highlighter.js.map +1 -1
- package/dist/{renderables → core}/json.d.ts +8 -3
- package/dist/core/json.d.ts.map +1 -0
- package/dist/{renderables → core}/json.js +7 -2
- package/dist/core/json.js.map +1 -0
- package/dist/core/markup.d.ts +6 -7
- package/dist/core/markup.d.ts.map +1 -1
- package/dist/core/markup.js +124 -32
- package/dist/core/markup.js.map +1 -1
- package/dist/core/pretty.d.ts +56 -21
- package/dist/core/pretty.d.ts.map +1 -1
- package/dist/core/pretty.js +210 -116
- package/dist/core/pretty.js.map +1 -1
- package/dist/core/protocol.d.ts +16 -0
- package/dist/core/protocol.d.ts.map +1 -1
- package/dist/core/protocol.js +13 -0
- package/dist/core/protocol.js.map +1 -1
- package/dist/core/segment.d.ts +5 -0
- package/dist/core/segment.d.ts.map +1 -1
- package/dist/core/segment.js +9 -3
- package/dist/core/segment.js.map +1 -1
- package/dist/core/strip.d.ts +9 -5
- package/dist/core/strip.d.ts.map +1 -1
- package/dist/core/strip.js +39 -41
- package/dist/core/strip.js.map +1 -1
- package/dist/core/style.d.ts +19 -0
- package/dist/core/style.d.ts.map +1 -1
- package/dist/core/style.js +46 -38
- package/dist/core/style.js.map +1 -1
- package/dist/core/text.d.ts +102 -4
- package/dist/core/text.d.ts.map +1 -1
- package/dist/core/text.js +322 -184
- package/dist/core/text.js.map +1 -1
- package/dist/core/wrap.d.ts +42 -0
- package/dist/core/wrap.d.ts.map +1 -0
- package/dist/core/wrap.js +128 -0
- package/dist/core/wrap.js.map +1 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/renderables/markdown.d.ts +1 -1
- package/dist/renderables/markdown.d.ts.map +1 -1
- package/dist/renderables/markdown.js +7 -14
- package/dist/renderables/markdown.js.map +1 -1
- package/dist/renderables/padding.d.ts +1 -1
- package/dist/renderables/padding.d.ts.map +1 -1
- package/dist/renderables/padding.js +5 -11
- package/dist/renderables/padding.js.map +1 -1
- package/dist/renderables/panel.d.ts +4 -4
- package/dist/renderables/panel.d.ts.map +1 -1
- package/dist/renderables/panel.js +39 -39
- package/dist/renderables/panel.js.map +1 -1
- package/dist/renderables/progress.d.ts +3 -3
- package/dist/renderables/progress.d.ts.map +1 -1
- package/dist/renderables/progress.js +11 -9
- package/dist/renderables/progress.js.map +1 -1
- package/dist/renderables/progressBar.d.ts +3 -3
- package/dist/renderables/progressBar.d.ts.map +1 -1
- package/dist/renderables/progressBar.js +9 -15
- package/dist/renderables/progressBar.js.map +1 -1
- package/dist/renderables/prompt.js +1 -1
- package/dist/renderables/prompt.js.map +1 -1
- package/dist/renderables/rule.d.ts +1 -1
- package/dist/renderables/rule.d.ts.map +1 -1
- package/dist/renderables/rule.js +5 -10
- package/dist/renderables/rule.js.map +1 -1
- package/dist/renderables/spinner.d.ts +2 -2
- package/dist/renderables/spinner.d.ts.map +1 -1
- package/dist/renderables/spinner.js +6 -11
- package/dist/renderables/spinner.js.map +1 -1
- package/dist/renderables/status.d.ts.map +1 -1
- package/dist/renderables/status.js +5 -11
- package/dist/renderables/status.js.map +1 -1
- package/dist/renderables/table.d.ts +54 -16
- package/dist/renderables/table.d.ts.map +1 -1
- package/dist/renderables/table.js +239 -99
- package/dist/renderables/table.js.map +1 -1
- package/dist/renderables/traceback.d.ts +1 -1
- package/dist/renderables/traceback.d.ts.map +1 -1
- package/dist/renderables/traceback.js +9 -8
- package/dist/renderables/traceback.js.map +1 -1
- package/dist/renderables/tree.d.ts +2 -2
- package/dist/renderables/tree.d.ts.map +1 -1
- package/dist/renderables/tree.js +16 -22
- package/dist/renderables/tree.js.map +1 -1
- package/dist/template-bindings/helpers.d.ts.map +1 -1
- package/dist/template-bindings/helpers.js +19 -1
- package/dist/template-bindings/helpers.js.map +1 -1
- package/dist/widgets/button.d.ts.map +1 -1
- package/dist/widgets/button.js +4 -5
- package/dist/widgets/button.js.map +1 -1
- package/dist/widgets/checkbox.d.ts.map +1 -1
- package/dist/widgets/checkbox.js +3 -4
- package/dist/widgets/checkbox.js.map +1 -1
- package/dist/widgets/dropdown.d.ts.map +1 -1
- package/dist/widgets/dropdown.js +4 -5
- package/dist/widgets/dropdown.js.map +1 -1
- package/dist/widgets/focus-manager.d.ts +0 -1
- package/dist/widgets/focus-manager.d.ts.map +1 -1
- package/dist/widgets/focus-manager.js +3 -7
- package/dist/widgets/focus-manager.js.map +1 -1
- package/dist/widgets/screen.d.ts.map +1 -1
- package/dist/widgets/screen.js +2 -4
- package/dist/widgets/screen.js.map +1 -1
- package/dist/widgets/slider.d.ts.map +1 -1
- package/dist/widgets/slider.js +7 -8
- package/dist/widgets/slider.js.map +1 -1
- package/dist/widgets/text-input.d.ts.map +1 -1
- package/dist/widgets/text-input.js +5 -6
- package/dist/widgets/text-input.js.map +1 -1
- package/dist/widgets/toggle.d.ts.map +1 -1
- package/dist/widgets/toggle.js +4 -5
- package/dist/widgets/toggle.js.map +1 -1
- package/dist/widgets/widget-base.d.ts +3 -3
- package/dist/widgets/widget-base.d.ts.map +1 -1
- package/dist/widgets/widget-base.js +4 -6
- package/dist/widgets/widget-base.js.map +1 -1
- package/package.json +26 -10
- package/dist/renderables/json.d.ts.map +0 -1
- package/dist/renderables/json.js.map +0 -1
- package/dist/renderables/pretty.d.ts +0 -29
- package/dist/renderables/pretty.d.ts.map +0 -1
- package/dist/renderables/pretty.js +0 -141
- package/dist/renderables/pretty.js.map +0 -1
- package/dist/themes/paletteResolver.d.ts +0 -35
- package/dist/themes/paletteResolver.d.ts.map +0 -1
- package/dist/themes/paletteResolver.js +0 -88
- package/dist/themes/paletteResolver.js.map +0 -1
- package/dist/widgets/host-stream.d.ts +0 -31
- package/dist/widgets/host-stream.d.ts.map +0 -1
- package/dist/widgets/host-stream.js +0 -36
- package/dist/widgets/host-stream.js.map +0 -1
- package/dist/widgets/terminal-host.d.ts +0 -138
- package/dist/widgets/terminal-host.d.ts.map +0 -1
- package/dist/widgets/terminal-host.js +0 -127
- package/dist/widgets/terminal-host.js.map +0 -1
package/dist/core/text.d.ts
CHANGED
|
@@ -39,8 +39,9 @@ export declare class RichText implements Renderable, Measurable {
|
|
|
39
39
|
get length(): number;
|
|
40
40
|
get cellLength(): number;
|
|
41
41
|
get hasContent(): boolean;
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
/** The base style every span layers over: a `Style`, or a name resolved at render. */
|
|
43
|
+
get style(): string | Style;
|
|
44
|
+
set style(value: string | Style);
|
|
44
45
|
get justify(): "left" | "center" | "right" | "full" | undefined;
|
|
45
46
|
set justify(value: "left" | "center" | "right" | "full" | undefined);
|
|
46
47
|
get overflow(): "fold" | "crop" | "ellipsis" | undefined;
|
|
@@ -50,6 +51,12 @@ export declare class RichText implements Renderable, Measurable {
|
|
|
50
51
|
get noWrap(): boolean;
|
|
51
52
|
set noWrap(value: boolean);
|
|
52
53
|
get spans(): readonly Span[];
|
|
54
|
+
/**
|
|
55
|
+
* This text's own style, spans aside, as the render drawing it resolves it.
|
|
56
|
+
* A name the render's theme does not define resolves to no style, because
|
|
57
|
+
* text forgives a missing name.
|
|
58
|
+
*/
|
|
59
|
+
resolvedStyle(options: RenderOptions): Style;
|
|
53
60
|
/**
|
|
54
61
|
* The style of the cell-column at the named edge — base style merged with
|
|
55
62
|
* any spans covering the leftmost (side="left") or rightmost (side="right")
|
|
@@ -66,12 +73,21 @@ export declare class RichText implements Renderable, Measurable {
|
|
|
66
73
|
* text, the last character occupies the rightmost cell column — the bg
|
|
67
74
|
* of that character covers both columns, so character-index lookup gives
|
|
68
75
|
* the correct edge color.
|
|
76
|
+
*
|
|
77
|
+
* Takes the render's options because the edge is reported as it will be
|
|
78
|
+
* drawn, and a style name draws as whatever the render's theme says.
|
|
69
79
|
*/
|
|
70
|
-
edgeStyle(side: "left" | "right"): Style;
|
|
80
|
+
edgeStyle(side: "left" | "right", options: RenderOptions): Style;
|
|
71
81
|
append(content: string | RichText, style?: string | Style): this;
|
|
72
82
|
contains(needle: string | RichText): boolean;
|
|
73
83
|
at(index: number): RichText;
|
|
74
84
|
slice(start?: number, end?: number): RichText;
|
|
85
|
+
/**
|
|
86
|
+
* The one way a span enters this text. [LAW:single-enforcer] An empty style
|
|
87
|
+
* adds nothing, as the reference's `if style:` has it, and every other style
|
|
88
|
+
* is admitted as given.
|
|
89
|
+
*/
|
|
90
|
+
private _addSpan;
|
|
75
91
|
stylize(style: string | Style, start?: number, end?: number): this;
|
|
76
92
|
highlightRegex(pattern: RegExp, style?: string | Style): number;
|
|
77
93
|
highlightWords(words: string[], style: string | Style, options?: {
|
|
@@ -157,8 +173,90 @@ export declare class RichText implements Renderable, Measurable {
|
|
|
157
173
|
maximum: number;
|
|
158
174
|
};
|
|
159
175
|
private _expandTabs;
|
|
176
|
+
/**
|
|
177
|
+
* The rendered text cut at every span edge, each piece carrying the base
|
|
178
|
+
* style plus every span covering it.
|
|
179
|
+
*
|
|
180
|
+
* Walked span-first rather than piece-first, and that direction is the whole
|
|
181
|
+
* performance argument. The pieces are cut at the span edges themselves, so
|
|
182
|
+
* a span covers a piece exactly when it covers the piece's first character —
|
|
183
|
+
* which makes each span's run of pieces a contiguous range it can be written
|
|
184
|
+
* into once, instead of a question every piece asks of every span. The
|
|
185
|
+
* piece-first form charged `spans x pieces`, and the pieces are themselves
|
|
186
|
+
* cut by the spans, so anything styling densely paid the square in ordinary
|
|
187
|
+
* use: 8,000 one-character spans took 211ms where 1,000 took 3.2ms. Every
|
|
188
|
+
* `Highlighter` over a large value reaches that, and so does `Pretty`, whose
|
|
189
|
+
* indent guides emit a span per indent character.
|
|
190
|
+
*
|
|
191
|
+
* Span-first is also what keeps the composition honest, for free. `Style.add`
|
|
192
|
+
* is order-dependent and the last writer wins, so the pieces have to fold
|
|
193
|
+
* their styles in `_spans` order — which iterating `_spans` is, and which a
|
|
194
|
+
* sweep ordered by position would have had to reconstruct.
|
|
195
|
+
*
|
|
196
|
+
* [LAW:dataflow-not-control-flow] A span covering nothing — empty, reversed,
|
|
197
|
+
* or entirely past the text — still cuts the text where its edges land, as it
|
|
198
|
+
* always did, and then folds into no piece at all: its range comes out empty
|
|
199
|
+
* and no case handles it.
|
|
200
|
+
*/
|
|
160
201
|
private _buildSegments;
|
|
202
|
+
/**
|
|
203
|
+
* The pieces one logical line wrapped into, each placed in a canvas
|
|
204
|
+
* `maxWidth` wide, as Rich's `Lines.justify` places them — pinned block for
|
|
205
|
+
* block against the reference in `test/core/text-justify.test.ts`.
|
|
206
|
+
*
|
|
207
|
+
* It is handed the whole wrapped line because `full` is the one mode a
|
|
208
|
+
* piece cannot answer alone: the reference leaves a paragraph's last line
|
|
209
|
+
* ragged, so where the piece sits decides its answer where the other three
|
|
210
|
+
* modes need only the piece itself. The set that decides "last" is this one
|
|
211
|
+
* and not the whole render — `Text.wrap` calls `Lines.justify` once per
|
|
212
|
+
* *logical* line — and `Segment.divide` already handed it over whole.
|
|
213
|
+
*/
|
|
214
|
+
private _justifyLines;
|
|
215
|
+
/**
|
|
216
|
+
* One line placed in a canvas `maxWidth` wide.
|
|
217
|
+
*
|
|
218
|
+
* Centre and right align on the line's *content*. The whitespace a wrap
|
|
219
|
+
* leaves on the end of the line it closed is the break's own padding, not
|
|
220
|
+
* text, and aligning around it pushes the text half a gap off true — a
|
|
221
|
+
* centred title that wraps drifts left on every line that happens to end in
|
|
222
|
+
* a space. Left keeps that whitespace, because there it is already on the
|
|
223
|
+
* side the padding goes.
|
|
224
|
+
*
|
|
225
|
+
* `undefined` is not `"left"`: it is Rich's `"default"`, which places the
|
|
226
|
+
* line without padding it at all. That distinction is what lets a soft-wrapped
|
|
227
|
+
* `Console.print` leave its lines at their natural width.
|
|
228
|
+
*/
|
|
161
229
|
private _justifyLine;
|
|
162
|
-
|
|
230
|
+
/**
|
|
231
|
+
* One line of a wrapped paragraph, its gaps widened until it fills the
|
|
232
|
+
* canvas — what `justify: "full"` promises, and what the reference's
|
|
233
|
+
* `Lines.justify` does to every line of a paragraph but the last.
|
|
234
|
+
*
|
|
235
|
+
* Slack goes in a cell at a time, starting at the rightmost gap and walking
|
|
236
|
+
* left, round and round until the line is full. That order is the
|
|
237
|
+
* reference's own, and what it decides is where an odd cell lands when the
|
|
238
|
+
* slack will not divide evenly: the right-hand gaps take it.
|
|
239
|
+
*
|
|
240
|
+
* The words come from the line's *text* split on a single space, with the
|
|
241
|
+
* blank a trailing separator leaves behind dropped — `Text.split` and
|
|
242
|
+
* `String.prototype.split` agree on that list, empty words and all. Two
|
|
243
|
+
* consequences read as bugs until you know whose they are: a run of n
|
|
244
|
+
* spaces is n gaps rather than one, so spacing an author widened stretches
|
|
245
|
+
* instead of collapsing, and the whitespace a wrap left hanging is a gap
|
|
246
|
+
* like the rest, which is why a filled line does not keep it. Both are
|
|
247
|
+
* pinned in `text-justify.golden.txt`, by the `uneven` and `sentence`
|
|
248
|
+
* blocks respectively.
|
|
249
|
+
*/
|
|
250
|
+
private _fillLine;
|
|
251
|
+
/**
|
|
252
|
+
* One wrapped line cut to the canvas.
|
|
253
|
+
*
|
|
254
|
+
* Everything reaching here already survived wrapping, so the only text still
|
|
255
|
+
* too wide is text no break could help: a word longer than the canvas under
|
|
256
|
+
* a non-folding overflow method, a glyph wider than the budget, or a canvas
|
|
257
|
+
* with no cells at all. That is what makes the overflow method a last
|
|
258
|
+
* resort rather than the first thing a long cell meets.
|
|
259
|
+
*/
|
|
260
|
+
private _fitLine;
|
|
163
261
|
}
|
|
164
262
|
//# sourceMappingURL=text.d.ts.map
|
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;
|
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../src/core/text.ts"],"names":[],"mappings":"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"}
|