@simon_he/vue-tui 1.1.12 → 1.1.13

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/dist/markdown.js CHANGED
@@ -1,12 +1,12 @@
1
1
  import "./create-terminal-Db_-UGVQ.js";
2
2
  import "./hyperlink-clbb_ha_.js";
3
- import { EventZIndexContextKey, intersectRect, translateRect, useLayout, useRenderNode, useTerminal, useTerminalNode, useVisibility, withTextWidthProvider } from "./rect-JzWMJxxc.js";
3
+ import { EventZIndexContextKey, intersectRect, translateRect, useLayout, useRenderNode, useTerminal, useTerminalNode, useVisibility, withTextWidthProvider } from "./rect-Dfevd15m.js";
4
4
  import "./env-Cl8qmNFN.js";
5
5
  import "./terminal-selection-4W1SJj4c.js";
6
6
  import "./debug-logger-CmsGI4of.js";
7
7
  import "./wheel-scroll-CQ22Hcyj.js";
8
8
  import { getTerminalGraphicsOutput, getTerminalGraphicsOutputVersion, subscribeTerminalGraphicsOutput } from "./terminal-graphics-DpSL29OQ.js";
9
- import { TVirtualMarkdown, buildMarkdownBlocks, buildMarkdownVisualRows, clearMarkdownImageGraphics, collectVisibleMarkdownImageGraphicIds, createMarkdownBlockSource, createTuiMarkdownParser, findMarkdownImageActionAt, findMarkdownLinkActionAt, findMarkdownMathActionAt, isSafeMarkdownLink, layoutMarkdownBlocks, loadMarkdownMathRenderer, markdownThemeSignature, paintMarkdownVisualRow, subscribeMarkdownMathRenderer } from "./block-source-BhvdZomx.js";
9
+ import { TVirtualMarkdown, buildMarkdownBlocks, buildMarkdownVisualRows, clearMarkdownImageGraphics, collectVisibleMarkdownImageGraphicIds, createMarkdownBlockSource, createTuiMarkdownParser, findMarkdownImageActionAt, findMarkdownLinkActionAt, findMarkdownMathActionAt, isSafeMarkdownLink, layoutMarkdownBlocks, loadMarkdownMathRenderer, markdownThemeSignature, paintMarkdownVisualRow, subscribeMarkdownMathRenderer } from "./block-source-BGTRldY7.js";
10
10
  import { clearMarkdownMathImageCache, enqueueMarkdownMathImages, getCachedMarkdownMathImage, getMarkdownMathImage, isMarkdownMathImageRendererReady, loadMarkdownMathImageRenderer, resolveMarkdownMathColor, setMarkdownMathRasterizer, subscribeMarkdownMathImage } from "./math-image-CcUpBnW0.js";
11
11
  import { computed, defineComponent, getCurrentInstance, h, inject, markRaw, onBeforeUnmount, shallowRef, watch } from "vue";
12
12
 
@@ -1,5 +1,5 @@
1
- import { EventZIndexContextKey, intersectRect, padEndByCells$1 as padEndByCells, repeatChar, sanitizeInlineText, sanitizeTextBlock, sliceByCells, sliceByCellsRange, spaces, textCellWidth$1 as textCellWidth, translateRect, useLayout, useRenderNode, useTerminal, useTerminalNode, useVisibility, withTextWidthProvider } from "./rect-JzWMJxxc.js";
2
- import { TMermaidText$1 as TMermaidText, isSimpleMermaidFlowchartSource, markMermaidRenderErrorFatal, tMermaidTextProps } from "./TMermaidText-C1akgJPU.js";
1
+ import { EventZIndexContextKey, intersectRect, padEndByCells$1 as padEndByCells, repeatChar, sanitizeInlineText, sanitizeTextBlock, sliceByCells, sliceByCellsRange, spaces, textCellWidth$1 as textCellWidth, translateRect, useLayout, useRenderNode, useTerminal, useTerminalNode, useVisibility, withTextWidthProvider } from "./rect-Dfevd15m.js";
2
+ import { TMermaidText$1 as TMermaidText, isSimpleMermaidFlowchartSource, markMermaidRenderErrorFatal, tMermaidTextProps } from "./TMermaidText-DJmYNqhh.js";
3
3
  import { createTerminalGraphicPngSequence, getTerminalGraphicsOutput, getTerminalGraphicsOutputVersion, stableTerminalGraphicNumericId, subscribeTerminalGraphicsOutput } from "./terminal-graphics-DpSL29OQ.js";
