@simon_he/vue-tui 1.1.11 → 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.
@@ -1,4 +1,4 @@
1
- import { TerminalGraphicsActivityKey, intersectRect, nowTerminalGraphicTraceTime, padEndByCells$1 as padEndByCells, recordTerminalGraphicTrace, sanitizeTextBlock, sliceByCells, sliceByCellsRange, spaces, translateRect, useLayout, useRenderNode, useTerminal, useVisibility, withTextWidthProvider } from "./rect-JzWMJxxc.js";
1
+ import { TerminalGraphicsActivityKey, intersectRect, nowTerminalGraphicTraceTime, padEndByCells$1 as padEndByCells, recordTerminalGraphicTrace, sanitizeTextBlock, sliceByCells, sliceByCellsRange, spaces, translateRect, useLayout, useRenderNode, useTerminal, useVisibility, withTextWidthProvider } from "./rect-Dfevd15m.js";
2
2
  import { canDrawTerminalGraphicRect, createKittyDeleteGraphicsSequence, createKittyPlacementSequence, getTerminalGraphicsOutput, getTerminalGraphicsOutputVersion, isSafeTerminalGraphicsSequence, isTerminalGraphicsProtocol, normalizeTerminalGraphicSize, sanitizeTerminalFallbackText, stableTerminalGraphicNumericId, subscribeTerminalGraphicsOutput } from "./terminal-graphics-DpSL29OQ.js";
3
3
  import { computed, defineComponent, getCurrentInstance, h, inject, markRaw, onBeforeUnmount, shallowRef, watch } from "vue";
4
4
 
@@ -1,4 +1,4 @@
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";
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
2
  import { computed, defineComponent, getCurrentInstance, h, inject, markRaw, onBeforeUnmount, shallowRef, watch } from "vue";
3
3
 
4
4
  //#region src/vue/components/TMermaidText.ts
@@ -1,8 +1,8 @@
1
1
  import { charCellWidth, getPlaneTerminal } from "./create-terminal-Db_-UGVQ.js";
2
2
  import { hasEncodedControl } from "./hyperlink-clbb_ha_.js";
3
- import { DialogContextKey, EventZIndexContextKey, ImeAnchorContextKey, LayoutContextKey, RenderPlaneContextKey, RenderStackKey, TInputPluginsContextKey, TerminalContextKey, forEachTextCellSegment, graphemeRangeAt, hasTextWidthAsciiFastPath, intersectRect, repeatChar, sanitizeInlineText, sanitizeTextBlock, sliceByCells, spaces, textCellWidth$1 as textCellWidth, translateRect, useLayout, useRenderNode, useRenderStack, useTerminal, useTerminalNode, useVisibility, withTextWidthProvider } from "./rect-JzWMJxxc.js";
4
- import { mergeStyle } from "./linkify-CklfA1vp.js";
5
- import { TText, TView } from "./frame-mailbox-DaTrfyaF.js";
3
+ import { DialogContextKey, EventZIndexContextKey, ImeAnchorContextKey, LayoutContextKey, RenderPlaneContextKey, RenderStackKey, TInputPluginsContextKey, TerminalContextKey, forEachTextCellSegment, graphemeRangeAt, hasTextWidthAsciiFastPath, intersectRect, repeatChar, sanitizeInlineText, sanitizeTextBlock, sliceByCells, spaces, textCellWidth$1 as textCellWidth, translateRect, useLayout, useRenderNode, useRenderStack, useTerminal, useTerminalNode, useVisibility, withTextWidthProvider } from "./rect-Dfevd15m.js";
4
+ import { mergeStyle } from "./linkify-DF96jKWy.js";
5
+ import { TText, TView } from "./frame-mailbox-6XHw-P8Q.js";
6
6
  import { isAbsolutePath, normalizeNewlines, normalizePath, resolvePath } from "./path-BI9W15Zt.js";
7
7
  import { computed, defineComponent, h, inject, nextTick, onBeforeUnmount, onMounted, provide, ref, shallowReactive, shallowRef, watch, watchEffect } from "vue";
