@jrichman/ink 6.5.0 → 6.5.1-beta.1

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 (125) hide show
  1. package/build/components/App.js +0 -3
  2. package/build/components/App.js.map +1 -1
  3. package/build/components/AppContext.js +0 -1
  4. package/build/components/AppContext.js.map +1 -1
  5. package/build/components/FocusContext.js +0 -1
  6. package/build/components/FocusContext.js.map +1 -1
  7. package/build/components/Static.js +2 -2
  8. package/build/components/Static.js.map +1 -1
  9. package/build/components/StaticRender.js +16 -1
  10. package/build/components/StaticRender.js.map +1 -1
  11. package/build/components/StderrContext.js +0 -1
  12. package/build/components/StderrContext.js.map +1 -1
  13. package/build/components/StdinContext.js +0 -3
  14. package/build/components/StdinContext.js.map +1 -1
  15. package/build/components/StdoutContext.js +0 -1
  16. package/build/components/StdoutContext.js.map +1 -1
  17. package/build/data-limited-lru-map.d.ts +1 -0
  18. package/build/data-limited-lru-map.js +4 -0
  19. package/build/data-limited-lru-map.js.map +1 -1
  20. package/build/devtools.js +0 -1
  21. package/build/devtools.js.map +1 -1
  22. package/build/dom.d.ts +7 -5
  23. package/build/dom.js +6 -2
  24. package/build/dom.js.map +1 -1
  25. package/build/hooks/use-input.js +0 -1
  26. package/build/hooks/use-input.js.map +1 -1
  27. package/build/index.d.ts +1 -1
  28. package/build/ink.d.ts +3 -1
  29. package/build/ink.js +12 -0
  30. package/build/ink.js.map +1 -1
  31. package/build/log-update.d.ts +1 -1
  32. package/build/log-update.js +3 -2
  33. package/build/log-update.js.map +1 -1
  34. package/build/measure-element.js +5 -5
  35. package/build/measure-element.js.map +1 -1
  36. package/build/measure-text.d.ts +3 -1
  37. package/build/measure-text.js +39 -25
  38. package/build/measure-text.js.map +1 -1
  39. package/build/output.d.ts +13 -6
  40. package/build/output.js +46 -54
  41. package/build/output.js.map +1 -1
  42. package/build/reconciler.js +23 -7
  43. package/build/reconciler.js.map +1 -1
  44. package/build/render-cached.d.ts +2 -1
  45. package/build/render-cached.js +3 -3
  46. package/build/render-cached.js.map +1 -1
  47. package/build/render-container.d.ts +2 -1
  48. package/build/render-container.js +4 -1
  49. package/build/render-container.js.map +1 -1
  50. package/build/render-node-to-output.d.ts +3 -1
  51. package/build/render-node-to-output.js +10 -2
  52. package/build/render-node-to-output.js.map +1 -1
  53. package/build/render-scrollbar.d.ts +1 -1
  54. package/build/render-scrollbar.js +4 -6
  55. package/build/render-scrollbar.js.map +1 -1
  56. package/build/render-sticky.d.ts +5 -3
  57. package/build/render-sticky.js +4 -1
  58. package/build/render-sticky.js.map +1 -1
  59. package/build/render-text-node.d.ts +2 -1
  60. package/build/render-text-node.js +4 -8
  61. package/build/render-text-node.js.map +1 -1
  62. package/build/render-worker.d.ts +25 -0
  63. package/build/render-worker.js +370 -0
  64. package/build/render-worker.js.map +1 -0
  65. package/build/render.d.ts +3 -1
  66. package/build/render.js.map +1 -1
  67. package/build/renderer.d.ts +2 -1
  68. package/build/renderer.js +7 -3
  69. package/build/renderer.js.map +1 -1
  70. package/build/replay.d.ts +1 -2
  71. package/build/replay.js +29 -27
  72. package/build/replay.js.map +1 -1
  73. package/build/selection.d.ts +1 -1
  74. package/build/selection.js +7 -23
  75. package/build/selection.js.map +1 -1
  76. package/build/serialization.d.ts +5 -5
  77. package/build/serialization.js +59 -73
  78. package/build/serialization.js.map +1 -1
  79. package/build/styled-lines.d.ts +29 -0
  80. package/build/styled-lines.js +110 -0
  81. package/build/styled-lines.js.map +1 -0
  82. package/build/styles.js.map +1 -1
  83. package/build/terminal-buffer.d.ts +6 -2
  84. package/build/terminal-buffer.js +47 -10
  85. package/build/terminal-buffer.js.map +1 -1
  86. package/build/terminal-writer.d.ts +69 -0
  87. package/build/terminal-writer.js +546 -0
  88. package/build/terminal-writer.js.map +1 -0
  89. package/build/text-wrap.d.ts +1 -1
  90. package/build/text-wrap.js +10 -13
  91. package/build/text-wrap.js.map +1 -1
  92. package/build/tokenize.d.ts +77 -0
  93. package/build/tokenize.js +520 -0
  94. package/build/tokenize.js.map +1 -0
  95. package/build/web/ansi-to-css.d.ts +16 -0
  96. package/build/web/ansi-to-css.js +147 -0
  97. package/build/web/ansi-to-css.js.map +1 -0
  98. package/build/web/client.d.ts +51 -0
  99. package/build/web/client.js +315 -0
  100. package/build/web/client.js.map +1 -0
  101. package/build/web/server.d.ts +1 -0
  102. package/build/web/server.js +179 -0
  103. package/build/web/server.js.map +1 -0
  104. package/build/worker/canvas.d.ts +1 -1
  105. package/build/worker/canvas.js +2 -6
  106. package/build/worker/canvas.js.map +1 -1
  107. package/build/worker/compositor.js +15 -13
  108. package/build/worker/compositor.js.map +1 -1
  109. package/build/worker/dump-replay.d.ts +1 -0
  110. package/build/worker/dump-replay.js +15 -0
  111. package/build/worker/dump-replay.js.map +1 -0
  112. package/build/worker/render-worker.js +27 -13
  113. package/build/worker/render-worker.js.map +1 -1
  114. package/build/worker/replay.d.ts +55 -0
  115. package/build/worker/replay.js +133 -0
  116. package/build/worker/replay.js.map +1 -0
  117. package/build/worker/scene-manager.js +16 -7
  118. package/build/worker/scene-manager.js.map +1 -1
  119. package/build/worker/terminal-writer.d.ts +3 -3
  120. package/build/worker/terminal-writer.js +36 -20
  121. package/build/worker/terminal-writer.js.map +1 -1
  122. package/build/wrap-text.d.ts +6 -0
  123. package/build/wrap-text.js +120 -0
  124. package/build/wrap-text.js.map +1 -0
  125. package/package.json +16 -5
