poly-weaver 0.11.2 → 0.11.4

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 (115) hide show
  1. package/dist/cli.js +3 -0
  2. package/dist/cli.js.map +1 -1
  3. package/dist/flow-editor/tui.d.ts +3 -0
  4. package/dist/flow-editor/tui.d.ts.map +1 -1
  5. package/dist/flow-editor/tui.js +87 -9
  6. package/dist/flow-editor/tui.js.map +1 -1
  7. package/dist/launcher.d.ts +10 -0
  8. package/dist/launcher.d.ts.map +1 -1
  9. package/dist/launcher.js +42 -1
  10. package/dist/launcher.js.map +1 -1
  11. package/dist/markdown.d.ts.map +1 -1
  12. package/dist/markdown.js +386 -30
  13. package/dist/markdown.js.map +1 -1
  14. package/dist/offscreen/artifact-pane.d.ts +20 -0
  15. package/dist/offscreen/artifact-pane.d.ts.map +1 -0
  16. package/dist/offscreen/artifact-pane.js +72 -0
  17. package/dist/offscreen/artifact-pane.js.map +1 -0
  18. package/dist/offscreen/controller.d.ts +16 -3
  19. package/dist/offscreen/controller.d.ts.map +1 -1
  20. package/dist/offscreen/controller.js +84 -75
  21. package/dist/offscreen/controller.js.map +1 -1
  22. package/dist/offscreen/inquiry-pane.d.ts +14 -0
  23. package/dist/offscreen/inquiry-pane.d.ts.map +1 -0
  24. package/dist/offscreen/inquiry-pane.js +101 -0
  25. package/dist/offscreen/inquiry-pane.js.map +1 -0
  26. package/dist/offscreen/panes.d.ts +14 -0
  27. package/dist/offscreen/panes.d.ts.map +1 -0
  28. package/dist/offscreen/panes.js +2 -0
  29. package/dist/offscreen/panes.js.map +1 -0
  30. package/dist/offscreen/split-inquiry.d.ts +28 -0
  31. package/dist/offscreen/split-inquiry.d.ts.map +1 -0
  32. package/dist/offscreen/split-inquiry.js +88 -0
  33. package/dist/offscreen/split-inquiry.js.map +1 -0
  34. package/dist/orchestrator.d.ts +3 -0
  35. package/dist/orchestrator.d.ts.map +1 -1
  36. package/dist/orchestrator.js +18 -2
  37. package/dist/orchestrator.js.map +1 -1
  38. package/dist/paste-image/attachment-manager.d.ts +20 -0
  39. package/dist/paste-image/attachment-manager.d.ts.map +1 -0
  40. package/dist/paste-image/attachment-manager.js +88 -0
  41. package/dist/paste-image/attachment-manager.js.map +1 -0
  42. package/dist/paste-image/bracketed-paste.d.ts +13 -0
  43. package/dist/paste-image/bracketed-paste.d.ts.map +1 -0
  44. package/dist/paste-image/bracketed-paste.js +82 -0
  45. package/dist/paste-image/bracketed-paste.js.map +1 -0
  46. package/dist/paste-image/clipboard-ffi.d.ts +9 -0
  47. package/dist/paste-image/clipboard-ffi.d.ts.map +1 -0
  48. package/dist/paste-image/clipboard-ffi.js +149 -0
  49. package/dist/paste-image/clipboard-ffi.js.map +1 -0
  50. package/dist/paste-image/clipboard.d.ts +38 -0
  51. package/dist/paste-image/clipboard.d.ts.map +1 -0
  52. package/dist/paste-image/clipboard.js +454 -0
  53. package/dist/paste-image/clipboard.js.map +1 -0
  54. package/dist/paste-image/image-format.d.ts +7 -0
  55. package/dist/paste-image/image-format.d.ts.map +1 -0
  56. package/dist/paste-image/image-format.js +61 -0
  57. package/dist/paste-image/image-format.js.map +1 -0
  58. package/dist/paste-image/intents.d.ts +11 -0
  59. package/dist/paste-image/intents.d.ts.map +1 -0
  60. package/dist/paste-image/intents.js +66 -0
  61. package/dist/paste-image/intents.js.map +1 -0
  62. package/dist/paste-image/persistence.d.ts +2 -0
  63. package/dist/paste-image/persistence.d.ts.map +1 -0
  64. package/dist/paste-image/persistence.js +8 -0
  65. package/dist/paste-image/persistence.js.map +1 -0
  66. package/dist/paste-image/staging.d.ts +8 -0
  67. package/dist/paste-image/staging.d.ts.map +1 -0
  68. package/dist/paste-image/staging.js +23 -0
  69. package/dist/paste-image/staging.js.map +1 -0
  70. package/dist/paste-image/token.d.ts +14 -0
  71. package/dist/paste-image/token.d.ts.map +1 -0
  72. package/dist/paste-image/token.js +26 -0
  73. package/dist/paste-image/token.js.map +1 -0
  74. package/dist/providers/option-catalog.d.ts.map +1 -1
  75. package/dist/providers/option-catalog.js +0 -1
  76. package/dist/providers/option-catalog.js.map +1 -1
  77. package/dist/startup-tui.d.ts +8 -2
  78. package/dist/startup-tui.d.ts.map +1 -1
  79. package/dist/startup-tui.js +76 -5
  80. package/dist/startup-tui.js.map +1 -1
  81. package/dist/terminal/input-router.d.ts +9 -0
  82. package/dist/terminal/input-router.d.ts.map +1 -1
  83. package/dist/terminal/input-router.js +14 -0
  84. package/dist/terminal/input-router.js.map +1 -1
  85. package/dist/text-editing/emacs-input.d.ts +6 -0
  86. package/dist/text-editing/emacs-input.d.ts.map +1 -1
  87. package/dist/text-editing/emacs-input.js +243 -17
  88. package/dist/text-editing/emacs-input.js.map +1 -1
  89. package/dist/user/curate-handler.d.ts.map +1 -1
  90. package/dist/user/curate-handler.js +4 -1
  91. package/dist/user/curate-handler.js.map +1 -1
  92. package/dist/user/curate-prompt.d.ts +2 -0
  93. package/dist/user/curate-prompt.d.ts.map +1 -1
  94. package/dist/user/curate-prompt.js.map +1 -1
  95. package/dist/user/handler.d.ts.map +1 -1
  96. package/dist/user/handler.js +2 -0
  97. package/dist/user/handler.js.map +1 -1
  98. package/dist/user/host-curate-prompt.d.ts +3 -0
  99. package/dist/user/host-curate-prompt.d.ts.map +1 -1
  100. package/dist/user/host-curate-prompt.js +153 -21
  101. package/dist/user/host-curate-prompt.js.map +1 -1
  102. package/dist/user/host-prompt.d.ts.map +1 -1
  103. package/dist/user/host-prompt.js +80 -5
  104. package/dist/user/host-prompt.js.map +1 -1
  105. package/dist/user/prompt.d.ts +2 -0
  106. package/dist/user/prompt.d.ts.map +1 -1
  107. package/dist/user/shortcut-hints.d.ts +1 -0
  108. package/dist/user/shortcut-hints.d.ts.map +1 -1
  109. package/dist/user/shortcut-hints.js +1 -1
  110. package/dist/user/shortcut-hints.js.map +1 -1
  111. package/dist/user/split-surface.d.ts +5 -1
  112. package/dist/user/split-surface.d.ts.map +1 -1
  113. package/dist/user/split-surface.js +15 -8
  114. package/dist/user/split-surface.js.map +1 -1
  115. package/package.json +1 -2