8
8
 
@@ -1,16 +1,16 @@
1
1
  import { TERMINAL_RENDER_PLANES, createTerminal, getPlaneTerminal, resetPlaneRowsForRender, scrollPlaneRows } from "./create-terminal-Db_-UGVQ.js";
2
2
  import { sanitizeDomHref } from "./hyperlink-clbb_ha_.js";
3
3
  import { DOM_RENDERER_CAPABILITIES, createDomRenderer } from "./dom-renderer-BfwAEQMf.js";
4
- import { EventZIndexContextKey, ImeAnchorContextKey, LayoutContextKey, RenderStackKey, TInputPluginsContextKey, TPathPickerProviderContextKey, TerminalContextKey, VisibilityContextKey, clearTextCaches, forEachTextCellSegment, formatInlineCellLine, injectionKey, intersectRect, normalizeCellRect, padEndByCells$1 as padEndByCells, sanitizeInlineText, sanitizeTextBlock, sliceByCells, sliceByCellsRange, spaces, textCellWidth$1 as textCellWidth, translateRect, useLayout, useRenderNode, useTerminal, useTerminalNode, useVisibility, withTextRenderPass } from "./rect-JzWMJxxc.js";
5
- import { TuiThemeContextKey, clamp, createTheme, defaultActiveStyle, defaultDimStyle, fitCellText, linkifyTextSegments, mergeStyle, repeatToCells, tuiDefaultTheme } from "./linkify-CklfA1vp.js";
4
+ import { EventZIndexContextKey, ImeAnchorContextKey, LayoutContextKey, RenderStackKey, TInputPluginsContextKey, TPathPickerProviderContextKey, TerminalContextKey, VisibilityContextKey, clearTextCaches, forEachTextCellSegment, formatInlineCellLine, injectionKey, intersectRect, normalizeCellRect, padEndByCells$1 as padEndByCells, sanitizeInlineText, sanitizeTextBlock, sliceByCells, sliceByCellsRange, spaces, textCellWidth$1 as textCellWidth, translateRect, useLayout, useRenderNode, useTerminal, useTerminalNode, useVisibility, withTextRenderPass } from "./rect-Dfevd15m.js";
5
+ import { TuiThemeContextKey, clamp, createTheme, defaultActiveStyle, defaultDimStyle, fitCellText, linkifyTextSegments, mergeStyle, repeatToCells, tuiDefaultTheme } from "./linkify-DF96jKWy.js";
6
6
  import { SUPPRESS_TERMINAL_POINTER_DOWN, SUPPRESS_TERMINAL_POINTER_MOVE, SUPPRESS_TERMINAL_POINTER_UP, createEventManager, createRuntime } from "./runtime-Byf8XXOT.js";
7
7
  import { framePerfNow, mergeFramePerfReason } from "./frame-perf-CHpWhbC4.js";
8
8
  import { createFramePerfStore, createTraceStore } from "./trace-Bh8WnoMo.js";
9
9
  import { envFlag, envString, firstNonEmptyEnv } from "./env-Cl8qmNFN.js";
10
10
  import { createTerminalSelectionController } from "./terminal-selection-4W1SJj4c.js";
11
11
  import { createDebugLogger, isDebugEnabled } from "./debug-logger-CmsGI4of.js";
12
- import { TBox, TInput, TRenderPlane, resolveOverlayPlacement } from "./TSelect-C-WzsLAD.js";
13
- import { TText, TView, createFrameMailbox } from "./frame-mailbox-DaTrfyaF.js";
12
+ import { TBox, TInput, TRenderPlane, resolveOverlayPlacement } from "./TSelect-CnBJET_C.js";
13
+ import { TText, TView, createFrameMailbox } from "./frame-mailbox-6XHw-P8Q.js";
14
14
  import { applyWheelScroll, createWheelScrollState, resetWheelScrollState } from "./wheel-scroll-CQ22Hcyj.js";
