@simon_he/vue-tui 0.0.8 → 1.0.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.
Files changed (249) hide show
  1. package/README.md +142 -30
  2. package/dist/TSelect-BwJJbuTt.js +6089 -0
  3. package/dist/TTree-DK_DQBYm.js +6480 -0
  4. package/dist/agent.cjs +39416 -0
  5. package/dist/agent.d.cts +44 -0
  6. package/dist/agent.d.ts +44 -0
  7. package/dist/agent.js +828 -0
  8. package/dist/ansi-palette-CNXqFciC.js +57 -0
  9. package/dist/ansi-styles.d.ts +200 -0
  10. package/dist/block-source-CKUOnkgT.js +1663 -0
  11. package/dist/cli/headless-renderer.d.ts +29 -0
  12. package/dist/cli/input.d.ts +49 -0
  13. package/dist/cli/node-file-writers.d.ts +13 -0
  14. package/dist/cli/node-module.d.ts +2 -0
  15. package/dist/cli/parse-kitty.d.ts +2 -0
  16. package/dist/cli/parse-mouse.d.ts +2 -0
  17. package/dist/cli/parse-utils.d.ts +14 -0
  18. package/dist/cli/parse-xterm.d.ts +2 -0
  19. package/dist/cli/path-provider-types.d.ts +1 -0
  20. package/dist/cli/path-provider.d.ts +4 -0
  21. package/dist/cli/path-suggest-core.d.ts +1 -0
  22. package/dist/cli/path-suggest.d.ts +15 -0
  23. package/dist/cli/recording.d.ts +4 -0
  24. package/dist/cli/stdin-buffer.d.ts +33 -0
  25. package/dist/cli.cjs +11061 -0
  26. package/dist/cli.d.cts +23 -0
  27. package/dist/cli.d.ts +23 -0
  28. package/dist/cli.js +9875 -0
  29. package/dist/core/ansi/capability.d.ts +20 -0
  30. package/dist/core/ansi/colors.d.ts +41 -0
  31. package/dist/core/ansi/sgr.d.ts +7 -0
  32. package/dist/core/ansi/theme.d.ts +6 -0
  33. package/dist/core/ansi-palette.d.ts +14 -0
  34. package/dist/core/buffer/buffer.d.ts +54 -0
  35. package/dist/core/buffer/width.d.ts +4 -0
  36. package/dist/core/debug-logger.d.ts +18 -0
  37. package/dist/core/hyperlink.d.ts +9 -0
  38. package/dist/core/index.d.ts +4 -0
  39. package/dist/core/path-provider-types.d.ts +24 -0
  40. package/dist/core/path-suggest.d.ts +35 -0
  41. package/dist/core/render-plane.d.ts +3 -0
  42. package/dist/core/terminal/create-terminal.d.ts +8 -0
  43. package/dist/core/terminal/emitter.d.ts +7 -0
  44. package/dist/core/types.d.ts +107 -0
  45. package/dist/core.cjs +3153 -0
  46. package/dist/core.d.cts +14 -0
  47. package/dist/core.d.ts +14 -0
  48. package/dist/core.js +424 -0
  49. package/dist/create-terminal-C2oiWFJU.js +1434 -0
  50. package/dist/create-terminal-app.d.ts +36 -0
  51. package/dist/dom-renderer-BqGijQID.js +1173 -0
  52. package/dist/env-Cl8qmNFN.js +19 -0
  53. package/dist/events/index.d.ts +6 -0
  54. package/dist/events/manager/cli-event-manager.d.ts +22 -0
  55. package/dist/events/manager/event-manager.d.ts +30 -0
  56. package/dist/events/manager/selection-suppression.d.ts +3 -0
  57. package/dist/events/manager/types.d.ts +108 -0
  58. package/dist/events/recording.d.ts +44 -0
  59. package/dist/experimental.cjs +4412 -1641
  60. package/dist/experimental.d.cts +42 -0
  61. package/dist/experimental.d.ts +42 -825
  62. package/dist/experimental.js +31 -7392
  63. package/dist/frame-perf-C6Xfg85O.js +24 -0
  64. package/dist/hyperlink-Bn02UXJb.js +419 -0
  65. package/dist/index.cjs +14765 -17582
  66. package/dist/index.d.cts +35 -0
  67. package/dist/index.d.ts +35 -1528
  68. package/dist/index.js +17 -20026
  69. package/dist/linkify-D_gzn9Xq.js +562 -0
  70. package/dist/markdown.cjs +9321 -7623
  71. package/dist/markdown.d.cts +11 -0
  72. package/dist/markdown.d.ts +11 -112
  73. package/dist/markdown.js +36 -1427
  74. package/dist/observability/cli-latency-node.d.ts +3 -0
  75. package/dist/observability/cli-latency-types.d.ts +41 -0
  76. package/dist/observability/cli-latency.d.ts +3 -0
  77. package/dist/observability/frame-perf-store.d.ts +18 -0
  78. package/dist/observability/frame-perf.d.ts +40 -0
  79. package/dist/observability/perf-sink.d.ts +56 -0
  80. package/dist/observability/trace.d.ts +40 -0
  81. package/dist/observability/tui-profiler.d.ts +33 -0
  82. package/dist/observability.cjs +221 -0
  83. package/dist/observability.d.cts +8 -0
  84. package/dist/observability.d.ts +8 -0
  85. package/dist/observability.js +4 -0
  86. package/dist/path-mnSgEpCm.js +81 -0
  87. package/dist/path-suggest-BNqcuE3-.js +274 -0
  88. package/dist/path-suggest-Dk9TRLh5.js +3 -0
  89. package/dist/{path-suggest-DmrmeueH.js → path-suggest-bvR9SY6Q.js} +86 -18
  90. package/dist/renderer/capabilities.d.ts +13 -0
  91. package/dist/renderer/cli/index.d.ts +2 -0
  92. package/dist/renderer/cli/stdout-metrics.d.ts +18 -0
  93. package/dist/renderer/cli/stdout-renderer.d.ts +48 -0
  94. package/dist/renderer/dom/dom-renderer.d.ts +157 -0
  95. package/dist/renderer/dom/index.d.ts +2 -0
  96. package/dist/renderer/index.d.ts +2 -0
  97. package/dist/renderer-dom.cjs +1505 -0
  98. package/dist/renderer-dom.d.cts +4 -0
  99. package/dist/renderer-dom.d.ts +4 -0
  100. package/dist/renderer-dom.js +7 -0
  101. package/dist/runtime/index.d.ts +36 -0
  102. package/dist/runtime/osc52.d.ts +9 -0
  103. package/dist/runtime-rfcZCyJq.js +1197 -0
  104. package/dist/runtime.cjs +1698 -0
  105. package/dist/runtime.d.cts +9 -0
  106. package/dist/runtime.d.ts +9 -0
  107. package/dist/runtime.js +4 -0
  108. package/dist/selection/terminal-selection.d.ts +123 -0
  109. package/dist/sgr-BmzxEjAO.js +304 -0
  110. package/dist/terminal-selection-DBinO6p5.js +330 -0
  111. package/dist/tlog-theme-qPBt5rge.js +9254 -0
  112. package/dist/trace-CjzYeIxN.js +182 -0
  113. package/dist/utils/env.d.ts +3 -0
  114. package/dist/utils/grapheme.d.ts +5 -0
  115. package/dist/utils/newlines.d.ts +1 -0
  116. package/dist/utils/path.d.ts +7 -0
  117. package/dist/utils/url-safety.d.ts +2 -0
  118. package/dist/vue/agent/view-models.d.ts +98 -0
  119. package/dist/vue/components/TAnchor.d.ts +108 -0
  120. package/dist/vue/components/TBox.d.ts +144 -0
  121. package/dist/vue/components/TCommandPalette.d.ts +587 -0
  122. package/dist/vue/components/TDataTable.d.ts +367 -0
  123. package/dist/vue/components/TDebugOverlay.d.ts +43 -0
  124. package/dist/vue/components/TDialog.d.ts +255 -0
  125. package/dist/vue/components/TFeedback.d.ts +635 -0
  126. package/dist/vue/components/TFlow.d.ts +85 -0
  127. package/dist/vue/components/TForm.d.ts +1230 -0
  128. package/dist/vue/components/TInput.d.ts +545 -0
  129. package/dist/vue/components/TInputBox.d.ts +158 -0
  130. package/dist/vue/components/TJsonEditor.d.ts +165 -0
  131. package/dist/vue/components/TLink.d.ts +239 -0
  132. package/dist/vue/components/TLinkifyText.d.ts +141 -0
  133. package/dist/vue/components/TList.d.ts +119 -0
  134. package/dist/vue/components/TLogLinksPanel.d.ts +238 -0
  135. package/dist/vue/components/TLogMinimap.d.ts +263 -0
  136. package/dist/vue/components/TLogScrollbar.d.ts +236 -0
  137. package/dist/vue/components/TLogSearchBar.d.ts +267 -0
  138. package/dist/vue/components/TLogSearchPager.d.ts +162 -0
  139. package/dist/vue/components/TLogSearchResults.d.ts +200 -0
  140. package/dist/vue/components/TLogView.d.ts +536 -0
  141. package/dist/vue/components/TLogVirtualLinksPanel.d.ts +141 -0
  142. package/dist/vue/components/TLogVirtualSearchResults.d.ts +146 -0
  143. package/dist/vue/components/TMarkdownText.d.ts +134 -0
  144. package/dist/vue/components/TMultilineModal.d.ts +62 -0
  145. package/dist/vue/components/TNavigation.d.ts +324 -0
  146. package/dist/vue/components/TOverlay.d.ts +366 -0
  147. package/dist/vue/components/TPanels.d.ts +244 -0
  148. package/dist/vue/components/TPathPicker.d.ts +213 -0
  149. package/dist/vue/components/TRenderLayer.d.ts +16 -0
  150. package/dist/vue/components/TRenderPlane.d.ts +17 -0
  151. package/dist/vue/components/TSelect.d.ts +335 -0
  152. package/dist/vue/components/TTable.d.ts +317 -0
  153. package/dist/vue/components/TText.d.ts +116 -0
  154. package/dist/vue/components/TThinkingView.d.ts +233 -0
  155. package/dist/vue/components/TToolCallView.d.ts +384 -0
  156. package/dist/vue/components/TTranscriptView.d.ts +221 -0
  157. package/dist/vue/components/TTransition.d.ts +83 -0
  158. package/dist/vue/components/TTree.d.ts +200 -0
  159. package/dist/vue/components/TUserMessageView.d.ts +344 -0
  160. package/dist/vue/components/TView.d.ts +127 -0
  161. package/dist/vue/components/TVirtualList.d.ts +182 -0
  162. package/dist/vue/components/TVirtualMarkdown.d.ts +168 -0
  163. package/dist/vue/components/TVirtualRows.d.ts +247 -0
  164. package/dist/vue/components/TerminalProvider.d.ts +218 -0
  165. package/dist/vue/components/input/host.d.ts +17 -0
  166. package/dist/vue/components/input/plugins/hostPlugin.d.ts +7 -0
  167. package/dist/vue/components/input/plugins/hostPlugin.node.d.ts +15 -0
  168. package/dist/vue/components/input/plugins/mentionUtils.d.ts +17 -0
  169. package/dist/vue/components/input/plugins/nodeMentionPathProvider.d.ts +2 -0
  170. package/dist/vue/components/input/plugins/promptMentionPlugin.d.ts +8 -0
  171. package/dist/vue/components/input/plugins/promptMentionState.d.ts +98 -0
  172. package/dist/vue/components/input/plugins/restrictText.d.ts +27 -0
  173. package/dist/vue/components/input/plugins/types.d.ts +90 -0
  174. package/dist/vue/components/input/utils/inlineText.d.ts +57 -0
  175. package/dist/vue/components/input/utils/inlineTextTokens.d.ts +34 -0
  176. package/dist/vue/components/input/utils/primitives.d.ts +3 -0
  177. package/dist/vue/components/input/utils/wordNavigation.d.ts +6 -0
  178. package/dist/vue/components/link/host.d.ts +15 -0
  179. package/dist/vue/components/list/list-geometry.d.ts +16 -0
  180. package/dist/vue/components/list/list-paint.d.ts +1 -0
  181. package/dist/vue/components/list/scroll-state.d.ts +25 -0
  182. package/dist/vue/components/list/selection-state.d.ts +6 -0
  183. package/dist/vue/components/simple-utils.d.ts +5 -0
  184. package/dist/vue/components/terminal-provider/copy-toast.d.ts +6 -0
  185. package/dist/vue/components/terminal-provider/portals.d.ts +17 -0
  186. package/dist/vue/components/terminal-provider/scheduler.d.ts +29 -0
  187. package/dist/vue/components/terminal-provider/selection-config.d.ts +15 -0
  188. package/dist/vue/components/terminal-provider/utils.d.ts +5 -0
  189. package/dist/vue/composables/use-layout.d.ts +2 -0
  190. package/dist/vue/composables/use-render-node.d.ts +19 -0
  191. package/dist/vue/composables/use-render-stack.d.ts +3 -0
  192. package/dist/vue/composables/use-runtime.d.ts +5 -0
  193. package/dist/vue/composables/use-terminal-node.d.ts +14 -0
  194. package/dist/vue/composables/use-terminal.d.ts +2 -0
  195. package/dist/vue/composables/use-visibility.d.ts +12 -0
  196. package/dist/vue/context.d.ts +153 -0
  197. package/dist/vue/index.d.ts +69 -0
  198. package/dist/vue/injection-key.d.ts +2 -0
  199. package/dist/vue/linkify.d.ts +11 -0
  200. package/dist/vue/log/append-only-log-store.d.ts +2 -0
  201. package/dist/vue/log/tlog-keymap.d.ts +28 -0
  202. package/dist/vue/log/tlog-plugins.d.ts +144 -0
  203. package/dist/vue/log/tlog-session.d.ts +81 -0
  204. package/dist/vue/log/tlog-theme.d.ts +68 -0
  205. package/dist/vue/log/types.d.ts +43 -0
  206. package/dist/vue/log/use-tlog-link-controller.d.ts +31 -0
  207. package/dist/vue/log/use-tlog-retained-index.d.ts +26 -0
  208. package/dist/vue/log/use-tlog-search-controller.d.ts +51 -0
  209. package/dist/vue/log/use-tlog-search-results-page.d.ts +31 -0
  210. package/dist/vue/log/use-tlog-virtual-search-results.d.ts +22 -0
  211. package/dist/vue/markdown/ast.d.ts +3 -0
  212. package/dist/vue/markdown/block-source.d.ts +22 -0
  213. package/dist/vue/markdown/document.d.ts +20 -0
  214. package/dist/vue/markdown/layout.d.ts +21 -0
  215. package/dist/vue/markdown/parser.d.ts +11 -0
  216. package/dist/vue/markdown/render.d.ts +10 -0
  217. package/dist/vue/markdown/theme.d.ts +186 -0
  218. package/dist/vue/markdown/types.d.ts +59 -0
  219. package/dist/vue/overlay.d.ts +27 -0
  220. package/dist/vue/render/context.d.ts +3 -0
  221. package/dist/vue/render/render-manager.d.ts +94 -0
  222. package/dist/vue/router/RouterView.d.ts +25 -0
  223. package/dist/vue/router/composables.d.ts +4 -0
  224. package/dist/vue/router/context.d.ts +4 -0
  225. package/dist/vue/router/router.d.ts +7 -0
  226. package/dist/vue/router/types.d.ts +29 -0
  227. package/dist/vue/scheduler/frame-mailbox.d.ts +55 -0
  228. package/dist/vue/scheduler/frame-scheduler.d.ts +51 -0
  229. package/dist/vue/theme.d.ts +48 -0
  230. package/dist/vue/transcript/hit-regions.d.ts +2 -0
  231. package/dist/vue/transcript/layout.d.ts +20 -0
  232. package/dist/vue/transcript/plain-text.d.ts +2 -0
  233. package/dist/vue/transcript/types.d.ts +122 -0
  234. package/dist/vue/utils/frame-task.d.ts +6 -0
  235. package/dist/vue/utils/rect.d.ts +4 -0
  236. package/dist/vue/utils/row-scroll.d.ts +25 -0
  237. package/dist/vue/utils/style-cache.d.ts +3 -0
  238. package/dist/vue/utils/text.d.ts +27 -0
  239. package/dist/vue/utils/wheel-scroll.d.ts +18 -0
  240. package/dist/vue.cjs +23668 -0
  241. package/dist/vue.d.cts +1 -0
  242. package/dist/vue.d.ts +1 -0
  243. package/dist/vue.js +3957 -0
  244. package/dist/{wheel-scroll-CiNsasLf.js → wheel-scroll-vBRaQ7p-.js} +404 -405
  245. package/package.json +185 -35
  246. package/dist/path-suggest-BeV6n7m-.js +0 -3
  247. package/dist/sgr-Tko2EQ0U.js +0 -484
  248. package/dist/theme-Bsm65g8k.d.ts +0 -32
  249. package/dist/types-ClIV2h1o.d.ts +0 -103