4
4
  import { resolveMarkdownMathColor } from "./math-image-CcUpBnW0.js";
5
5
  import { computed, defineComponent, getCurrentInstance, h, inject, markRaw, onBeforeUnmount, shallowRef, watch } from "vue";
package/dist/mermaid.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import "./create-terminal-Db_-UGVQ.js";
2
- import "./rect-JzWMJxxc.js";
3
- import { isSimpleMermaidFlowchartSource, markMermaidRenderErrorFatal } from "./TMermaidText-C1akgJPU.js";
2
+ import "./rect-Dfevd15m.js";
3
+ import { isSimpleMermaidFlowchartSource, markMermaidRenderErrorFatal } from "./TMermaidText-DJmYNqhh.js";
4
4
  import "./terminal-graphics-DpSL29OQ.js";
5
5
  import "./math-image-CcUpBnW0.js";
6
- import { TBeautifulMermaid, TBeautifulMermaidText, TMermaid, TMermaidImage, TMermaidText, beautifulMermaidRenderer, clearMermaidImageCache, createBeautifulMermaidRenderer, getCachedMermaidImage, getMermaidImage, isMermaidImageRendererReady, loadMermaidImageRenderer, normalizeMermaidImageOptions, resolveMermaidImageColor, resolveMermaidSvgForResvg, setMermaidImageRasterizer, subscribeMermaidImage } from "./mermaid-D0ov4_A1.js";
6
+ import { TBeautifulMermaid, TBeautifulMermaidText, TMermaid, TMermaidImage, TMermaidText, beautifulMermaidRenderer, clearMermaidImageCache, createBeautifulMermaidRenderer, getCachedMermaidImage, getMermaidImage, isMermaidImageRendererReady, loadMermaidImageRenderer, normalizeMermaidImageOptions, resolveMermaidImageColor, resolveMermaidSvgForResvg, setMermaidImageRasterizer, subscribeMermaidImage } from "./mermaid-qhG4TDdu.js";
7
7
 
8
8
  export { TBeautifulMermaid, TBeautifulMermaidText, TMermaid, TMermaidImage, TMermaidText, beautifulMermaidRenderer, clearMermaidImageCache, createBeautifulMermaidRenderer, getCachedMermaidImage, getMermaidImage, isMermaidImageRendererReady, isSimpleMermaidFlowchartSource, loadMermaidImageRenderer, markMermaidRenderErrorFatal, normalizeMermaidImageOptions, resolveMermaidImageColor, resolveMermaidSvgForResvg, setMermaidImageRasterizer, subscribeMermaidImage };
@@ -496,6 +496,35 @@ function sliceByCellsRange(text, startCells, endCells, provider = currentTextWid
496
496
  });
497
497
  return out.length ? out.join("") : "";
498
498
  }