package/dist/markdown.js CHANGED
@@ -1,8 +1,7 @@
1
1
  import chalk from "chalk";
2
2
  import { highlight, supportsLanguage } from "cli-highlight";
3
- import Table from "cli-table3";
4
3
  import MarkdownIt from "markdown-it";
5
- import { ANSI_RE, visibleLength } from "./ansi.js";
4
+ import { ANSI_RE, padToWidth, visibleLength } from "./ansi.js";
6
5
  import { hardWrapLine } from "./user/hard-wrap.js";
7
6
  // Force truecolor: the @xterm/headless host is not a TTY, so chalk autodetects
8
7
  // `level = 0` and emits no SGR. The host renders ANSI through its own pipeline,
@@ -22,14 +21,13 @@ const LANGUAGE_ALIASES = {
22
21
  tsx: "typescript",
23
22
  };
24
23
  /**
25
- * Compute cli-table3 column widths so the rendered table fits in `width` cols.
24
+ * Compute table column widths so the rendered table fits in `width` cols.
26
25
  *
27
- * cli-table3's `colWidths` includes per-cell padding; total visible width is
28
- * `sum(colWidths) + (cols + 1)` to account for the inter-column and outer
29
- * borders. Each column needs at least 3 cols (1 padding + 1 char + 1 padding),
30
- * so when the requested width is too narrow for the column count we fall back
31
- * to the minimum - the table will overflow, but its internal structure stays
32
- * consistent (the outer hard-wrap will still slice it).
26
+ * Column widths include per-cell padding; total visible width is `sum(widths) +
27
+ * (cols + 1)` to account for the inter-column and outer borders. Each column
28
+ * needs at least 3 cols (1 padding + 1 char + 1 padding), so when the requested
29
+ * width is too narrow for the column count we fall back to the minimum. The
30
+ * outer hard-wrap still keeps the final emitted rows within width.
33
31
  */