15
15
  import { computed, defineComponent, effectScope, getCurrentInstance, h, inject, nextTick, onBeforeUnmount, onMounted, onScopeDispose, onUnmounted, provide, ref, shallowReactive, shallowRef, toRef, watch, watchEffect } from "vue";
16
16
 
@@ -402,7 +402,7 @@ function createRenderManager(terminal, options = {}) {
402
402
  largeNodeIdsByPlane.clear();
403
403
  for (const node of nodes.values()) addToRowBuckets(node);
404
404
  }
405
- function shouldPromoteToFullPlaneDirty(dirtyRows, planeNodes) {
405
+ function shouldScanFullPlane(dirtyRows, planeNodes) {
406
406
  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;
407
407
  }
408
408
  function ensureRenderedRowsScratch() {
@@ -768,18 +768,8 @@ function createRenderManager(terminal, options = {}) {
768
768
  const state = planeDirtyStates.get(plane);
769
769
  if (!state || !state.allRowsDirty && state.dirtyRowCount === 0) continue;
770
770
  const planeNodes = sortedNodesByPlane.get(plane) ?? [];
771
- let isFullPlaneRepaint = state.allRowsDirty;
771
+ const isFullPlaneRepaint = state.allRowsDirty;
772
772
  let rows = allRows;
773
- if (!isFullPlaneRepaint && shouldPromoteToFullPlaneDirty(state.dirtyRowCount, planeNodes.length)) {
774
- isFullPlaneRepaint = true;
775
- state.allRowsDirty = true;
776
- rowBucketFallbacks.push({
777
- plane,
778
- reason: "dirty-ratio",
779
- dirtyRows: state.dirtyRowCount,
780
- planeNodes: planeNodes.length
781
- });
782
- }
783
773
  if (!isFullPlaneRepaint) {
784
774
  dirtyRowsScratch.length = 0;
785
775
  rows = dirtyRowsScratch;
@@ -795,6 +785,16 @@ function createRenderManager(terminal, options = {}) {
795
785
  const paintRows = isFullPlaneRepaint ? void 0 : rows;
796
786
  let needsIntersectFilter = false;
797
787
  const candidateNodes = isFullPlaneRepaint ? planeNodes : (() => {
788
+ if (shouldScanFullPlane(rows.length, planeNodes.length)) {
789
+ needsIntersectFilter = true;
790
+ rowBucketFallbacks.push({
791
+ plane,
792
+ reason: "dirty-ratio",
793
+ dirtyRows: rows.length,
794
+ planeNodes: planeNodes.length
795
+ });
796
+ return planeNodes;
797
+ }
798
798
  const marks = beginCandidateCollection(planeNodes);
799
799
  const buckets = rowBuckets.get(plane);
800
800
  for (const y of rows) {
@@ -1,7 +1,7 @@
1
- import { TerminalGraphicsActivityKey, intersectRect, textCellWidth$1 as textCellWidth, translateRect, useLayout, useTerminal, useVisibility } from "./rect-JzWMJxxc.js";
2
- import { TText, TView, createFrameMailbox } from "./frame-mailbox-DaTrfyaF.js";
1
+ import { TerminalGraphicsActivityKey, intersectRect, textCellWidth$1 as textCellWidth, translateRect, useLayout, useTerminal, useVisibility } from "./rect-Dfevd15m.js";
2
+ import { TText, TView, createFrameMailbox } from "./frame-mailbox-6XHw-P8Q.js";
3
3
  import { createTerminalGraphicPngSequence, getTerminalGraphicsOutput, getTerminalGraphicsOutputVersion, subscribeTerminalGraphicsOutput } from "./terminal-graphics-DpSL29OQ.js";
4
- import { TAgentTerminalGraphic } from "./TAgentTerminalGraphic-B8-YZfuP.js";
4
+ import { TAgentTerminalGraphic } from "./TAgentTerminalGraphic-BKDAoGoE.js";
5
5
  import { computed, defineComponent, getCurrentInstance, h, inject, markRaw, onBeforeUnmount, shallowRef, watch } from "vue";
6
6
 
7
7
  //#region src/vue/components/TVideo.ts