@@ -0,0 +1,536 @@
1
+ import type { PropType } from "vue";
2
+ import type { Style } from "../../core/types.js";
3
+ import type { TLogDataSource, TLogViewVisualIndexOptions, TLogViewVisualIndexStatus } from "../log/types.js";
4
+ import type { TLinkifyOptions } from "../linkify.js";
5
+ type RowScrollMode = "off" | "unsafe-full-row";
6
+ type TLogSearchStatus = "idle" | "scanning" | "done" | "error";
7
+ export type TLogViewSearchMode = "text" | "regex";
8
+ export type TLogViewSearchError = Readonly<{
9
+ kind: "invalid-regex";
10
+ query: string;
11
+ flags: string;
12
+ message: string;
13
+ }>;
14
+ export type TLogViewSearchOptions = Readonly<{
15
+ mode?: TLogViewSearchMode;
16
+ caseSensitive?: boolean;
17
+ wholeWord?: boolean;
18
+ maxMatches?: number;
19
+ scanBudgetMs?: number;
20
+ regexFlags?: string;
21
+ maxMatchesPerLine?: number;
22
+ }>;
23
+ export type TLogViewSearchMatch = Readonly<{
24
+ absoluteLineIndex: number;
25
+ index: number;
26
+ startCell: number;
27
+ endCell: number;
28
+ text: string;
29
+ }>;
30
+ export type TLogViewSelectSearchMatchOptions = Readonly<{
31
+ scroll?: boolean;
32
+ align?: "start" | "center" | "end";
33
+ }>;
34
+ export type TLogViewSearchResult = Readonly<{
35
+ matchIndex: number;
36
+ match: TLogViewSearchMatch;
37
+ preview?: TLogViewSearchResultPreview;
38
+ }>;
39
+ export type TLogViewSearchResultPreview = Readonly<{
40
+ text: string;
41
+ matchStartCell: number;
42
+ matchEndCell: number;
43
+ }>;
44
+ export type TLogViewSearchResultsOptions = Readonly<{
45
+ offset?: number;
46
+ limit?: number;
47
+ includePreview?: boolean;
48
+ previewWidth?: number;
49
+ contextCells?: number;
50
+ }>;
51
+ export type TLogViewSearchState = Readonly<{
52
+ query: string;
53
+ status: TLogSearchStatus;
54
+ matchCount: number;
55
+ currentMatchIndex: number;
56
+ error?: TLogViewSearchError | null;
57
+ }>;
58
+ export type TLogViewSearchPayload = Readonly<{
59
+ query: string;
60
+ status: TLogSearchStatus;
61
+ matchCount: number;
62
+ error?: TLogViewSearchError | null;
63
+ }>;
64
+ export type TLogViewSearchMatchPayload = Readonly<{
65
+ match: TLogViewSearchMatch | null;
66
+ currentMatchIndex: number;
67
+ matchCount: number;
68
+ }>;
69
+ export type TLogViewSearchMarker = Readonly<{
70
+ matchIndex: number;
71
+ absoluteLineIndex: number;
72
+ index: number;
73
+ visualRow: number;
74
+ estimated: boolean;
75
+ current: boolean;
76
+ }>;
77
+ export type TLogViewSearchMarkersPayload = Readonly<{
78
+ markers: readonly TLogViewSearchMarker[];
79
+ visualIndexStatus: TLogViewVisualIndexStatus;
80
+ matchCount: number;
81
+ currentMatchIndex: number;
82
+ }>;
83
+ export type TLogViewLinkClickPayload = Readonly<{
84
+ href: string;
85
+ text: string;
86
+ absoluteLineIndex: number;
87
+ index: number;
88
+ startCell: number;
89
+ endCell: number;
90
+ cellX: number;
91
+ cellY: number;
92
+ }>;
93
+ export type TLogViewVisibleLink = Readonly<{
94
+ visibleIndex: number;
95
+ href: string;
96
+ text: string;
97
+ absoluteLineIndex: number;
98
+ index: number;
99
+ startCell: number;
100
+ endCell: number;
101
+ startX: number;
102
+ endX: number;
103
+ y: number;
104
+ focused?: boolean;
105
+ }>;
106
+ export type TLogViewLinkFocusPayload = Readonly<{
107
+ link: TLogViewVisibleLink | null;
108
+ focusedLinkIndex: number;
109
+ }>;
110
+ export type TLogViewLinkActivatePayload = Readonly<{
111
+ link: TLogViewVisibleLink;
112
+ source: "keyboard" | "programmatic";
113
+ }>;
114
+ export type TLogViewVisualIndexPayload = Readonly<{
115
+ status: TLogViewVisualIndexStatus;
116
+ lineCount: number;
117
+ measuredLineCount: number;
118
+ estimatedVisualRowCount: number;
119
+ visualRowCount: number;
120
+ }>;
121
+ export type TLogViewScrollMetrics = Readonly<{
122
+ scrollTop: number;
123
+ maxScrollTop: number;
124
+ viewportRows: number;
125
+ lineCount: number;
126
+ firstLineIndex: number;
127
+ estimatedVisualRowCount: number;
128
+ visualRowCount: number;
129
+ measuredVisualRowCount: number;
130
+ measuredLineCount: number;
131
+ visualIndexStatus: TLogViewVisualIndexStatus;
132
+ atTop: boolean;
133
+ atBottom: boolean;
134
+ }>;
135
+ export type TLogViewHandle = Readonly<{
136
+ scrollToBottom: () => void;
137
+ scrollToTop: () => void;
138
+ scrollToVisualRow: (row: number) => void;
139
+ scrollBy: (delta: number) => void;
140
+ scrollToLine: (index: number, options?: Readonly<{
141
+ align?: "start" | "center" | "end";
142
+ }>) => void;
143
+ refreshViewport: () => void;
144
+ invalidateLine: (index: number) => void;
145
+ invalidateRange: (start: number, end: number) => void;
146
+ findNext: () => void;
147
+ findPrevious: () => void;
148
+ clearSearch: () => void;
149
+ getSearchState: () => TLogViewSearchState;
150
+ selectSearchMatch: (matchIndex: number, options?: TLogViewSelectSearchMatchOptions) => boolean;
151
+ getSearchMatch: (matchIndex: number) => TLogViewSearchMatch | null;
152
+ getSearchResults: (options?: TLogViewSearchResultsOptions) => readonly TLogViewSearchResult[];
153
+ measureVisualIndex: () => void;
154
+ getScrollMetrics: () => TLogViewScrollMetrics;
155
+ getSearchMarkers: () => readonly TLogViewSearchMarker[];
156
+ getVisibleLinks: () => readonly TLogViewVisibleLink[];
157
+ focusVisibleLink: (visibleIndex: number) => boolean;
158
+ focusNextLink: () => boolean;
159
+ focusPreviousLink: () => boolean;
160
+ clearLinkFocus: () => void;
161
+ activateFocusedLink: () => boolean;
162
+ }>;
163
+ export declare const TLogView: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
164
+ x: {
165
+ type: NumberConstructor;
166
+ required: true;
167
+ };
168
+ y: {
169
+ type: NumberConstructor;
170
+ required: true;
171
+ };
172
+ w: {
173
+ type: NumberConstructor;
174
+ required: true;
175
+ };
176
+ h: {
177
+ type: NumberConstructor;
178
+ required: true;
179
+ };
180
+ zIndex: {
181
+ type: NumberConstructor;
182
+ default: number;
183
+ };
184
+ source: {
185
+ type: PropType<TLogDataSource>;
186
+ required: true;
187
+ };
188
+ version: {
189
+ type: NumberConstructor;
190
+ required: true;
191
+ };
192
+ scrollTop: {
193
+ type: NumberConstructor;
194
+ default: undefined;
195
+ };
196
+ defaultScrollTop: {
197
+ type: NumberConstructor;
198
+ default: undefined;
199
+ };
200
+ style: {
201
+ type: PropType<Style>;
202
+ default: undefined;
203
+ };
204
+ autoFocus: {
205
+ type: BooleanConstructor;
206
+ default: boolean;
207
+ };
208
+ selectable: {
209
+ type: BooleanConstructor;
210
+ default: boolean;
211
+ };
212
+ autoStickToBottom: {
213
+ type: BooleanConstructor;
214
+ default: boolean;
215
+ };
216
+ overscan: {
217
+ type: NumberConstructor;
218
+ default: number;
219
+ };
220
+ wrap: {
221
+ type: BooleanConstructor;
222
+ default: boolean;
223
+ };
224
+ visualIndexMode: {
225
+ type: PropType<"estimated" | "exact">;
226
+ default: string;
227
+ };
228
+ visualIndexOptions: {
229
+ type: PropType<TLogViewVisualIndexOptions>;
230
+ default: undefined;
231
+ };
232
+ ansi: {
233
+ type: BooleanConstructor;
234
+ default: boolean;
235
+ };
236
+ /**
237
+ * Parses OSC8 links only with ansi=true; OSC8 links preserve parsed ANSI style and
238
+ * do not inherit TLink theme defaults.
239
+ */
240
+ links: {
241
+ type: BooleanConstructor;
242
+ default: boolean;
243
+ };
244
+ /**
245
+ * Plain-text URL linkification for ansi=false rows; generated links inherit TLink
246
+ * theme defaults before linkStyle.
247
+ */
248
+ linkify: {
249
+ type: PropType<boolean | TLinkifyOptions>;
250
+ default: boolean;
251
+ };
252
+ /**
253
+ * Link style override. OSC8 defaults to underline-only over parsed ANSI style;
254
+ * linkify also inherits TLink theme defaults.
255
+ */
256
+ linkStyle: {
257
+ type: PropType<Style>;
258
+ default: undefined;
259
+ };
260
+ keyboardLinks: {
261
+ type: BooleanConstructor;
262
+ default: boolean;
263
+ };
264
+ linkFocusStyle: {
265
+ type: PropType<Style>;
266
+ default: () => {
267
+ inverse: boolean;
268
+ };
269
+ };
270
+ searchQuery: {
271
+ type: StringConstructor;
272
+ default: string;
273
+ };
274
+ searchOptions: {
275
+ type: PropType<TLogViewSearchOptions>;
276
+ default: undefined;
277
+ };
278
+ highlightMatches: {
279
+ type: BooleanConstructor;
280
+ default: boolean;
281
+ };
282
+ matchStyle: {
283
+ type: PropType<Style>;
284
+ default: () => {
285
+ inverse: boolean;
286
+ };
287
+ };
288
+ currentMatchStyle: {
289
+ type: PropType<Style>;
290
+ default: () => {
291
+ inverse: boolean;
292
+ bold: boolean;
293
+ };
294
+ };
295
+ rowScrollMode: {
296
+ type: PropType<RowScrollMode>;
297
+ default: string;
298
+ };
299
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
300
+ [key: string]: any;
301
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("keydown" | "focus" | "blur" | "search" | "scroll" | "update:scrollTop" | "linkClick" | "update:searchQuery" | "searchMatch" | "searchMarkers" | "linkFocus" | "linkActivate" | "visualIndex")[], "keydown" | "focus" | "blur" | "search" | "scroll" | "update:scrollTop" | "linkClick" | "update:searchQuery" | "searchMatch" | "searchMarkers" | "linkFocus" | "linkActivate" | "visualIndex", (import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps), Readonly<import("vue").ExtractPropTypes<{
302
+ x: {
303
+ type: NumberConstructor;
304
+ required: true;
305
+ };
306
+ y: {
307
+ type: NumberConstructor;
308
+ required: true;
309
+ };
310
+ w: {
311
+ type: NumberConstructor;
312
+ required: true;
313
+ };
314
+ h: {
315
+ type: NumberConstructor;
316
+ required: true;
317
+ };
318
+ zIndex: {
319
+ type: NumberConstructor;
320
+ default: number;
321
+ };
322
+ source: {
323
+ type: PropType<TLogDataSource>;
324
+ required: true;
325
+ };
326
+ version: {
327
+ type: NumberConstructor;
328
+ required: true;
329
+ };
330
+ scrollTop: {
331
+ type: NumberConstructor;
332
+ default: undefined;
333
+ };
334
+ defaultScrollTop: {
335
+ type: NumberConstructor;
336
+ default: undefined;
337
+ };
338
+ style: {
339
+ type: PropType<Style>;
340
+ default: undefined;
341
+ };
342
+ autoFocus: {
343
+ type: BooleanConstructor;
344
+ default: boolean;
345
+ };
346
+ selectable: {
347
+ type: BooleanConstructor;
348
+ default: boolean;
349
+ };
350
+ autoStickToBottom: {
351
+ type: BooleanConstructor;
352
+ default: boolean;
353
+ };
354
+ overscan: {
355
+ type: NumberConstructor;
356
+ default: number;
357
+ };
358
+ wrap: {
359
+ type: BooleanConstructor;
360
+ default: boolean;
361
+ };
362
+ visualIndexMode: {
363
+ type: PropType<"estimated" | "exact">;
364
+ default: string;
365
+ };
366
+ visualIndexOptions: {
367
+ type: PropType<TLogViewVisualIndexOptions>;
368
+ default: undefined;
369
+ };
370
+ ansi: {
371
+ type: BooleanConstructor;
372
+ default: boolean;
373
+ };
374
+ /**
375
+ * Parses OSC8 links only with ansi=true; OSC8 links preserve parsed ANSI style and
376
+ * do not inherit TLink theme defaults.
377
+ */
378
+ links: {
379
+ type: BooleanConstructor;
380
+ default: boolean;
381
+ };
382
+ /**
383
+ * Plain-text URL linkification for ansi=false rows; generated links inherit TLink
384
+ * theme defaults before linkStyle.
385
+ */
386
+ linkify: {
387
+ type: PropType<boolean | TLinkifyOptions>;
388
+ default: boolean;
389
+ };
390
+ /**
391
+ * Link style override. OSC8 defaults to underline-only over parsed ANSI style;
392
+ * linkify also inherits TLink theme defaults.
393
+ */
394
+ linkStyle: {
395
+ type: PropType<Style>;
396
+ default: undefined;
397
+ };
398
+ keyboardLinks: {
399
+ type: BooleanConstructor;
400
+ default: boolean;
401
+ };
402
+ linkFocusStyle: {
403
+ type: PropType<Style>;
404
+ default: () => {
405
+ inverse: boolean;
406
+ };
407
+ };
408
+ searchQuery: {
409
+ type: StringConstructor;
410
+ default: string;
411
+ };
412
+ searchOptions: {
413
+ type: PropType<TLogViewSearchOptions>;
414
+ default: undefined;
415
+ };
416
+ highlightMatches: {
417
+ type: BooleanConstructor;
418
+ default: boolean;
419
+ };
420
+ matchStyle: {
421
+ type: PropType<Style>;
422
+ default: () => {
423
+ inverse: boolean;
424
+ };
425
+ };
426
+ currentMatchStyle: {
427
+ type: PropType<Style>;
428
+ default: () => {
429
+ inverse: boolean;
430
+ bold: boolean;
431
+ };
432
+ };
433
+ rowScrollMode: {
434
+ type: PropType<RowScrollMode>;
435
+ default: string;
436
+ };
437
+ }>> & Readonly<{
438
+ onLinkClick?: ((...args: any[]) => any) | undefined;
439
+ onKeydown?: ((...args: any[]) => any) | undefined;
440
+ onFocus?: ((...args: any[]) => any) | undefined;
441
+ onBlur?: ((...args: any[]) => any) | undefined;
442
+ onScroll?: ((...args: any[]) => any) | undefined;
443
+ "onUpdate:scrollTop"?: ((...args: any[]) => any) | undefined;
444
+ onSearch?: ((...args: any[]) => any) | undefined;
445
+ "onUpdate:searchQuery"?: ((...args: any[]) => any) | undefined;
446
+ onSearchMatch?: ((...args: any[]) => any) | undefined;
447
+ onSearchMarkers?: ((...args: any[]) => any) | undefined;
448
+ onLinkFocus?: ((...args: any[]) => any) | undefined;
449
+ onLinkActivate?: ((...args: any[]) => any) | undefined;
450
+ onVisualIndex?: ((...args: any[]) => any) | undefined;
451
+ }>, {
452
+ style: Readonly<{
453
+ fg?: string;
454
+ bg?: string;
455
+ bold?: boolean;
456
+ dim?: boolean;
457
+ italic?: boolean;
458
+ underline?: boolean;
459
+ inverse?: boolean;
460
+ href?: string;
461
+ }>;
462
+ links: boolean;
463
+ zIndex: number;
464
+ selectable: boolean;
465
+ wrap: boolean;
466
+ autoFocus: boolean;
467
+ matchStyle: Readonly<{
468
+ fg?: string;
469
+ bg?: string;
470
+ bold?: boolean;
471
+ dim?: boolean;
472
+ italic?: boolean;
473
+ underline?: boolean;
474
+ inverse?: boolean;
475
+ href?: string;
476
+ }>;
477
+ rowScrollMode: RowScrollMode;
478
+ scrollTop: number;
479
+ defaultScrollTop: number;
480
+ autoStickToBottom: boolean;
481
+ overscan: number;
482
+ visualIndexMode: "estimated" | "exact";
483
+ visualIndexOptions: Readonly<{
484
+ measureBudgetMs?: number;
485
+ maxMeasuredLines?: number;
486
+ }>;
487
+ ansi: boolean;
488
+ linkify: boolean | Readonly<{
489
+ protocols?: readonly import("../linkify.js").TLinkifyProtocol[];
490
+ allowRelative?: boolean;
491
+ maxUrlLength?: number;
492
+ }>;
493
+ linkStyle: Readonly<{
494
+ fg?: string;
495
+ bg?: string;
496
+ bold?: boolean;
497
+ dim?: boolean;
498
+ italic?: boolean;
499
+ underline?: boolean;
500
+ inverse?: boolean;
501
+ href?: string;
502
+ }>;
503
+ keyboardLinks: boolean;
504
+ linkFocusStyle: Readonly<{
505
+ fg?: string;
506
+ bg?: string;
507
+ bold?: boolean;
508
+ dim?: boolean;
509
+ italic?: boolean;
510
+ underline?: boolean;
511
+ inverse?: boolean;
512
+ href?: string;
513
+ }>;
514
+ searchQuery: string;
515
+ searchOptions: Readonly<{
516
+ mode?: TLogViewSearchMode;
517
+ caseSensitive?: boolean;
518
+ wholeWord?: boolean;
519
+ maxMatches?: number;
520
+ scanBudgetMs?: number;
521
+ regexFlags?: string;
522
+ maxMatchesPerLine?: number;
523
+ }>;
524
+ highlightMatches: boolean;
525
+ currentMatchStyle: Readonly<{
526
+ fg?: string;
527
+ bg?: string;
528
+ bold?: boolean;
529
+ dim?: boolean;
530
+ italic?: boolean;
531
+ underline?: boolean;
532
+ inverse?: boolean;
533
+ href?: string;
534
+ }>;
535
+ }, {}>;
536
+ export {};
@@ -0,0 +1,141 @@
1
+ import type { PropType } from "vue";
2
+ import type { Style } from "../../core/types.js";
3
+ import type { RowScrollMode } from "./TVirtualList.js";
4
+ import type { TLogLinkPanelItem } from "./TLogLinksPanel.js";
5
+ export declare const TLogVirtualLinksPanel: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
6
+ x: {
7
+ type: NumberConstructor;
8
+ required: true;
9
+ };
10
+ y: {
11
+ type: NumberConstructor;
12
+ required: true;
13
+ };
14
+ w: {
15
+ type: NumberConstructor;
16
+ required: true;
17
+ };
18
+ h: {
19
+ type: NumberConstructor;
20
+ required: true;
21
+ };
22
+ zIndex: {
23
+ type: NumberConstructor;
24
+ default: number;
25
+ };
26
+ links: {
27
+ type: PropType<readonly TLogLinkPanelItem[]>;
28
+ default: () => never[];
29
+ };
30
+ modelValue: {
31
+ type: NumberConstructor;
32
+ default: number;
33
+ };
34
+ style: {
35
+ type: PropType<Style>;
36
+ default: undefined;
37
+ };
38
+ activeStyle: {
39
+ type: PropType<Style>;
40
+ default: undefined;
41
+ };
42
+ showLineNumbers: {
43
+ type: BooleanConstructor;
44
+ default: boolean;
45
+ };
46
+ rowScrollMode: {
47
+ type: PropType<RowScrollMode>;
48
+ default: string;
49
+ };
50
+ }>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
51
+ [key: string]: any;
52
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("keydown" | "focus" | "blur" | "select" | "scroll" | "update:modelValue" | "activeChange" | "activate")[], "keydown" | "focus" | "blur" | "select" | "scroll" | "update:modelValue" | "activeChange" | "activate", (import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps), Readonly<import("vue").ExtractPropTypes<{
53
+ x: {
54
+ type: NumberConstructor;
55
+ required: true;
56
+ };
57
+ y: {
58
+ type: NumberConstructor;
59
+ required: true;
60
+ };
61
+ w: {
62
+ type: NumberConstructor;
63
+ required: true;
64
+ };
65
+ h: {
66
+ type: NumberConstructor;
67
+ required: true;
68
+ };
69
+ zIndex: {
70
+ type: NumberConstructor;
71
+ default: number;
72
+ };
73
+ links: {
74
+ type: PropType<readonly TLogLinkPanelItem[]>;
75
+ default: () => never[];
76
+ };
77
+ modelValue: {
78
+ type: NumberConstructor;
79
+ default: number;
80
+ };
81
+ style: {
82
+ type: PropType<Style>;
83
+ default: undefined;
84
+ };
85
+ activeStyle: {
86
+ type: PropType<Style>;
87
+ default: undefined;
88
+ };
89
+ showLineNumbers: {
90
+ type: BooleanConstructor;
91
+ default: boolean;
92
+ };
93
+ rowScrollMode: {
94
+ type: PropType<RowScrollMode>;
95
+ default: string;
96
+ };
97
+ }>> & Readonly<{
98
+ onActivate?: ((...args: any[]) => any) | undefined;
99
+ onKeydown?: ((...args: any[]) => any) | undefined;
100
+ onFocus?: ((...args: any[]) => any) | undefined;
101
+ onBlur?: ((...args: any[]) => any) | undefined;
102
+ onSelect?: ((...args: any[]) => any) | undefined;
103
+ onScroll?: ((...args: any[]) => any) | undefined;
104
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
105
+ onActiveChange?: ((...args: any[]) => any) | undefined;
106
+ }>, {
107
+ style: Readonly<{
108
+ fg?: string;
109
+ bg?: string;
110
+ bold?: boolean;
111
+ dim?: boolean;
112
+ italic?: boolean;
113
+ underline?: boolean;
114
+ inverse?: boolean;
115
+ href?: string;
116
+ }>;
117
+ links: readonly Readonly<{
118
+ visibleIndex: number;
119
+ href: string;
120
+ text: string;
121
+ absoluteLineIndex: number;
122
+ index: number;
123
+ startCell: number;
124
+ endCell: number;
125
+ current?: boolean;
126
+ }>[];
127
+ zIndex: number;
128
+ modelValue: number;
129
+ rowScrollMode: RowScrollMode;
130
+ activeStyle: Readonly<{
131
+ fg?: string;
132
+ bg?: string;
133
+ bold?: boolean;
134
+ dim?: boolean;
135
+ italic?: boolean;
136
+ underline?: boolean;
137
+ inverse?: boolean;
138
+ href?: string;
139
+ }>;
140
+ showLineNumbers: boolean;
141
+ }, {}>;