499
+ /**
500
+ * Slice text by terminal cell range for selection copy.
501
+ *
502
+ * A grapheme is kept when its leading cell falls inside `[startCells, endCells)`.
503
+ * `sliceByCellsRange` clips a line into a fixed cell width, so a wide grapheme
504
+ * (CJK, emoji) cut by the range is replaced with padding there; reusing it to
505
+ * build copied text turns a partially covered trailing wide character into a
506
+ * space, which is why selection copy uses this variant: it keeps that grapheme
507
+ * whole, matching what the selection highlight paints (the highlight skips
508
+ * continuation cells, so a wide grapheme is only shown as selected when its
509
+ * leading cell is inside the range).
510
+ */
511
+ function sliceByCellsRangeForSelection(text, startCells, endCells, provider = currentTextWidthProvider()) {
512
+ startCells = Math.max(0, Math.floor(startCells));
513
+ endCells = Math.max(0, Math.floor(endCells));
514
+ if (endCells <= startCells) return "";
515
+ if (!text) return "";
516
+ if (hasAsciiFastPath(provider) && isAscii(text)) return text.slice(startCells, endCells);
517
+ const out = [];
518
+ let cells = 0;
519
+ forEachGrapheme(text, (g) => {
520
+ const leadingCell = cells;
521
+ cells += charCellWidth(g, provider);
522
+ if (leadingCell >= endCells) return false;
523
+ if (leadingCell >= startCells) out.push(g);
524
+ return void 0;
525
+ });
526
+ return out.join("");
527
+ }
499
528
  function padEndByCells(text, width, provider = currentTextWidthProvider()) {
500
529
  width = Math.max(0, Math.floor(width));
501
530
  const cells = text && hasAsciiFastPath(provider) && isAscii(text) ? text.length : textCellWidth(text, provider);
@@ -957,4 +986,4 @@ function normalizeCellRect(rect) {
957
986
  }
958
987
 
959
988
  //#endregion
960
- export { DialogContextKey, EventZIndexContextKey, ImeAnchorContextKey, LayoutContextKey, RenderPlaneContextKey, RenderStackKey, TInputPluginsContextKey, TPathPickerProviderContextKey, TerminalContextKey, TerminalGraphicsActivityKey, VisibilityContextKey, clearTextCaches, createCombinedTerminalGraphicsActivity, createTerminalGraphicsActivity, currentTextWidthProvider, forEachTextCellSegment, formatInlineCellLine, graphemeRangeAt, hasTextWidthAsciiFastPath, injectionKey, intersectRect, normalizeCellRect, nowTerminalGraphicTraceTime, padEndByCells as padEndByCells$1, recordTerminalGraphicTrace, repeatChar, sanitizeInlineText, sanitizeTextBlock, sliceByCells, sliceByCellsRange, spaces, textCellWidth as textCellWidth$1, translateRect, useLayout, useRenderNode, useRenderStack, useTerminal, useTerminalNode, useVisibility, withTextRenderPass, withTextWidthProvider, wrapByCells };
989
+ export { DialogContextKey, EventZIndexContextKey, ImeAnchorContextKey, LayoutContextKey, RenderPlaneContextKey, RenderStackKey, TInputPluginsContextKey, TPathPickerProviderContextKey, TerminalContextKey, TerminalGraphicsActivityKey, VisibilityContextKey, clearTextCaches, createCombinedTerminalGraphicsActivity, createTerminalGraphicsActivity, currentTextWidthProvider, forEachTextCellSegment, formatInlineCellLine, graphemeRangeAt, hasTextWidthAsciiFastPath, injectionKey, intersectRect, normalizeCellRect, nowTerminalGraphicTraceTime, padEndByCells as padEndByCells$1, recordTerminalGraphicTrace, repeatChar, sanitizeInlineText, sanitizeTextBlock, sliceByCells, sliceByCellsRange, sliceByCellsRangeForSelection, spaces, textCellWidth as textCellWidth$1, translateRect, useLayout, useRenderNode, useRenderStack, useTerminal, useTerminalNode, useVisibility, withTextRenderPass, withTextWidthProvider, wrapByCells };
@@ -1,10 +1,10 @@
1
1
  import { applyAnsiSgrStyle, parseAnsiSgr } from "./create-terminal-Db_-UGVQ.js";
2
2
  import { sanitizeTerminalHref } from "./hyperlink-clbb_ha_.js";
3
- import { EventZIndexContextKey, LayoutContextKey, RenderPlaneContextKey, RenderStackKey, TerminalGraphicsActivityKey, createCombinedTerminalGraphicsActivity, createTerminalGraphicsActivity, forEachTextCellSegment, formatInlineCellLine, intersectRect, normalizeCellRect, padEndByCells$1 as padEndByCells, sanitizeInlineText, sliceByCellsRange, spaces, textCellWidth$1 as textCellWidth, translateRect, useLayout, useRenderNode, useRenderStack, useTerminal, useTerminalNode, useVisibility, wrapByCells } from "./rect-JzWMJxxc.js";
4
- import { TuiThemeContextKey, defaultActiveStyle, linkifyTextSegments, tuiDefaultTheme } from "./linkify-CklfA1vp.js";
3
+ import { EventZIndexContextKey, LayoutContextKey, RenderPlaneContextKey, RenderStackKey, TerminalGraphicsActivityKey, createCombinedTerminalGraphicsActivity, createTerminalGraphicsActivity, forEachTextCellSegment, formatInlineCellLine, intersectRect, normalizeCellRect, padEndByCells$1 as padEndByCells, sanitizeInlineText, sliceByCellsRange, sliceByCellsRangeForSelection, spaces, textCellWidth$1 as textCellWidth, translateRect, useLayout, useRenderNode, useRenderStack, useTerminal, useTerminalNode, useVisibility, wrapByCells } from "./rect-Dfevd15m.js";
4
+ import { TuiThemeContextKey, defaultActiveStyle, linkifyTextSegments, tuiDefaultTheme } from "./linkify-DF96jKWy.js";
5
5
  import { framePerfNow } from "./frame-perf-CHpWhbC4.js";
6
6
  import { terminalSelectionRowSpans, terminalSelectionVisibleRowSpans } from "./terminal-selection-4W1SJj4c.js";
7
- import { TView, createFrameMailbox } from "./frame-mailbox-DaTrfyaF.js";
7
+ import { TView, createFrameMailbox } from "./frame-mailbox-6XHw-P8Q.js";
8
8
  import { applyWheelScroll, createWheelScrollState, resetWheelScrollState } from "./wheel-scroll-CQ22Hcyj.js";
9
9
  import { computed, defineComponent, getCurrentInstance, h, inject, onBeforeUnmount, provide, ref, shallowReactive, watch, watchEffect } from "vue";
10
10
 
@@ -527,7 +527,7 @@ const TVirtualList = defineComponent({
527
527
  function textForSelectionRange(range) {
528
528
  const cols = Math.max(1, Math.floor(props.w));
529
529
  return terminalSelectionRowSpans(range, cols, itemCount.value).map((span) => {
530
- const text = sliceByCellsRange(itemText(span.y), span.x0, span.x1);
530
+ const text = sliceByCellsRangeForSelection(itemText(span.y), span.x0, span.x1);
531
531
  return span.x1 >= cols ? text.trimEnd() : text;
532
532
  }).join("\n");
533
533
  }
@@ -1483,7 +1483,7 @@ const TVirtualRows = defineComponent({
1483
1483
  x0: span.x0,
1484
1484
  x1: span.x1,
1485
1485
  cols
1486
- }) ?? "") : sliceByCellsRange(itemText(span.y), span.x0, span.x1);
1486
+ }) ?? "") : sliceByCellsRangeForSelection(itemText(span.y), span.x0, span.x1);
1487
1487
  return span.x1 >= cols ? text.trimEnd() : text;