34
32
  function tableColWidths(cols, width) {
35
33
  const minCol = 3;
@@ -46,6 +44,218 @@ function tableColWidths(cols, width) {
46
44
  }
47
45
  return widths;
48
46
  }
47
+ const DEFAULT_SGR_STATE = {
48
+ bold: false,
49
+ dim: false,
50
+ italic: false,
51
+ underline: false,
52
+ fg: undefined,
53
+ };
54
+ // Captured from the previous table renderer defaults: red headers, grey borders.
55
+ const TABLE_HEADER_BASE = {
56
+ ...DEFAULT_SGR_STATE,
57
+ fg: "31",
58
+ };
59
+ const TABLE_BORDER_BASE = {
60
+ ...DEFAULT_SGR_STATE,
61
+ fg: "90",
62
+ };
63
+ const TABLE_CELL_PADDING = 1;
64
+ const SGR_RESET = "\x1b[0m";
65
+ function cloneSgrState(state) {
66
+ return {
67
+ bold: state.bold,
68
+ dim: state.dim,
69
+ italic: state.italic,
70
+ underline: state.underline,
71
+ fg: state.fg,
72
+ };
73
+ }
74
+ function sameSgrState(a, b) {
75
+ return a.bold === b.bold &&
76
+ a.dim === b.dim &&
77
+ a.italic === b.italic &&
78
+ a.underline === b.underline &&
79
+ a.fg === b.fg;
80
+ }
81
+ function hasSgr(text) {
82
+ ANSI_RE.lastIndex = 0;
83
+ const matched = ANSI_RE.test(text);
84
+ ANSI_RE.lastIndex = 0;
85
+ return matched;
86
+ }
87
+ function parseSgrCodes(seq) {
88
+ const body = seq.slice(2, -1);
89
+ if (body.length === 0)
90
+ return [0];
91
+ return body
92
+ .split(";")
93
+ .map((part) => part.length === 0 ? 0 : Number.parseInt(part, 10))
94
+ .filter((code) => Number.isFinite(code));
95
+ }
96
+ function applySgrCodes(state, codes, base) {
97
+ let next = cloneSgrState(state);
98
+ for (let i = 0; i < codes.length; i++) {
99
+ const code = codes[i];
100
+ if (code === 0) {
101
+ next = cloneSgrState(base);
102
+ }
103
+ else if (code === 1) {
104
+ next.bold = true;
105
+ }
106
+ else if (code === 2) {
107
+ next.dim = true;
108
+ }
109
+ else if (code === 3) {
110
+ next.italic = true;
111
+ }
112
+ else if (code === 4) {
113
+ next.underline = true;
114
+ }
115
+ else if (code === 22) {
116
+ next.bold = base.bold;
117
+ next.dim = base.dim;
118
+ }
119
+ else if (code === 23) {
120
+ next.italic = base.italic;
121
+ }
122
+ else if (code === 24) {
123
+ next.underline = base.underline;
124
+ }
125
+ else if (code === 39) {
126
+ next.fg = base.fg;
127
+ }
128
+ else if ((30 <= code && code <= 37) || (90 <= code && code <= 97)) {
129
+ next.fg = String(code);
130
+ }
131
+ else if (code === 38) {
132
+ if (codes[i + 1] === 5 && Number.isFinite(codes[i + 2])) {
133
+ next.fg = `38;5;${codes[i + 2]}`;
134
+ i += 2;
135
+ }
136
+ else if (codes[i + 1] === 2 &&
137
+ Number.isFinite(codes[i + 2]) &&
138
+ Number.isFinite(codes[i + 3]) &&
139
+ Number.isFinite(codes[i + 4])) {
140
+ next.fg = `38;2;${codes[i + 2]};${codes[i + 3]};${codes[i + 4]}`;
141
+ i += 4;
142
+ }
143
+ else {
144
+ next.fg = "38";
145
+ }
146
+ }
147
+ }
148
+ return next;
149
+ }
150
+ function applyRawSgrCodes(state, codes) {
151
+ let next = cloneSgrState(state);
152
+ for (let i = 0; i < codes.length; i++) {
153
+ const code = codes[i];
154
+ if (code === 0) {
155
+ next = cloneSgrState(DEFAULT_SGR_STATE);
156
+ }
157
+ else if (code === 1) {
158
+ next.bold = true;
159
+ }
160
+ else if (code === 2) {
161
+ next.dim = true;
162
+ }
163
+ else if (code === 3) {
164
+ next.italic = true;
165
+ }
166
+ else if (code === 4) {
167
+ next.underline = true;
168
+ }
169
+ else if (code === 22) {
170
+ next.bold = false;
171
+ next.dim = false;
172
+ }
173
+ else if (code === 23) {
174
+ next.italic = false;
175
+ }
176
+ else if (code === 24) {
177
+ next.underline = false;
178
+ }
179
+ else if (code === 39) {
180
+ next.fg = undefined;
181
+ }
182
+ else if ((30 <= code && code <= 37) || (90 <= code && code <= 97)) {
183
+ next.fg = String(code);
184
+ }
185
+ else if (code === 38) {
186
+ if (codes[i + 1] === 5 && Number.isFinite(codes[i + 2])) {
187
+ next.fg = `38;5;${codes[i + 2]}`;
188
+ i += 2;
189
+ }
190
+ else if (codes[i + 1] === 2 &&
191
+ Number.isFinite(codes[i + 2]) &&
192
+ Number.isFinite(codes[i + 3]) &&
193
+ Number.isFinite(codes[i + 4])) {
194
+ next.fg = `38;2;${codes[i + 2]};${codes[i + 3]};${codes[i + 4]}`;
195
+ i += 4;
196
+ }
197
+ else {
198
+ next.fg = "38";
199
+ }
200
+ }
201
+ }
202
+ return next;
203
+ }
204
+ function sgrStateToOpen(state) {
205
+ let out = "";
206
+ if (state.fg)
207
+ out += `\x1b[${state.fg}m`;
208
+ if (state.bold)
209
+ out += "\x1b[1m";
210
+ if (state.dim)
211
+ out += "\x1b[2m";
212
+ if (state.italic)
213
+ out += "\x1b[3m";
214
+ if (state.underline)
215
+ out += "\x1b[4m";
216
+ return out;
217
+ }
218
+ function missingBaseOpen(rawState, base) {
219
+ const missing = cloneSgrState(DEFAULT_SGR_STATE);
220
+ if (base.fg && rawState.fg === undefined)
221
+ missing.fg = base.fg;
222
+ if (base.bold && !rawState.bold)
223
+ missing.bold = true;
224
+ if (base.dim && !rawState.dim)
225
+ missing.dim = true;
226
+ if (base.italic && !rawState.italic)
227
+ missing.italic = true;
228
+ if (base.underline && !rawState.underline)
229
+ missing.underline = true;
230
+ return sgrStateToOpen(missing);
231
+ }
232
+ function emitInlineSgr(rawToken, base) {
233
+ if (sameSgrState(base, DEFAULT_SGR_STATE))
234
+ return rawToken;
235
+ const rawState = applyRawSgrCodes(cloneSgrState(base), parseSgrCodes(rawToken));
236
+ return rawToken + missingBaseOpen(rawState, base);
237
+ }
238
+ function sgrTransitionToBase(current, base) {
239
+ let out = "";
240
+ if (current.bold !== base.bold || current.dim !== base.dim) {
241
+ if (current.bold || current.dim)
242
+ out += "\x1b[22m";
243
+ if (base.bold)
244
+ out += "\x1b[1m";
245
+ if (base.dim)
246
+ out += "\x1b[2m";
247
+ }
248
+ if (current.italic !== base.italic) {
249
+ out += base.italic ? "\x1b[3m" : "\x1b[23m";
250
+ }
251
+ if (current.underline !== base.underline) {
252
+ out += base.underline ? "\x1b[4m" : "\x1b[24m";
253
+ }
254
+ if (current.fg !== base.fg) {
255
+ out += base.fg ? `\x1b[${base.fg}m` : "\x1b[39m";
256
+ }
257
+ return out;
258
+ }
49
259
  export function renderMarkdown(md, width, options) {
50
260
  const rows = renderMarkdownRows(md, width);
51
261
  if (options?.withSources)
@@ -357,28 +567,174 @@ function renderTable(tokens, index, ctx) {
357
567
  if (header.length === 0) {
358
568
  return { rows: [], next: close + 1 };
359
569
  }
360
- const table = new Table({
361
- head: header,
362
- colWidths: tableColWidths(header.length, ctx.width),
363
- wordWrap: true,
364
- wrapOnWordBoundary: false,
365
- });
366
- for (const row of body)
367
- table.push(row.cells);
368
- const logicalRowSources = [headerSource, ...body.map((row) => row.source)];
369
- let logicalRowIndex = -1;
370
- return {
371
- rows: table.toString().split(/\r?\n/).map((line) => {
372
- const plain = line.replace(ANSI_RE, "");
373
- if (isTableContentLine(plain)) {
374
- return { line, source: logicalRowSources[logicalRowIndex] };
570
+ const colWidths = tableColWidths(header.length, ctx.width);
571
+ const headerBases = header.map(() => TABLE_HEADER_BASE);
572
+ const bodyBases = header.map(() => DEFAULT_SGR_STATE);
573
+ const headerFields = header.map((cell, i) => renderTableCellFields(cell, colWidths[i], TABLE_HEADER_BASE));
574
+ const bodyFields = body.map((row) => colWidths.map((colWidth, i) => renderTableCellFields(row.cells[i] ?? "", colWidth, DEFAULT_SGR_STATE)));
575
+ const rows = [];
576
+ const headerHeight = tableRowHeight(headerFields);
577
+ rows.push({ line: buildTableBorderLine(colWidths, "top"), source: undefined });
578
+ for (let lineIndex = 0; lineIndex < headerHeight; lineIndex++) {
579
+ rows.push({
580
+ line: buildTableContentLine(colWidths, headerFields, headerBases, lineIndex),
581
+ source: headerSource,
582
+ });
583
+ }
584
+ for (let rowIndex = 0; rowIndex < bodyFields.length; rowIndex++) {
585
+ const fields = bodyFields[rowIndex];
586
+ const rowHeight = tableRowHeight(fields);
587
+ rows.push({ line: buildTableBorderLine(colWidths, "mid"), source: undefined });
588
+ for (let lineIndex = 0; lineIndex < rowHeight; lineIndex++) {
589
+ rows.push({
590
+ line: buildTableContentLine(colWidths, fields, bodyBases, lineIndex),
591
+ source: body[rowIndex].source,
592
+ });
593
+ }
594
+ }
595
+ rows.push({ line: buildTableBorderLine(colWidths, "bottom"), source: undefined });
596
+ return { rows, next: close + 1 };
597
+ }
598
+ function tokenizeTableCellSegment(segment) {
599
+ const tokens = [];
600
+ let i = 0;
601
+ while (i < segment.length) {
602
+ if (segment[i] === "\x1b" && segment[i + 1] === "[") {
603
+ const match = /^\x1b\[[0-9;]*m/.exec(segment.slice(i));
604
+ if (match) {
605
+ tokens.push({ type: "sgr", text: match[0] });
606
+ i += match[0].length;
607
+ continue;
375
608
  }
376
- if (isTableStructuralLine(plain))
377
- logicalRowIndex++;
378
- return { line, source: undefined };
379
- }),
380
- next: close + 1,
381
- };
609
+ }
610
+ if (/\s/.test(segment[i])) {
611
+ let end = i + 1;
612
+ while (end < segment.length && /\s/.test(segment[end]))
613
+ end++;
614
+ tokens.push({ type: "space", text: segment.slice(i, end) });
615
+ i = end;
616
+ continue;
617
+ }
618
+ let end = i + 1;
619
+ while (end < segment.length &&
620
+ !/\s/.test(segment[end]) &&
621
+ !(segment[end] === "\x1b" && segment[end + 1] === "[")) {
622
+ end++;
623
+ }
624
+ tokens.push({ type: "word", text: segment.slice(i, end) });
625
+ i = end;
626
+ }
627
+ return tokens;
628
+ }
629
+ function wrapCellContent(text, innerWidth, base) {
630
+ const width = Math.max(1, innerWidth);
631
+ const lines = [];
632
+ const segments = text.split("\n");
633
+ let state = cloneSgrState(base);
634
+ for (const segment of segments) {
635
+ let line = sgrStateToOpen(state);
636
+ let lineWidth = 0;
637
+ const finishLine = () => {
638
+ lines.push(line + sgrTransitionToBase(state, base));
639
+ line = sgrStateToOpen(state);
640
+ lineWidth = 0;
641
+ };
642
+ const appendPreservedText = (textPart) => {
643
+ let remaining = textPart;
644
+ while (remaining.length > 0) {
645
+ const chunks = hardWrapLine(remaining, width);
646
+ const chunk = chunks[0] ?? "";
647
+ if (lineWidth + visibleLength(chunk) <= width) {
648
+ line += chunk;
649
+ lineWidth += visibleLength(chunk);
650
+ remaining = remaining.slice(chunk.length);
651
+ if (remaining.length > 0)
652
+ finishLine();
653
+ continue;
654
+ }
655
+ if (lineWidth > 0) {
656
+ finishLine();
657
+ continue;
658
+ }
659
+ line += chunk;
660
+ lineWidth = visibleLength(chunk);
661
+ remaining = remaining.slice(chunk.length);
662
+ if (remaining.length > 0)
663
+ finishLine();
664
+ }
665
+ };
666
+ for (const token of tokenizeTableCellSegment(segment)) {
667
+ if (token.type === "sgr") {
668
+ line += emitInlineSgr(token.text, base);
669
+ state = applySgrCodes(state, parseSgrCodes(token.text), base);
670
+ continue;
671
+ }
672
+ if (token.type === "space") {
673
+ appendPreservedText(token.text);
674
+ continue;
675
+ }
676
+ const wordWidth = visibleLength(token.text);
677
+ if (wordWidth > width) {
678
+ if (lineWidth > 0)
679
+ finishLine();
680
+ const chunks = hardWrapLine(token.text, width);
681
+ for (let i = 0; i < chunks.length; i++) {
682
+ line += chunks[i];
683
+ lineWidth = visibleLength(chunks[i]);
684
+ if (i < chunks.length - 1)
685
+ finishLine();
686
+ }
687
+ continue;
688
+ }
689
+ if (lineWidth > 0 && lineWidth + wordWidth > width) {
690
+ finishLine();
691
+ }
692
+ line += token.text;
693
+ lineWidth += wordWidth;
694
+ }
695
+ finishLine();
696
+ }
697
+ return lines.length > 0 ? lines : [""];
698
+ }
699
+ function renderTableCellFields(text, colWidth, base) {
700
+ const innerWidth = Math.max(1, colWidth - TABLE_CELL_PADDING * 2);
701
+ return wrapCellContent(text, innerWidth, base).map((line) => renderCellField(line, innerWidth, TABLE_CELL_PADDING, base));
702
+ }
703
+ function renderCellField(contentLine, innerWidth, pad, base) {
704
+ const slot = `${" ".repeat(pad)}${padToWidth(contentLine, innerWidth)}${" ".repeat(pad)}`;
705
+ if (!sameSgrState(base, DEFAULT_SGR_STATE)) {
706
+ return `${sgrStateToOpen(base)}${slot}${SGR_RESET}`;
707
+ }
708
+ return hasSgr(contentLine) ? `${slot}${SGR_RESET}` : slot;
709
+ }
710
+ function tableRowHeight(fields) {
711
+ return Math.max(1, ...fields.map((cell) => cell.length));
712
+ }
713
+ function buildTableBorderLine(colWidths, style) {
714
+ const chars = style === "top"
715
+ ? ["┌", "┬", "┐"]
716
+ : style === "mid"
717
+ ? ["├", "┼", "┤"]
718
+ : ["└", "┴", "┘"];
719
+ const plain = `${chars[0]}${colWidths
720
+ .map((width) => "─".repeat(width))
721
+ .join(chars[1])}${chars[2]}`;
722
+ return colorTableBorder(plain);
723
+ }
724
+ function colorTableBorder(text) {
725
+ if (sameSgrState(TABLE_BORDER_BASE, DEFAULT_SGR_STATE))
726
+ return text;
727
+ return `${sgrStateToOpen(TABLE_BORDER_BASE)}${text}\x1b[39m`;
728
+ }
729
+ function buildTableContentLine(colWidths, cellFields, bases, lineIndex) {
730
+ let line = colorTableBorder("│");
731
+ for (let i = 0; i < colWidths.length; i++) {
732
+ const innerWidth = Math.max(1, colWidths[i] - TABLE_CELL_PADDING * 2);
733
+ const field = cellFields[i]?.[lineIndex] ??
734
+ renderCellField("", innerWidth, TABLE_CELL_PADDING, bases[i]);
735
+ line += field + colorTableBorder("│");
736
+ }
737
+ return line;
382
738
  }
383
739
  function renderHtmlBlock(token, index, ctx) {
384
740
  const source = sourceForBlock(ctx, token.map);
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { TerminalKey } from "../terminal-input.js";
2
+ import type { HostUiSurface } from "../terminal/host.js";
3
+ import type { ArtifactPaneRenderer, PaneInputResult, SplitPaneController } from "./panes.js";
4
+ export declare class ArtifactPaneController implements SplitPaneController {
5
+ private readonly renderArtifact;
6
+ private scrollTop;
7
+ private viewportRows;
8
+ private cachedWidth;
9
+ private cachedLines;
10
+ constructor(renderArtifact: ArtifactPaneRenderer);
11
+ render(width: number, height: number): HostUiSurface;
12
+ handleKey(key: TerminalKey): PaneInputResult;
13
+ handleMouse(key: TerminalKey): PaneInputResult;
14
+ /** Re-render the artifact only when the pane width changes (rare). */
15
+ private renderLines;
16
+ private handleScrollKey;
17
+ private scrollBy;
18
+ private clamp;
19
+ }
20
+ //# sourceMappingURL=artifact-pane.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact-pane.d.ts","sourceRoot":"","sources":["../../src/offscreen/artifact-pane.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,oBAAoB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE7F,qBAAa,sBAAuB,YAAW,mBAAmB;IAMpD,OAAO,CAAC,QAAQ,CAAC,cAAc;IAL3C,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,WAAW,CAAgB;gBAEN,cAAc,EAAE,oBAAoB;IAEjE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,aAAa;IAUpD,SAAS,CAAC,GAAG,EAAE,WAAW,GAAG,eAAe;IAI5C,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,eAAe;IAK9C,sEAAsE;IACtE,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,eAAe;IA2BvB,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,KAAK;CAKd"}