@@ -1 +1 @@
1
- {"version":3,"file":"text-wrap.js","sourceRoot":"","sources":["../src/text-wrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-wrap.js","sourceRoot":"","sources":["../src/text-wrap.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ export declare const CC_BEL: number;
2
+ export declare const CC_ESC: number;
3
+ export declare const CC_BACKSLASH: number;
4
+ export declare const CC_CSI: number;
5
+ export declare const CC_OSC: number;
6
+ export declare const CC_C1_ST: number;
7
+ export declare const CC_0: number;
8
+ export declare const CC_9: number;
9
+ export declare const CC_SEMI: number;
10
+ export declare const CC_M: number;
11
+ export declare const ESCAPES: Set<number>;
12
+ export declare const linkCodePrefix = "\u001B]8;";
13
+ export declare const linkCodePrefixCharCodes: number[];
14
+ export declare const linkCodeSuffix = "\u0007";
15
+ export declare const linkEndCode = "\u001B]8;;\u0007";
16
+ export declare const linkEndCodeST = "\u001B]8;;\u001B\\";
17
+ export declare const linkEndCodeC1ST = "\u001B]8;;\u009C";
18
+ export declare const endCodesSet: Set<string>;
19
+ export declare function getEndCode(code: string): string;
20
+ export declare function isIntensityCode(code: AnsiCode): boolean;
21
+ export type AnsiCode = {
22
+ type: 'ansi';
23
+ code: string;
24
+ endCode: string;
25
+ };
26
+ export type ControlCode = {
27
+ type: 'control';
28
+ code: string;
29
+ };
30
+ export type Char = {
31
+ type: 'char';
32
+ value: string;
33
+ fullWidth: boolean;
34
+ };
35
+ export type Token = AnsiCode | ControlCode | Char;
36
+ export declare function tokenize(str: string, endChar?: number): Token[];
37
+ export declare const BOLD_MASK: number;
38
+ export declare const DIM_MASK: number;
39
+ export declare const ITALIC_MASK: number;
40
+ export declare const UNDERLINE_MASK: number;
41
+ export declare const STRIKETHROUGH_MASK: number;
42
+ export declare const INVERSE_MASK: number;
43
+ export declare const HIDDEN_MASK: number;
44
+ export declare const FULL_WIDTH_MASK: number;
45
+ export declare class StyledChar {
46
+ private readonly _value;
47
+ private _formatFlags;
48
+ private readonly _fgColor?;
49
+ private _bgColor?;
50
+ private readonly _link?;
51
+ constructor(_value: string, _formatFlags: number, _fgColor?: string | undefined, _bgColor?: string | undefined, _link?: string | undefined);
52
+ getValue(): string;
53
+ getFullWidth(): boolean;
54
+ getForegroundColor(): string | undefined;
55
+ getBackgroundColor(): string | undefined;
56
+ getBold(): boolean;
57
+ getDim(): boolean;
58
+ getItalic(): boolean;
59
+ getUnderline(): boolean;
60
+ getStrikethrough(): boolean;
61
+ getInverse(): boolean;
62
+ getHidden(): boolean;
63
+ getLink(): string | undefined;
64
+ get formatFlags(): number;
65
+ get fgColor(): string | undefined;
66
+ get bgColor(): string | undefined;
67
+ get link(): string | undefined;
68
+ setFormatFlag(mask: number): void;
69
+ clearFormatFlag(mask: number): void;
70
+ setBackgroundColor(color: string | undefined): void;
71
+ hasStyles(): boolean;
72
+ copyWith(overrides: {
73
+ value?: string;
74
+ }): StyledChar;
75
+ }
76
+ export declare function styledCharsFromTokens(tokens: Token[]): StyledChar[];
77
+ export declare function styledCharsToString(chars: StyledChar[]): string;
@@ -0,0 +1,520 @@
1
+ import isFullwidthCodePoint from 'is-fullwidth-code-point';
2
+ import ansiStyles from 'ansi-styles';
3
+ // --- consts.ts ---
4
+ const BEL = '\u0007';
5
+ const ESC = '\u001B';
6
+ const BACKSLASH = '\\';
7
+ const CSI = '[';
8
+ const OSC = ']';
9
+ const C1_ST = '\u009C';
10
+ export const CC_BEL = BEL.charCodeAt(0);
11
+ export const CC_ESC = ESC.charCodeAt(0);
12
+ export const CC_BACKSLASH = BACKSLASH.charCodeAt(0);
13
+ export const CC_CSI = CSI.charCodeAt(0);
14
+ export const CC_OSC = OSC.charCodeAt(0);
15
+ export const CC_C1_ST = C1_ST.charCodeAt(0);
16
+ export const CC_0 = '0'.charCodeAt(0);
17
+ export const CC_9 = '9'.charCodeAt(0);
18
+ export const CC_SEMI = ';'.charCodeAt(0);
19
+ export const CC_M = 'm'.charCodeAt(0);
20
+ export const ESCAPES = new Set([CC_ESC, 0x9b]);
21
+ export const linkCodePrefix = `${ESC}${OSC}8;`;
22
+ export const linkCodePrefixCharCodes = [...linkCodePrefix].map(char => char.charCodeAt(0));
23
+ export const linkCodeSuffix = BEL;
24
+ export const linkEndCode = `${ESC}${OSC}8;;${BEL}`;
25
+ export const linkEndCodeST = `${ESC}${OSC}8;;${ESC}${BACKSLASH}`;
26
+ export const linkEndCodeC1ST = `${ESC}${OSC}8;;${C1_ST}`;
27
+ // --- ansiCodes.ts ---
28
+ export const endCodesSet = new Set();
29
+ const endCodesMap = new Map();
30
+ for (const [start, end] of ansiStyles.codes) {
31
+ endCodesSet.add(ansiStyles.color.ansi(end));
32
+ endCodesMap.set(ansiStyles.color.ansi(start), ansiStyles.color.ansi(end));
33
+ }
34
+ export function getEndCode(code) {
35
+ if (endCodesSet.has(code))
36
+ return code;
37
+ if (endCodesMap.has(code))
38
+ return endCodesMap.get(code);
39
+ if (code.startsWith(linkCodePrefix)) {
40
+ if (code.endsWith('\u001B\\'))
41
+ return linkEndCodeST;
42
+ if (code.endsWith('\u009C'))
43
+ return linkEndCodeC1ST;
44
+ return linkEndCode;
45
+ }
46
+ code = code.slice(2);
47
+ if (code.startsWith('38')) {
48
+ return ansiStyles.color.close;
49
+ }
50
+ if (code.startsWith('48')) {
51
+ return ansiStyles.bgColor.close;
52
+ }
53
+ const ret = ansiStyles.codes.get(Number.parseInt(code, 10));
54
+ if (ret) {
55
+ return ansiStyles.color.ansi(ret);
56
+ }
57
+ return ansiStyles.reset.open;
58
+ }
59
+ export function isIntensityCode(code) {
60
+ return (code.code === ansiStyles.bold.open || code.code === ansiStyles.dim.open);
61
+ }
62
+ function findOSCTerminatorIndex(string, startIndex) {
63
+ for (let i = startIndex; i < string.length; i++) {
64
+ const ch = string.charCodeAt(i);
65
+ if (ch === CC_BEL)
66
+ return i;
67
+ if (ch === CC_C1_ST)
68
+ return i;
69
+ if (ch === CC_ESC &&
70
+ i + 1 < string.length &&
71
+ string.charCodeAt(i + 1) === CC_BACKSLASH) {
72
+ return i + 1;
73
+ }
74
+ }
75
+ return -1;
76
+ }
77
+ function parseLinkCode(string, offset) {
78
+ string = string.slice(offset);
79
+ for (let index = 1; index < linkCodePrefixCharCodes.length; index++) {
80
+ if (string.charCodeAt(index) !== linkCodePrefixCharCodes[index]) {
81
+ return undefined;
82
+ }
83
+ }
84
+ const paramsEndIndex = string.indexOf(';', linkCodePrefix.length);
85
+ if (paramsEndIndex === -1)
86
+ return undefined;
87
+ const endIndex = findOSCTerminatorIndex(string, paramsEndIndex + 1);
88
+ if (endIndex === -1)
89
+ return undefined;
90
+ return string.slice(0, endIndex + 1);
91
+ }
92
+ function parseOSCSequence(string, offset) {
93
+ string = string.slice(offset);
94
+ const endIndex = findOSCTerminatorIndex(string, 2);
95
+ if (endIndex === -1)
96
+ return undefined;
97
+ return string.slice(0, endIndex + 1);
98
+ }
99
+ function findSGRSequenceEndIndex(str) {
100
+ for (let index = 2; index < str.length; index++) {
101
+ const charCode = str.charCodeAt(index);
102
+ if (charCode === CC_M)
103
+ return index;
104
+ if (charCode === CC_SEMI)
105
+ continue;
106
+ if (charCode >= CC_0 && charCode <= CC_9)
107
+ continue;
108
+ break;
109
+ }
110
+ return -1;
111
+ }
112
+ function parseSGRSequence(string, offset) {
113
+ string = string.slice(offset);
114
+ const endIndex = findSGRSequenceEndIndex(string);
115
+ if (endIndex === -1)
116
+ return;
117
+ return string.slice(0, endIndex + 1);
118
+ }
119
+ function splitCompoundSGRSequences(code) {
120
+ if (!code.includes(';')) {
121
+ return [code];
122
+ }
123
+ const codeParts = code.slice(2, -1).split(';');
124
+ const ret = [];
125
+ for (let i = 0; i < codeParts.length; i++) {
126
+ const rawCode = codeParts[i];
127
+ if (rawCode === '38' || rawCode === '48') {
128
+ if (i + 2 < codeParts.length && codeParts[i + 1] === '5') {
129
+ ret.push(codeParts.slice(i, i + 3).join(';'));
130
+ i += 2;
131
+ continue;
132
+ }
133
+ else if (i + 4 < codeParts.length && codeParts[i + 1] === '2') {
134
+ ret.push(codeParts.slice(i, i + 5).join(';'));
135
+ i += 4;
136
+ continue;
137
+ }
138
+ }
139
+ ret.push(rawCode);
140
+ }
141
+ return ret.map(part => `\u001B[${part}m`);
142
+ }
143
+ export function tokenize(str, endChar = Number.POSITIVE_INFINITY) {
144
+ const ret = [];
145
+ let visible = 0;
146
+ let i = 0;
147
+ while (i < str.length) {
148
+ // Determine the next code point / surrogate pair string
149
+ const codePoint = str.codePointAt(i);
150
+ // If it's a surrogate pair, it will be 2 characters long
151
+ const charLength = codePoint > 0xff_ff ? 2 : 1;
152
+ const charStr = str.slice(i, i + charLength);
153
+ if (ESCAPES.has(codePoint)) {
154
+ let code;
155
+ const nextCodePoint = str.codePointAt(i + 1);
156
+ if (nextCodePoint === CC_OSC) {
157
+ code = parseLinkCode(str, i);
158
+ if (code) {
159
+ ret.push({
160
+ type: 'ansi',
161
+ code,
162
+ endCode: getEndCode(code),
163
+ });
164
+ }
165
+ else {
166
+ code = parseOSCSequence(str, i);
167
+ if (code) {
168
+ ret.push({
169
+ type: 'control',
170
+ code,
171
+ });
172
+ }
173
+ }
174
+ }
175
+ else if (nextCodePoint === CC_CSI) {
176
+ code = parseSGRSequence(str, i);
177
+ if (code) {
178
+ const codes = splitCompoundSGRSequences(code);
179
+ for (const individualCode of codes) {
180
+ ret.push({
181
+ type: 'ansi',
182
+ code: individualCode,
183
+ endCode: getEndCode(individualCode),
184
+ });
185
+ }
186
+ }
187
+ }
188
+ if (code) {
189
+ i += code.length;
190
+ continue;
191
+ }
192
+ }
193
+ // Variation Selector 16 forces emoji presentation (2 columns wide)
194
+ const isVariationSelector = charStr.includes('\uFE0F');
195
+ // Regional indicator pairs form flag emoji (2 columns wide)
196
+ const isRegionalIndicator = codePoint >= 0x1_f1_e6 && codePoint <= 0x1_f1_ff;
197
+ const fullWidth = isVariationSelector ||
198
+ isRegionalIndicator ||
199
+ isFullwidthCodePoint(codePoint);
200
+ ret.push({
201
+ type: 'char',
202
+ value: charStr,
203
+ fullWidth,
204
+ });
205
+ visible += fullWidth ? 2 : 1;
206
+ if (visible >= endChar) {
207
+ break;
208
+ }
209
+ i += charLength;
210
+ }
211
+ return ret;
212
+ }
213
+ // --- StyledChar.ts ---
214
+ export const BOLD_MASK = Math.trunc(1);
215
+ export const DIM_MASK = 1 << 1;
216
+ export const ITALIC_MASK = 1 << 2;
217
+ export const UNDERLINE_MASK = 1 << 3;
218
+ export const STRIKETHROUGH_MASK = 1 << 4;
219
+ export const INVERSE_MASK = 1 << 5;
220
+ export const HIDDEN_MASK = 1 << 6;
221
+ export const FULL_WIDTH_MASK = 1 << 7;
222
+ export class StyledChar {
223
+ _value;
224
+ _formatFlags;
225
+ _fgColor;
226
+ _bgColor;
227
+ _link;
228
+ constructor(_value, _formatFlags, _fgColor, _bgColor, _link) {
229
+ this._value = _value;
230
+ this._formatFlags = _formatFlags;
231
+ this._fgColor = _fgColor;
232
+ this._bgColor = _bgColor;
233
+ this._link = _link;
234
+ }
235
+ getValue() {
236
+ return this._value;
237
+ }
238
+ getFullWidth() {
239
+ return (this._formatFlags & FULL_WIDTH_MASK) !== 0;
240
+ }
241
+ getForegroundColor() {
242
+ return this._fgColor;
243
+ }
244
+ getBackgroundColor() {
245
+ return this._bgColor;
246
+ }
247
+ getBold() {
248
+ return (this._formatFlags & BOLD_MASK) !== 0;
249
+ }
250
+ getDim() {
251
+ return (this._formatFlags & DIM_MASK) !== 0;
252
+ }
253
+ getItalic() {
254
+ return (this._formatFlags & ITALIC_MASK) !== 0;
255
+ }
256
+ getUnderline() {
257
+ return (this._formatFlags & UNDERLINE_MASK) !== 0;
258
+ }
259
+ getStrikethrough() {
260
+ return (this._formatFlags & STRIKETHROUGH_MASK) !== 0;
261
+ }
262
+ getInverse() {
263
+ return (this._formatFlags & INVERSE_MASK) !== 0;
264
+ }
265
+ getHidden() {
266
+ return (this._formatFlags & HIDDEN_MASK) !== 0;
267
+ }
268
+ getLink() {
269
+ return this._link;
270
+ }
271
+ get formatFlags() {
272
+ return this._formatFlags;
273
+ }
274
+ get fgColor() {
275
+ return this._fgColor;
276
+ }
277
+ get bgColor() {
278
+ return this._bgColor;
279
+ }
280
+ get link() {
281
+ return this._link;
282
+ }
283
+ setFormatFlag(mask) {
284
+ this._formatFlags |= mask;
285
+ }
286
+ clearFormatFlag(mask) {
287
+ this._formatFlags &= ~mask;
288
+ }
289
+ setBackgroundColor(color) {
290
+ this._bgColor = color;
291
+ }
292
+ hasStyles() {
293
+ // If there are any formatting flags (except FULL_WIDTH) or any color/link set.
294
+ return ((this._formatFlags & ~FULL_WIDTH_MASK) !== 0 ||
295
+ this._fgColor !== undefined ||
296
+ this._bgColor !== undefined ||
297
+ this._link !== undefined);
298
+ }
299
+ copyWith(overrides) {
300
+ return new StyledChar(overrides.value ?? this._value, this._formatFlags, this._fgColor, this._bgColor, this._link);
301
+ }
302
+ }
303
+ // --- styledCharsFromTokens.ts ---
304
+ export function styledCharsFromTokens(tokens) {
305
+ const ret = [];
306
+ let formatFlags = 0;
307
+ let fgColor;
308
+ let bgColor;
309
+ let link;
310
+ for (const token of tokens) {
311
+ if (token.type === 'ansi') {
312
+ const { code } = token;
313
+ switch (code) {
314
+ case ansiStyles.reset.open: {
315
+ formatFlags = 0;
316
+ fgColor = undefined;
317
+ bgColor = undefined;
318
+ link = undefined;
319
+ break;
320
+ }
321
+ case ansiStyles.bold.open: {
322
+ formatFlags |= BOLD_MASK;
323
+ break;
324
+ }
325
+ case ansiStyles.dim.open: {
326
+ formatFlags |= DIM_MASK;
327
+ break;
328
+ }
329
+ case ansiStyles.italic.open: {
330
+ formatFlags |= ITALIC_MASK;
331
+ break;
332
+ }
333
+ case ansiStyles.underline.open: {
334
+ formatFlags |= UNDERLINE_MASK;
335
+ break;
336
+ }
337
+ case ansiStyles.strikethrough.open: {
338
+ formatFlags |= STRIKETHROUGH_MASK;
339
+ break;
340
+ }
341
+ case ansiStyles.inverse.open: {
342
+ formatFlags |= INVERSE_MASK;
343
+ break;
344
+ }
345
+ case ansiStyles.hidden.open: {
346
+ formatFlags |= HIDDEN_MASK;
347
+ break;
348
+ }
349
+ case ansiStyles.bold.close:
350
+ case ansiStyles.dim.close: {
351
+ // 22m closes both bold and dim
352
+ formatFlags &= ~BOLD_MASK;
353
+ formatFlags &= ~DIM_MASK;
354
+ break;
355
+ }
356
+ case ansiStyles.italic.close: {
357
+ formatFlags &= ~ITALIC_MASK;
358
+ break;
359
+ }
360
+ case ansiStyles.underline.close: {
361
+ formatFlags &= ~UNDERLINE_MASK;
362
+ break;
363
+ }
364
+ case ansiStyles.strikethrough.close: {
365
+ formatFlags &= ~STRIKETHROUGH_MASK;
366
+ break;
367
+ }
368
+ case ansiStyles.inverse.close: {
369
+ formatFlags &= ~INVERSE_MASK;
370
+ break;
371
+ }
372
+ case ansiStyles.hidden.close: {
373
+ formatFlags &= ~HIDDEN_MASK;
374
+ break;
375
+ }
376
+ default: {
377
+ if (code.startsWith('\u001B[38;') ||
378
+ (code >= '\u001B[30m' && code <= '\u001B[37m') ||
379
+ (code >= '\u001B[90m' && code <= '\u001B[97m')) {
380
+ fgColor = code;
381
+ }
382
+ else if (code.startsWith('\u001B[48;') ||
383
+ (code >= '\u001B[40m' && code <= '\u001B[47m') ||
384
+ (code >= '\u001B[100m' && code <= '\u001B[107m')) {
385
+ bgColor = code;
386
+ }
387
+ else if (code === ansiStyles.color.close) {
388
+ fgColor = undefined;
389
+ }
390
+ else if (code === ansiStyles.bgColor.close) {
391
+ bgColor = undefined;
392
+ }
393
+ else if (code.startsWith(linkCodePrefix)) {
394
+ link = code;
395
+ }
396
+ else if (code === linkEndCode ||
397
+ code === linkEndCodeST ||
398
+ code === linkEndCodeC1ST) {
399
+ link = undefined;
400
+ }
401
+ }
402
+ }
403
+ }
404
+ else if (token.type === 'char') {
405
+ let finalFlags = formatFlags;
406
+ if (token.fullWidth) {
407
+ finalFlags |= FULL_WIDTH_MASK;
408
+ }
409
+ ret.push(new StyledChar(token.value, finalFlags, fgColor, bgColor, link));
410
+ }
411
+ }
412
+ return ret;
413
+ }
414
+ // --- styledCharsToString.ts ---
415
+ export function styledCharsToString(chars) {
416
+ let ret = '';
417
+ let prevFormatFlags = 0;
418
+ let prevFgColor;
419
+ let prevBgColor;
420
+ let prevLink;
421
+ for (let i = 0; i < chars.length; i++) {
422
+ const char = chars[i];
423
+ const { formatFlags } = char;
424
+ const { fgColor } = char;
425
+ const { bgColor } = char;
426
+ const { link } = char;
427
+ // Fast path: if styling matches previous char, just append value.
428
+ if (formatFlags === prevFormatFlags &&
429
+ fgColor === prevFgColor &&
430
+ bgColor === prevBgColor &&
431
+ link === prevLink) {
432
+ ret += char.getValue();
433
+ continue;
434
+ }
435
+ // If bold or dim changed to false, we have to emit reset (22m), which resets both.
436
+ // So if we need to restore one, we have to emit it again.
437
+ let needResetBoldDim = false;
438
+ if ((prevFormatFlags & BOLD_MASK && !(formatFlags & BOLD_MASK)) ||
439
+ (prevFormatFlags & DIM_MASK && !(formatFlags & DIM_MASK))) {
440
+ needResetBoldDim = true;
441
+ }
442
+ if (fgColor !== prevFgColor) {
443
+ ret += fgColor === undefined ? ansiStyles.color.close : fgColor;
444
+ }
445
+ if (bgColor !== prevBgColor) {
446
+ ret += bgColor === undefined ? ansiStyles.bgColor.close : bgColor;
447
+ }
448
+ if (needResetBoldDim) {
449
+ ret += ansiStyles.bold.close; // 22m closes both
450
+ }
451
+ if ((needResetBoldDim ||
452
+ (formatFlags & BOLD_MASK && !(prevFormatFlags & BOLD_MASK))) &&
453
+ formatFlags & BOLD_MASK)
454
+ ret += ansiStyles.bold.open;
455
+ if ((needResetBoldDim ||
456
+ (formatFlags & DIM_MASK && !(prevFormatFlags & DIM_MASK))) &&
457
+ formatFlags & DIM_MASK)
458
+ ret += ansiStyles.dim.open;
459
+ if (formatFlags & ITALIC_MASK && !(prevFormatFlags & ITALIC_MASK))
460
+ ret += ansiStyles.italic.open;
461
+ if (!(formatFlags & ITALIC_MASK) && prevFormatFlags & ITALIC_MASK)
462
+ ret += ansiStyles.italic.close;
463
+ if (formatFlags & UNDERLINE_MASK && !(prevFormatFlags & UNDERLINE_MASK))
464
+ ret += ansiStyles.underline.open;
465
+ if (!(formatFlags & UNDERLINE_MASK) && prevFormatFlags & UNDERLINE_MASK)
466
+ ret += ansiStyles.underline.close;
467
+ if (formatFlags & STRIKETHROUGH_MASK &&
468
+ !(prevFormatFlags & STRIKETHROUGH_MASK))
469
+ ret += ansiStyles.strikethrough.open;
470
+ if (!(formatFlags & STRIKETHROUGH_MASK) &&
471
+ prevFormatFlags & STRIKETHROUGH_MASK)
472
+ ret += ansiStyles.strikethrough.close;
473
+ if (formatFlags & INVERSE_MASK && !(prevFormatFlags & INVERSE_MASK))
474
+ ret += ansiStyles.inverse.open;
475
+ if (!(formatFlags & INVERSE_MASK) && prevFormatFlags & INVERSE_MASK)
476
+ ret += ansiStyles.inverse.close;
477
+ if (formatFlags & HIDDEN_MASK && !(prevFormatFlags & HIDDEN_MASK))
478
+ ret += ansiStyles.hidden.open;
479
+ if (!(formatFlags & HIDDEN_MASK) && prevFormatFlags & HIDDEN_MASK)
480
+ ret += ansiStyles.hidden.close;
481
+ if (needResetBoldDim) {
482
+ ret += ansiStyles.bold.close; // 22m closes both
483
+ }
484
+ if (fgColor !== prevFgColor && fgColor === undefined) {
485
+ ret += ansiStyles.color.close;
486
+ }
487
+ if (bgColor !== prevBgColor && bgColor === undefined) {
488
+ ret += ansiStyles.bgColor.close;
489
+ }
490
+ if (link !== prevLink) {
491
+ ret += link === undefined ? linkEndCode : link;
492
+ }
493
+ ret += char.getValue();
494
+ prevFormatFlags = formatFlags;
495
+ prevFgColor = fgColor;
496
+ prevBgColor = bgColor;
497
+ prevLink = link;
498
+ }
499
+ // Reset active styles at the end of the string
500
+ if (prevFgColor !== undefined)
501
+ ret += ansiStyles.color.close;
502
+ if (prevBgColor !== undefined)
503
+ ret += ansiStyles.bgColor.close;
504
+ if (prevFormatFlags & (BOLD_MASK | DIM_MASK))
505
+ ret += ansiStyles.bold.close;
506
+ if (prevFormatFlags & ITALIC_MASK)
507
+ ret += ansiStyles.italic.close;
508
+ if (prevFormatFlags & UNDERLINE_MASK)
509
+ ret += ansiStyles.underline.close;
510
+ if (prevFormatFlags & STRIKETHROUGH_MASK)
511
+ ret += ansiStyles.strikethrough.close;
512
+ if (prevFormatFlags & INVERSE_MASK)
513
+ ret += ansiStyles.inverse.close;
514
+ if (prevFormatFlags & HIDDEN_MASK)
515
+ ret += ansiStyles.hidden.close;
516
+ if (prevLink !== undefined)
517
+ ret += linkEndCode;
518
+ return ret;
519
+ }
520
+ //# sourceMappingURL=tokenize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenize.js","sourceRoot":"","sources":["../src/tokenize.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ export type AnsiCode = {
2
+ type: 'ansi';
3
+ code: string;
4
+ endCode: string;
5
+ };
6
+ export type CssStyles = {
7
+ color?: string;
8
+ backgroundColor?: string;
9
+ fontWeight?: string;
10
+ fontStyle?: string;
11
+ textDecoration?: string;
12
+ opacity?: string;
13
+ inverse?: boolean;
14
+ };
15
+ export declare function ansiToCss(ansiCodes: AnsiCode[]): CssStyles;
16
+ export declare function cssObjToString(css: CssStyles): string;