1488
1488
  }).join("\n");
1489
1489
  }
@@ -2511,7 +2511,7 @@ const TTranscriptView = defineComponent({
2511
2511
  const start = Math.max(x0, segment.x0);
2512
2512
  const end = Math.min(x1, segment.x1);
2513
2513
  if (end <= start || !segment.selectable) continue;
2514
- text += sliceByCellsRange(segment.text, start - segment.x0, end - segment.x0);
2514
+ text += sliceByCellsRangeForSelection(segment.text, start - segment.x0, end - segment.x0);
2515
2515
  }
2516
2516
  return text;
2517
2517
  }
@@ -2542,7 +2542,7 @@ const TTranscriptView = defineComponent({
2542
2542
  const visualRow = ctx.item;
2543
2543
  if (!visualRow) return "";
2544
2544
  if (visualRow.selectionSegments.length) return textForSelectionSegments(visualRow.selectionSegments, ctx.x0, ctx.x1);
2545
- return sliceByCellsRange(selectionTextForVisualRow(visualRow), ctx.x0, ctx.x1);
2545
+ return sliceByCellsRangeForSelection(selectionTextForVisualRow(visualRow), ctx.x0, ctx.x1);
2546
2546
  }
2547
2547
  return () => h(TVirtualRows, {
2548
2548
  ref: rowsRef,
@@ -5278,7 +5278,7 @@ const TLogView = defineComponent({
5278
5278
  const cols = currentWrapWidth();
5279
5279
  const rows = estimatedVisualRowCount();
5280
5280
  return terminalSelectionRowSpans(range, cols, rows).map((span) => {
5281
- const text = sliceByCellsRange(textForVisualRow(span.y), span.x0, span.x1);
5281
+ const text = sliceByCellsRangeForSelection(textForVisualRow(span.y), span.x0, span.x1);
5282
5282
  return span.x1 >= cols ? text.trimEnd() : text;
5283
5283
  }).join("\n");
5284
5284
  }
@@ -21,6 +21,19 @@ export declare function spaces(count: number): string;
21
21
  export declare function repeatChar(ch: string, count: number): string;
22
22
  export declare function sliceByCells(text: string, maxCells: number, provider?: WidthProvider): string;
23
23
  export declare function sliceByCellsRange(text: string, startCells: number, endCells: number, provider?: WidthProvider): string;
24
+ /**
25
+ * Slice text by terminal cell range for selection copy.
26
+ *
27
+ * A grapheme is kept when its leading cell falls inside `[startCells, endCells)`.
28
+ * `sliceByCellsRange` clips a line into a fixed cell width, so a wide grapheme
29
+ * (CJK, emoji) cut by the range is replaced with padding there; reusing it to
30
+ * build copied text turns a partially covered trailing wide character into a
31
+ * space, which is why selection copy uses this variant: it keeps that grapheme
32
+ * whole, matching what the selection highlight paints (the highlight skips
33
+ * continuation cells, so a wide grapheme is only shown as selected when its
34
+ * leading cell is inside the range).
35
+ */
36
+ export declare function sliceByCellsRangeForSelection(text: string, startCells: number, endCells: number, provider?: WidthProvider): string;
24
37
  export declare function padEndByCells(text: string, width: number, provider?: WidthProvider): string;
25
38
  export declare function formatInlineCellLine(text: string, width: number, provider?: WidthProvider): string;
26
39
  export declare function clearTextCaches(): void;
package/dist/vue.cjs CHANGED
@@ -10996,7 +10996,7 @@ function createRenderManager(terminal, options = {}) {
10996
10996
  for (let node of nodes.values())
10997
10997
  addToRowBuckets(node);
10998
10998
  }
10999
- function shouldPromoteToFullPlaneDirty(dirtyRows, planeNodes) {
10999
+ function shouldScanFullPlane(dirtyRows, planeNodes) {
11000
11000
  return planeNodes > 1 && dirtyRows >= ROW_BUCKET_DIRTY_RATIO_MIN_ROWS && terminalRows > 0 && dirtyRows / terminalRows >= ROW_BUCKET_DIRTY_RATIO_FALLBACK && dirtyRows >= planeNodes * ROW_BUCKET_DIRTY_RATIO_FALLBACK;
11001
11001
  }
11002
11002
  function ensureRenderedRowsScratch() {
@@ -11248,12 +11248,7 @@ function createRenderManager(terminal, options = {}) {
11248
11248
  if (!state || !state.allRowsDirty && state.dirtyRowCount === 0)
11249
11249
  continue;
11250
11250
  let planeNodes = sortedNodesByPlane.get(plane) ?? [], isFullPlaneRepaint = state.allRowsDirty, rows = allRows;
11251
- if (!isFullPlaneRepaint && shouldPromoteToFullPlaneDirty(state.dirtyRowCount, planeNodes.length) && (isFullPlaneRepaint = !0, state.allRowsDirty = !0, rowBucketFallbacks.push({
11252
- plane,
11253
- reason: "dirty-ratio",
11254
- dirtyRows: state.dirtyRowCount,
11255
- planeNodes: planeNodes.length
11256
- })), !isFullPlaneRepaint) {
11251
+ if (!isFullPlaneRepaint) {
11257
11252
  dirtyRowsScratch.length = 0, rows = dirtyRowsScratch;
11258
11253
  let startY = Number.isFinite(state.dirtyMinY) ? state.dirtyMinY : 0, endY = state.dirtyMaxY;
11259
11254
  for (let y = startY; y <= endY; y++)
@@ -11265,6 +11260,13 @@ function createRenderManager(terminal, options = {}) {
11265
11260
  }
11266
11261
  resetPlaneRowsForRender(terminal, plane, isFullPlaneRepaint ? null : rows);
11267
11262
  let paintRows = isFullPlaneRepaint ? void 0 : rows, needsIntersectFilter = !1, candidateNodes = isFullPlaneRepaint ? planeNodes : (() => {
11263
+ if (shouldScanFullPlane(rows.length, planeNodes.length))
11264
+ return needsIntersectFilter = !0, rowBucketFallbacks.push({
11265
+ plane,
11266
+ reason: "dirty-ratio",
11267
+ dirtyRows: rows.length,
11268
+ planeNodes: planeNodes.length
11269
+ }), planeNodes;
11268
11270
  let marks = beginCandidateCollection(planeNodes), buckets = rowBuckets.get(plane);
11269
11271
  for (let y of rows) {
11270
11272
  let rowIds = buckets?.get(y);
package/dist/vue.js CHANGED
@@ -2,21 +2,21 @@ import { charCellWidth } from "./create-terminal-Db_-UGVQ.js";
2
2
  import "./ansi-palette-BHF1rN7R.js";
3
3
  import "./hyperlink-clbb_ha_.js";
4
4
  import "./dom-renderer-BfwAEQMf.js";
5
- import { EventZIndexContextKey, LayoutContextKey, RenderStackKey, TInputPluginsContextKey, TPathPickerProviderContextKey, VisibilityContextKey, injectionKey, intersectRect, padEndByCells$1 as padEndByCells, repeatChar, sanitizeInlineText, sanitizeTextBlock, sliceByCells, sliceByCellsRange, spaces, textCellWidth$1 as textCellWidth, translateRect, useLayout, useRenderNode, useRenderStack, useTerminal, useTerminalNode, useVisibility, wrapByCells } from "./rect-JzWMJxxc.js";
6
- import { clamp, createTheme, fitCellText, linkifyTextSegments, mergeStyle, tuiDefaultTheme } from "./linkify-CklfA1vp.js";
5
+ import { EventZIndexContextKey, LayoutContextKey, RenderStackKey, TInputPluginsContextKey, TPathPickerProviderContextKey, VisibilityContextKey, injectionKey, intersectRect, padEndByCells$1 as padEndByCells, repeatChar, sanitizeInlineText, sanitizeTextBlock, sliceByCells, sliceByCellsRange, spaces, textCellWidth$1 as textCellWidth, translateRect, useLayout, useRenderNode, useRenderStack, useTerminal, useTerminalNode, useVisibility, wrapByCells } from "./rect-Dfevd15m.js";
6
+ import { clamp, createTheme, fitCellText, linkifyTextSegments, mergeStyle, tuiDefaultTheme } from "./linkify-DF96jKWy.js";
7
7
  import "./runtime-Byf8XXOT.js";
8
8
  import "./frame-perf-CHpWhbC4.js";
9
9
  import "./trace-Bh8WnoMo.js";
10
10
  import "./env-Cl8qmNFN.js";
11
- import { TAutocompleteInput, TBadge, TCheckbox, TCode, TDataTable, TDivider, TForm, TFormContextKey, TFormField, TLink, TLinkifyText, TList, TPasswordInput, TProgress, TRadioGroup, TSlider, TSpinner, TSwitch, TTable, TTag, TToastViewport, TTree, TerminalProvider, createTInputHostPlugin, useTForm } from "./TTree-1JP-PZ2T.js";
11
+ import { TAutocompleteInput, TBadge, TCheckbox, TCode, TDataTable, TDivider, TForm, TFormContextKey, TFormField, TLink, TLinkifyText, TList, TPasswordInput, TProgress, TRadioGroup, TSlider, TSpinner, TSwitch, TTable, TTag, TToastViewport, TTree, TerminalProvider, createTInputHostPlugin, useTForm } from "./TTree-DqyzDB0h.js";
12
12
  import "./terminal-selection-4W1SJj4c.js";
13
13
  import "./debug-logger-CmsGI4of.js";
14
- import { TBox, TCommandPalette, TDialog, TInput, TRenderPlane, TSelect, clamp$1, computeCommandPaletteMatchRanges, createOverlayFocusStack, isCommitMention, isWhitespace, mentionChipStyle, padEndByCells as padEndByCells$1, resolveOverlayPlacement, sliceByCellsWindow, textCellWidth as textCellWidth$1 } from "./TSelect-C-WzsLAD.js";
15
- import { TText, TView } from "./frame-mailbox-DaTrfyaF.js";
14
+ import { TBox, TCommandPalette, TDialog, TInput, TRenderPlane, TSelect, clamp$1, computeCommandPaletteMatchRanges, createOverlayFocusStack, isCommitMention, isWhitespace, mentionChipStyle, padEndByCells as padEndByCells$1, resolveOverlayPlacement, sliceByCellsWindow, textCellWidth as textCellWidth$1 } from "./TSelect-CnBJET_C.js";
15
+ import { TText, TView } from "./frame-mailbox-6XHw-P8Q.js";
16
16
  import { normalizePath, stripTrailingSlash } from "./path-BI9W15Zt.js";
17
17
  import { applyWheelScroll, createWheelScrollState } from "./wheel-scroll-CQ22Hcyj.js";
18
18
  import { parsePathQuery, resolveUserPath, suggestPaths } from "./path-suggest-fPzRsgPv.js";
19
- import { TMermaid$1 as TMermaid, TMermaidText$1 as TMermaidText, isSimpleMermaidFlowchartSource, markMermaidRenderErrorFatal } from "./TMermaidText-C1akgJPU.js";
19
+ import { TMermaid$1 as TMermaid, TMermaidText$1 as TMermaidText, isSimpleMermaidFlowchartSource, markMermaidRenderErrorFatal } from "./TMermaidText-DJmYNqhh.js";
20
20
  import { Comment, Fragment, computed, defineComponent, h, inject, onBeforeUnmount, onMounted, onUnmounted, provide, reactive, ref, shallowReactive, shallowRef, watch, watchEffect } from "vue";
21
21
 
22
22
  //#region src/observability/cli-latency.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simon_he/vue-tui",
3
- "version": "1.1.12",
3
+ "version": "1.1.13",
4
4
  "description": "Vue 3 terminal UI components and renderers for browser DOM, CLI stdout, logs, markdown transcripts, and agent consoles",
5
5
  "keywords": [
6
6
  "agent-console",
@@ -259,7 +259,7 @@
259
259
  "access": "public"
260
260
  },
261
261
  "dependencies": {
262
- "stream-markdown-parser": "1.2.12"
262
+ "stream-markdown-parser": "1.2.19"
263
263
  },
264
264
  "devDependencies": {
265
265
  "@arethetypeswrong/core": "^0.18.5",