@nbtca/prompt 1.0.7 → 1.0.9
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/README.md +57 -7
- package/dist/config/data.d.ts +1 -1
- package/dist/config/data.js +1 -1
- package/dist/features/docs.d.ts.map +1 -1
- package/dist/features/docs.js +122 -8
- package/dist/features/docs.js.map +1 -1
- package/package.json +1 -1
- package/src/config/data.ts +1 -1
- package/src/features/docs.ts +156 -8
package/README.md
CHANGED
|
@@ -13,8 +13,11 @@ NBTCA Prompt is a minimalist command-line interface tool designed for the Comput
|
|
|
13
13
|
|
|
14
14
|
- View upcoming association events (30-day calendar)
|
|
15
15
|
- Access repair service information
|
|
16
|
-
- Browse technical documentation from terminal with
|
|
16
|
+
- Browse technical documentation from terminal with adaptive rendering
|
|
17
|
+
- Smart terminal capability detection (basic/enhanced/advanced)
|
|
18
|
+
- Optimized markdown display for different terminal types
|
|
17
19
|
- Quick links to official website and GitHub
|
|
20
|
+
- Multi-language support (English/中文)
|
|
18
21
|
- Minimalist design with maximum terminal compatibility
|
|
19
22
|
- Smooth gradient animations for enhanced visual experience
|
|
20
23
|
|
|
@@ -134,8 +137,13 @@ The knowledge base viewer features:
|
|
|
134
137
|
|
|
135
138
|
- Direct GitHub repository access with authentication support
|
|
136
139
|
- Pager-style document reading (similar to vim/journalctl/less)
|
|
140
|
+
- **Adaptive terminal rendering** - detects and optimizes for your terminal type
|
|
141
|
+
- **Smart image handling** - displays images based on terminal capabilities
|
|
142
|
+
- **Terminal type detection** - automatically detects basic/enhanced/advanced terminals
|
|
137
143
|
- VitePress syntax cleaning
|
|
138
144
|
- Terminal Markdown rendering with color support
|
|
145
|
+
- Optimized text width for better readability (max 100 columns)
|
|
146
|
+
- Beautiful Unicode table borders (or ASCII for basic terminals)
|
|
139
147
|
- Browser fallback option
|
|
140
148
|
- Directory tree navigation
|
|
141
149
|
- Improved error handling with rate limit detection
|
|
@@ -161,14 +169,34 @@ Without a token, you have 60 requests per hour. With a token, you get 5000 reque
|
|
|
161
169
|
|
|
162
170
|
## Terminal Compatibility
|
|
163
171
|
|
|
164
|
-
Designed for maximum compatibility with:
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
-
|
|
168
|
-
-
|
|
172
|
+
Designed for maximum compatibility with adaptive rendering:
|
|
173
|
+
|
|
174
|
+
### Advanced Terminals (Full Features)
|
|
175
|
+
- iTerm2 (macOS) - Image support + Unicode + Colors
|
|
176
|
+
- Kitty - Image support + Unicode + Colors
|
|
177
|
+
- WezTerm - Image support + Unicode + Colors
|
|
178
|
+
- Terminals with Sixel support
|
|
179
|
+
|
|
180
|
+
### Enhanced Terminals (Unicode + Colors)
|
|
181
|
+
- GNOME Terminal
|
|
182
|
+
- Windows Terminal
|
|
183
|
+
- Alacritty
|
|
184
|
+
- Hyper
|
|
185
|
+
- Konsole
|
|
186
|
+
- Terminator
|
|
187
|
+
|
|
188
|
+
### Basic Terminals (Universal Compatibility)
|
|
189
|
+
- xterm
|
|
190
|
+
- Terminal.app (legacy)
|
|
191
|
+
- Basic SSH sessions
|
|
169
192
|
- Screen/tmux multiplexers
|
|
170
193
|
|
|
171
|
-
|
|
194
|
+
The application automatically detects your terminal capabilities and adapts:
|
|
195
|
+
- **Basic**: Simple ASCII characters, text-only images
|
|
196
|
+
- **Enhanced**: Unicode box-drawing, formatted image references
|
|
197
|
+
- **Advanced**: Full Unicode + image support (when available)
|
|
198
|
+
|
|
199
|
+
ASCII-based fallbacks ensure rendering on any terminal emulator.
|
|
172
200
|
|
|
173
201
|
## System Requirements
|
|
174
202
|
|
|
@@ -229,6 +257,28 @@ MIT License - See LICENSE file for details
|
|
|
229
257
|
|
|
230
258
|
## Changelog
|
|
231
259
|
|
|
260
|
+
### v1.0.9 (2025-12-10)
|
|
261
|
+
|
|
262
|
+
- **Fixed**: Version display in application UI now correctly shows 1.0.9
|
|
263
|
+
- **Note**: v1.0.8 was published but displayed incorrect version number in UI
|
|
264
|
+
|
|
265
|
+
### v1.0.8 (2025-12-10)
|
|
266
|
+
|
|
267
|
+
- **Added**: Adaptive terminal rendering with automatic capability detection
|
|
268
|
+
- **Added**: Smart terminal type detection (basic/enhanced/advanced)
|
|
269
|
+
- **Added**: Intelligent image handling based on terminal capabilities
|
|
270
|
+
- **Added**: Terminal info display in knowledge base menu
|
|
271
|
+
- **Improved**: Markdown table rendering with Unicode box-drawing characters
|
|
272
|
+
- **Improved**: Optimized text width for better readability (max 100 columns)
|
|
273
|
+
- **Enhanced**: HTML tag stripping for cleaner terminal display
|
|
274
|
+
- **Technical**: Supports iTerm2, Kitty, WezTerm, and other image-capable terminals
|
|
275
|
+
|
|
276
|
+
### v1.0.7 (2025-12-10)
|
|
277
|
+
|
|
278
|
+
- **Added**: Multi-language support (i18n) - English and Chinese
|
|
279
|
+
- **Fixed**: Locale file inclusion in build process
|
|
280
|
+
- **Improved**: Internationalized UI messages and prompts
|
|
281
|
+
|
|
232
282
|
### v1.0.5 (2025-12-10)
|
|
233
283
|
|
|
234
284
|
- **Fixed**: Knowledge Base 403 error due to GitHub API rate limiting
|
package/dist/config/data.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ export declare const URLS: {
|
|
|
12
12
|
};
|
|
13
13
|
export declare const APP_INFO: {
|
|
14
14
|
readonly name: "Prompt";
|
|
15
|
-
readonly version: "1.0.
|
|
15
|
+
readonly version: "1.0.9";
|
|
16
16
|
readonly description: "浙大宁波理工学院计算机协会";
|
|
17
17
|
readonly fullDescription: "NBTCA Prompt - 极简命令行工具";
|
|
18
18
|
readonly author: "m1ngsama <contact@m1ng.space>";
|
package/dist/config/data.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../src/features/docs.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../src/features/docs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA2fH;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAcpE;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAsDlD"}
|
package/dist/features/docs.js
CHANGED
|
@@ -11,10 +11,92 @@ import inquirer from 'inquirer';
|
|
|
11
11
|
import { error, info, success, warning } from '../core/ui.js';
|
|
12
12
|
import { spawn } from 'child_process';
|
|
13
13
|
import { t } from '../i18n/index.js';
|
|
14
|
-
|
|
14
|
+
/**
|
|
15
|
+
* Detect terminal capabilities
|
|
16
|
+
*/
|
|
17
|
+
function detectTerminalCapabilities() {
|
|
18
|
+
const term = (process.env['TERM'] || '').toLowerCase();
|
|
19
|
+
const termProgram = (process.env['TERM_PROGRAM'] || '').toLowerCase();
|
|
20
|
+
const colorTerm = process.env['COLORTERM'];
|
|
21
|
+
// Detect image support (iTerm2, Kitty, WezTerm, etc.)
|
|
22
|
+
const supportsImages = termProgram.includes('iterm') ||
|
|
23
|
+
term.includes('kitty') ||
|
|
24
|
+
termProgram.includes('wezterm') ||
|
|
25
|
+
term.includes('sixel');
|
|
26
|
+
// Detect color support
|
|
27
|
+
const supportsColor = colorTerm !== undefined ||
|
|
28
|
+
term.includes('color') ||
|
|
29
|
+
term.includes('256') ||
|
|
30
|
+
term.includes('ansi') ||
|
|
31
|
+
termProgram !== '';
|
|
32
|
+
// Detect Unicode support
|
|
33
|
+
const supportsUnicode = (process.env['LANG'] || '').includes('UTF-8') ||
|
|
34
|
+
(process.env['LC_ALL'] || '').includes('UTF-8');
|
|
35
|
+
// Determine terminal type
|
|
36
|
+
let terminalType = 'basic';
|
|
37
|
+
if (supportsImages && supportsColor && supportsUnicode) {
|
|
38
|
+
terminalType = 'advanced';
|
|
39
|
+
}
|
|
40
|
+
else if (supportsColor && supportsUnicode) {
|
|
41
|
+
terminalType = 'enhanced';
|
|
42
|
+
}
|
|
43
|
+
return {
|
|
44
|
+
supportsColor,
|
|
45
|
+
supportsImages,
|
|
46
|
+
supportsUnicode,
|
|
47
|
+
terminalType
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Get marked-terminal renderer options based on terminal capabilities
|
|
52
|
+
*/
|
|
53
|
+
function getRendererOptions(capabilities) {
|
|
54
|
+
// Text width for better readability
|
|
55
|
+
const width = Math.min(process.stdout.columns || 80, 100);
|
|
56
|
+
// For basic terminals, use simpler ASCII characters
|
|
57
|
+
if (capabilities.terminalType === 'basic') {
|
|
58
|
+
return {
|
|
59
|
+
width,
|
|
60
|
+
tableOptions: {
|
|
61
|
+
chars: {
|
|
62
|
+
top: '-', 'top-mid': '+', 'top-left': '+', 'top-right': '+',
|
|
63
|
+
bottom: '-', 'bottom-mid': '+', 'bottom-left': '+', 'bottom-right': '+',
|
|
64
|
+
left: '|', 'left-mid': '+', mid: '-', 'mid-mid': '+',
|
|
65
|
+
right: '|', 'right-mid': '+', middle: '|'
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
// For enhanced and advanced terminals, use Unicode box-drawing characters
|
|
71
|
+
return {
|
|
72
|
+
width,
|
|
73
|
+
tableOptions: {
|
|
74
|
+
chars: {
|
|
75
|
+
top: '─',
|
|
76
|
+
'top-mid': '┬',
|
|
77
|
+
'top-left': '┌',
|
|
78
|
+
'top-right': '┐',
|
|
79
|
+
bottom: '─',
|
|
80
|
+
'bottom-mid': '┴',
|
|
81
|
+
'bottom-left': '└',
|
|
82
|
+
'bottom-right': '┘',
|
|
83
|
+
left: '│',
|
|
84
|
+
'left-mid': '├',
|
|
85
|
+
mid: '─',
|
|
86
|
+
'mid-mid': '┼',
|
|
87
|
+
right: '│',
|
|
88
|
+
'right-mid': '┤',
|
|
89
|
+
middle: '│'
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
// Detect terminal capabilities once at startup
|
|
95
|
+
const terminalCapabilities = detectTerminalCapabilities();
|
|
96
|
+
// Configure marked with terminal-optimized renderer
|
|
15
97
|
marked.setOptions({
|
|
16
98
|
// @ts-ignore - markedTerminal类型定义问题
|
|
17
|
-
renderer: new TerminalRenderer()
|
|
99
|
+
renderer: new TerminalRenderer(getRendererOptions(terminalCapabilities))
|
|
18
100
|
});
|
|
19
101
|
/**
|
|
20
102
|
* GitHub仓库配置
|
|
@@ -126,7 +208,7 @@ async function fetchGitHubRawContent(path) {
|
|
|
126
208
|
* 清理和格式化Markdown内容
|
|
127
209
|
* 移除VitePress frontmatter和特殊语法,优化终端显示
|
|
128
210
|
*/
|
|
129
|
-
function cleanMarkdownContent(content) {
|
|
211
|
+
function cleanMarkdownContent(content, capabilities) {
|
|
130
212
|
let cleaned = content;
|
|
131
213
|
// 1. 移除 YAML frontmatter (---开头结尾的部分)
|
|
132
214
|
cleaned = cleaned.replace(/^---\n[\s\S]*?\n---\n/m, '');
|
|
@@ -136,11 +218,32 @@ function cleanMarkdownContent(content) {
|
|
|
136
218
|
cleaned = cleaned.replace(/^:::$/gm, '');
|
|
137
219
|
// 3. 处理 VitePress 的 [[toc]] 语法
|
|
138
220
|
cleaned = cleaned.replace(/\[\[toc\]\]/gi, '**目录**\n\n_(请在浏览器中查看完整目录)_\n');
|
|
139
|
-
// 4.
|
|
221
|
+
// 4. 优化图片显示 - 根据终端能力调整
|
|
222
|
+
if (capabilities.terminalType === 'basic') {
|
|
223
|
+
// Basic terminals: Replace images with simple text references
|
|
224
|
+
// This prevents clutter from image syntax that can't be displayed
|
|
225
|
+
cleaned = cleaned.replace(/!\[([^\]]*)\]\(([^)]+)\)/g, (_match, alt, _url) => {
|
|
226
|
+
const description = alt || '图片';
|
|
227
|
+
return `📎 [${description}]`;
|
|
228
|
+
});
|
|
229
|
+
}
|
|
230
|
+
else if (capabilities.terminalType === 'enhanced') {
|
|
231
|
+
// Enhanced terminals: Keep alt text and show it's an image
|
|
232
|
+
cleaned = cleaned.replace(/!\[([^\]]*)\]\(([^)]+)\)/g, (_match, alt, url) => {
|
|
233
|
+
const description = alt || '图片';
|
|
234
|
+
const filename = url.split('/').pop() || url;
|
|
235
|
+
return `🖼️ **[图片: ${description}]**\n _${filename}_`;
|
|
236
|
+
});
|
|
237
|
+
}
|
|
238
|
+
// For advanced terminals (supportsImages), keep original markdown
|
|
239
|
+
// marked-terminal will handle the image syntax appropriately
|
|
240
|
+
// 5. 清理多余的空行(超过2个连续空行压缩为2个)
|
|
140
241
|
cleaned = cleaned.replace(/\n{3,}/g, '\n\n');
|
|
141
|
-
//
|
|
242
|
+
// 6. 移除 HTML 注释
|
|
142
243
|
cleaned = cleaned.replace(/<!--[\s\S]*?-->/g, '');
|
|
143
|
-
//
|
|
244
|
+
// 7. 移除 HTML 标签但保留内容 (for better terminal display)
|
|
245
|
+
cleaned = cleaned.replace(/<([a-z][a-z0-9]*)[^>]*>(.*?)<\/\1>/gi, '$2');
|
|
246
|
+
// 8. 清理开头和结尾的空白
|
|
144
247
|
cleaned = cleaned.trim();
|
|
145
248
|
return cleaned;
|
|
146
249
|
}
|
|
@@ -272,8 +375,8 @@ async function viewMarkdownFile(path) {
|
|
|
272
375
|
info(`${trans.docs.loading.replace('...', '')}: ${path}`);
|
|
273
376
|
// 从GitHub获取原始Markdown内容
|
|
274
377
|
const rawContent = await fetchGitHubRawContent(path);
|
|
275
|
-
// 清理VitePress特殊语法
|
|
276
|
-
const cleanedContent = cleanMarkdownContent(rawContent);
|
|
378
|
+
// 清理VitePress特殊语法 - 使用终端能力优化显示
|
|
379
|
+
const cleanedContent = cleanMarkdownContent(rawContent, terminalCapabilities);
|
|
277
380
|
// 提取标题
|
|
278
381
|
const title = extractDocTitle(cleanedContent) || path.split('/').pop() || path;
|
|
279
382
|
// 渲染Markdown到终端
|
|
@@ -351,6 +454,17 @@ export async function showDocsMenu() {
|
|
|
351
454
|
console.log();
|
|
352
455
|
console.log(chalk.cyan.bold(` >> ${trans.docs.title}`));
|
|
353
456
|
console.log(chalk.dim(` ${trans.docs.subtitle}`));
|
|
457
|
+
// 显示终端能力信息 - 帮助用户了解文档渲染能力
|
|
458
|
+
const terminalTypeDisplay = {
|
|
459
|
+
'basic': chalk.yellow('基础'),
|
|
460
|
+
'enhanced': chalk.cyan('增强'),
|
|
461
|
+
'advanced': chalk.green('高级')
|
|
462
|
+
}[terminalCapabilities.terminalType];
|
|
463
|
+
console.log(chalk.dim(` 终端类型: ${terminalTypeDisplay} | 支持: ${[
|
|
464
|
+
terminalCapabilities.supportsColor && '彩色',
|
|
465
|
+
terminalCapabilities.supportsUnicode && 'Unicode',
|
|
466
|
+
terminalCapabilities.supportsImages && '图片'
|
|
467
|
+
].filter(Boolean).join(', ') || '纯文本'}`));
|
|
354
468
|
console.log();
|
|
355
469
|
const choices = [
|
|
356
470
|
...DOC_CATEGORIES.map(cat => ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../../src/features/docs.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../../src/features/docs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,gBAAgB,MAAM,iBAAiB,CAAC;AAC/C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,CAAC,EAAE,MAAM,kBAAkB,CAAC;AAarC;;GAEG;AACH,SAAS,0BAA0B;IACjC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,MAAM,WAAW,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACtE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE3C,sDAAsD;IACtD,MAAM,cAAc,GAClB,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QACtB,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAEzB,uBAAuB;IACvB,MAAM,aAAa,GACjB,SAAS,KAAK,SAAS;QACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QACtB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QACpB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QACrB,WAAW,KAAK,EAAE,CAAC;IAErB,yBAAyB;IACzB,MAAM,eAAe,GACnB,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC7C,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAElD,0BAA0B;IAC1B,IAAI,YAAY,GAAsC,OAAO,CAAC;IAC9D,IAAI,cAAc,IAAI,aAAa,IAAI,eAAe,EAAE,CAAC;QACvD,YAAY,GAAG,UAAU,CAAC;IAC5B,CAAC;SAAM,IAAI,aAAa,IAAI,eAAe,EAAE,CAAC;QAC5C,YAAY,GAAG,UAAU,CAAC;IAC5B,CAAC;IAED,OAAO;QACL,aAAa;QACb,cAAc;QACd,eAAe;QACf,YAAY;KACb,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,YAAkC;IAC5D,oCAAoC;IACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IAE1D,oDAAoD;IACpD,IAAI,YAAY,CAAC,YAAY,KAAK,OAAO,EAAE,CAAC;QAC1C,OAAO;YACL,KAAK;YACL,YAAY,EAAE;gBACZ,KAAK,EAAE;oBACL,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG;oBAC3D,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG;oBACvE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG;oBACpD,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG;iBAC1C;aACF;SACF,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,OAAO;QACL,KAAK;QACL,YAAY,EAAE;YACZ,KAAK,EAAE;gBACL,GAAG,EAAE,GAAG;gBACR,SAAS,EAAE,GAAG;gBACd,UAAU,EAAE,GAAG;gBACf,WAAW,EAAE,GAAG;gBAChB,MAAM,EAAE,GAAG;gBACX,YAAY,EAAE,GAAG;gBACjB,aAAa,EAAE,GAAG;gBAClB,cAAc,EAAE,GAAG;gBACnB,IAAI,EAAE,GAAG;gBACT,UAAU,EAAE,GAAG;gBACf,GAAG,EAAE,GAAG;gBACR,SAAS,EAAE,GAAG;gBACd,KAAK,EAAE,GAAG;gBACV,WAAW,EAAE,GAAG;gBAChB,MAAM,EAAE,GAAG;aACZ;SACF;KACF,CAAC;AACJ,CAAC;AAED,+CAA+C;AAC/C,MAAM,oBAAoB,GAAG,0BAA0B,EAAE,CAAC;AAE1D,oDAAoD;AACpD,MAAM,CAAC,UAAU,CAAC;IAChB,oCAAoC;IACpC,QAAQ,EAAE,IAAI,gBAAgB,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;CACzE,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,WAAW,GAAG;IAClB,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,MAAM;CACf,CAAC;AAEF;;;GAGG;AACH,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAY5E;;GAEG;AACH,MAAM,cAAc,GAAG;IACrB,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,UAAU,EAAE;IAC9C,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,KAAK,EAAE;IAC1C,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,QAAQ,EAAE;IAChD,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE;IAC/C,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC9C,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,UAAU,EAAE;IAChD,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,WAAW,EAAE;CAClD,CAAC;AAEF;;GAEG;AACH,KAAK,UAAU,oBAAoB,CAAC,OAAe,EAAE;IACnD,MAAM,GAAG,GAAG,gCAAgC,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,aAAa,IAAI,QAAQ,WAAW,CAAC,MAAM,EAAE,CAAC;IAE/H,IAAI,CAAC;QACH,MAAM,OAAO,GAAQ;YACnB,QAAQ,EAAE,gCAAgC;YAC1C,YAAY,EAAE,WAAW;SAC1B,CAAC;QAEF,gCAAgC;QAChC,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,YAAY,EAAE,CAAC;QACtD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE;YACpC,OAAO,EAAE,KAAK;YACd,OAAO;SACR,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,IAAI;aACjB,MAAM,CAAC,CAAC,IAAS,EAAE,EAAE;YACpB,6BAA6B;YAC7B,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC5C,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc;gBAAE,OAAO,KAAK,CAAC;YAC/C,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc;gBAAE,OAAO,KAAK,CAAC;YAC/C,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB;gBAAE,OAAO,KAAK,CAAC;YAEjD,qBAAqB;YACrB,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAC;YAErE,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;aACD,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,CAAC;YACnB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;YAC1C,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC;aACF,IAAI,CAAC,CAAC,CAAU,EAAE,CAAU,EAAE,EAAE;YAC/B,SAAS;YACT,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;gBAAE,OAAO,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK;gBAAE,OAAO,CAAC,CAAC;YACpD,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACP,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,aAAa;QACb,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;YACjC,MAAM,kBAAkB,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;YACzE,MAAM,cAAc,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;YAEjE,IAAI,kBAAkB,KAAK,GAAG,EAAE,CAAC;gBAC/B,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC5D,MAAM,IAAI,KAAK,CAAC,0BAA0B,SAAS,CAAC,kBAAkB,EAAE,2CAA2C,CAAC,CAAC;YACvH,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,qBAAqB,CAAC,IAAY;IAC/C,MAAM,GAAG,GAAG,qCAAqC,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;IAEvH,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE;YACpC,OAAO,EAAE,KAAK;YACd,OAAO,EAAE;gBACP,YAAY,EAAE,WAAW;aAC1B;SACF,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,oBAAoB,CAAC,OAAe,EAAE,YAAkC;IAC/E,IAAI,OAAO,GAAG,OAAO,CAAC;IAEtB,sCAAsC;IACtC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAExD,0DAA0D;IAC1D,eAAe;IACf,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,4CAA4C,EAAE,EAAE,CAAC,CAAC;IAC5E,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzC,+BAA+B;IAC/B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,8BAA8B,CAAC,CAAC;IAE3E,uBAAuB;IACvB,IAAI,YAAY,CAAC,YAAY,KAAK,OAAO,EAAE,CAAC;QAC1C,8DAA8D;QAC9D,kEAAkE;QAClE,OAAO,GAAG,OAAO,CAAC,OAAO,CACvB,2BAA2B,EAC3B,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YACpB,MAAM,WAAW,GAAG,GAAG,IAAI,IAAI,CAAC;YAChC,OAAO,OAAO,WAAW,GAAG,CAAC;QAC/B,CAAC,CACF,CAAC;IACJ,CAAC;SAAM,IAAI,YAAY,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;QACpD,2DAA2D;QAC3D,OAAO,GAAG,OAAO,CAAC,OAAO,CACvB,2BAA2B,EAC3B,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACnB,MAAM,WAAW,GAAG,GAAG,IAAI,IAAI,CAAC;YAChC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC;YAC7C,OAAO,eAAe,WAAW,YAAY,QAAQ,GAAG,CAAC;QAC3D,CAAC,CACF,CAAC;IACJ,CAAC;IACD,kEAAkE;IAClE,6DAA6D;IAE7D,4BAA4B;IAC5B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAE7C,gBAAgB;IAChB,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAElD,mDAAmD;IACnD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,sCAAsC,EAAE,IAAI,CAAC,CAAC;IAExE,gBAAgB;IAChB,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAEzB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,OAAe;IACtC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC3C,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,eAAe,CAAC,UAAkB,EAAE;IACjD,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC;IAClB,IAAI,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5E,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAElD,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS;QAEpD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,SAAS;QACT,MAAM,OAAO,GAAG;YACd,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;gBACZ,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;gBACpE,IAAI,QAAQ,CAAC,SAAS,EAAE;aACzB,CAAC,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACpB,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,KAAK;oBACvB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,GAAG,CAAC;oBACnC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC;gBACrC,KAAK,EAAE,IAAI;aACZ,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,SAAS,EAAE;YACxB,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;SACvE,CAAC;QAEF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACzC;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS;gBAChF,OAAO;gBACP,QAAQ,EAAE,EAAE;gBACZ,IAAI,EAAE,KAAK;aACZ;SACF,CAAC,CAAC;QAEH,SAAS;QACT,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;aAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACpC,SAAS;YACT,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7D,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;QACpC,CAAC;aAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YACnC,QAAQ;YACR,MAAM,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;aAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACpC,OAAO;YACP,MAAM,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtC,eAAe;YACf,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;IAEH,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAErE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACtC;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;gBACzB,OAAO,EAAE,IAAI;aACd;SACF,CAAC,CAAC;QAEH,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,cAAc,CAAC,OAAe,EAAE,KAAa;IAC1D,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC;IAClB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,eAAe;QACf,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC;QAE7C,UAAU;QACV,MAAM,WAAW,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,OAAO,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;QAEhL,sDAAsD;QACtD,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAEpC,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE;gBACnC,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC;gBACrC,KAAK,EAAE,IAAI;aACZ,CAAC,CAAC;YAEH,mBAAmB;YACnB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YAElB,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACxB,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;gBACrB,oBAAoB;gBACpB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;gBAC1D,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACzB,OAAO,CAAC,KAAK,CAAC,CAAC;YACjB,CAAC,CAAC,CAAC;QAEL,CAAC;QAAC,MAAM,CAAC;YACP,aAAa;YACb,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACzB,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAAC,IAAY;IAC1C,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC;IAClB,IAAI,CAAC;QACH,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAE1D,wBAAwB;QACxB,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAErD,+BAA+B;QAC/B,MAAM,cAAc,GAAG,oBAAoB,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;QAE9E,OAAO;QACP,MAAM,KAAK,GAAG,eAAe,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC;QAE/E,gBAAgB;QAChB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;QAE9C,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS;QAEpD,sCAAsC;QACtC,MAAM,cAAc,CAAC,QAAQ,EAAE,GAAG,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAExE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO;QACtB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjC,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,WAAW;QACX,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACvC;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY;gBAChC,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE;oBAC9C,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE;oBAC5C,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE;iBACnD;aACF;SACF,CAAC,CAAC;QAEH,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;aAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,SAAS;YACT,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;IAEH,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QAC1C,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YAC5C;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,iBAAiB;gBACrC,OAAO,EAAE,IAAI;aACd;SACF,CAAC,CAAC;QAEH,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAa;IACnD,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC;IAClB,IAAI,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI;YACd,CAAC,CAAC,4BAA4B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE;YACzD,CAAC,CAAC,0BAA0B,CAAC;QAC/B,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC;IAClB,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAEtD,0BAA0B;IAC1B,MAAM,mBAAmB,GAAG;QAC1B,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;QAC3B,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QAC5B,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;KAC9B,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAErC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,mBAAmB,UACrD;QACE,oBAAoB,CAAC,aAAa,IAAI,IAAI;QAC1C,oBAAoB,CAAC,eAAe,IAAI,SAAS;QACjD,oBAAoB,CAAC,cAAc,IAAI,IAAI;KAC5C,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAClC,EAAE,CAAC,CAAC,CAAC;IACL,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,MAAM,OAAO,GAAG;QACd,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5B,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,KAAK,EAAE,GAAG,CAAC,IAAI;SAChB,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,SAAS,EAAE;QACxB,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE;QAC9D,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE;KAC7D,CAAC;IAEF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;QACvC;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,cAAc;YAClC,OAAO;YACP,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,KAAK;SACZ;KACF,CAAC,CAAC;IAEH,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;SAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,iBAAiB,EAAE,CAAC;IAC5B,CAAC;SAAM,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,cAAc;QACd,MAAM,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,SAAS;QACT,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
package/src/config/data.ts
CHANGED
package/src/features/docs.ts
CHANGED
|
@@ -13,10 +13,115 @@ import { error, info, success, warning } from '../core/ui.js';
|
|
|
13
13
|
import { spawn } from 'child_process';
|
|
14
14
|
import { t } from '../i18n/index.js';
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
/**
|
|
17
|
+
* Terminal capability detection
|
|
18
|
+
* Detects if the terminal supports advanced features like images, colors, etc.
|
|
19
|
+
*/
|
|
20
|
+
interface TerminalCapabilities {
|
|
21
|
+
supportsColor: boolean;
|
|
22
|
+
supportsImages: boolean;
|
|
23
|
+
supportsUnicode: boolean;
|
|
24
|
+
terminalType: 'basic' | 'enhanced' | 'advanced';
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Detect terminal capabilities
|
|
29
|
+
*/
|
|
30
|
+
function detectTerminalCapabilities(): TerminalCapabilities {
|
|
31
|
+
const term = (process.env['TERM'] || '').toLowerCase();
|
|
32
|
+
const termProgram = (process.env['TERM_PROGRAM'] || '').toLowerCase();
|
|
33
|
+
const colorTerm = process.env['COLORTERM'];
|
|
34
|
+
|
|
35
|
+
// Detect image support (iTerm2, Kitty, WezTerm, etc.)
|
|
36
|
+
const supportsImages =
|
|
37
|
+
termProgram.includes('iterm') ||
|
|
38
|
+
term.includes('kitty') ||
|
|
39
|
+
termProgram.includes('wezterm') ||
|
|
40
|
+
term.includes('sixel');
|
|
41
|
+
|
|
42
|
+
// Detect color support
|
|
43
|
+
const supportsColor =
|
|
44
|
+
colorTerm !== undefined ||
|
|
45
|
+
term.includes('color') ||
|
|
46
|
+
term.includes('256') ||
|
|
47
|
+
term.includes('ansi') ||
|
|
48
|
+
termProgram !== '';
|
|
49
|
+
|
|
50
|
+
// Detect Unicode support
|
|
51
|
+
const supportsUnicode =
|
|
52
|
+
(process.env['LANG'] || '').includes('UTF-8') ||
|
|
53
|
+
(process.env['LC_ALL'] || '').includes('UTF-8');
|
|
54
|
+
|
|
55
|
+
// Determine terminal type
|
|
56
|
+
let terminalType: 'basic' | 'enhanced' | 'advanced' = 'basic';
|
|
57
|
+
if (supportsImages && supportsColor && supportsUnicode) {
|
|
58
|
+
terminalType = 'advanced';
|
|
59
|
+
} else if (supportsColor && supportsUnicode) {
|
|
60
|
+
terminalType = 'enhanced';
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
return {
|
|
64
|
+
supportsColor,
|
|
65
|
+
supportsImages,
|
|
66
|
+
supportsUnicode,
|
|
67
|
+
terminalType
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Get marked-terminal renderer options based on terminal capabilities
|
|
73
|
+
*/
|
|
74
|
+
function getRendererOptions(capabilities: TerminalCapabilities): any {
|
|
75
|
+
// Text width for better readability
|
|
76
|
+
const width = Math.min(process.stdout.columns || 80, 100);
|
|
77
|
+
|
|
78
|
+
// For basic terminals, use simpler ASCII characters
|
|
79
|
+
if (capabilities.terminalType === 'basic') {
|
|
80
|
+
return {
|
|
81
|
+
width,
|
|
82
|
+
tableOptions: {
|
|
83
|
+
chars: {
|
|
84
|
+
top: '-', 'top-mid': '+', 'top-left': '+', 'top-right': '+',
|
|
85
|
+
bottom: '-', 'bottom-mid': '+', 'bottom-left': '+', 'bottom-right': '+',
|
|
86
|
+
left: '|', 'left-mid': '+', mid: '-', 'mid-mid': '+',
|
|
87
|
+
right: '|', 'right-mid': '+', middle: '|'
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
// For enhanced and advanced terminals, use Unicode box-drawing characters
|
|
94
|
+
return {
|
|
95
|
+
width,
|
|
96
|
+
tableOptions: {
|
|
97
|
+
chars: {
|
|
98
|
+
top: '─',
|
|
99
|
+
'top-mid': '┬',
|
|
100
|
+
'top-left': '┌',
|
|
101
|
+
'top-right': '┐',
|
|
102
|
+
bottom: '─',
|
|
103
|
+
'bottom-mid': '┴',
|
|
104
|
+
'bottom-left': '└',
|
|
105
|
+
'bottom-right': '┘',
|
|
106
|
+
left: '│',
|
|
107
|
+
'left-mid': '├',
|
|
108
|
+
mid: '─',
|
|
109
|
+
'mid-mid': '┼',
|
|
110
|
+
right: '│',
|
|
111
|
+
'right-mid': '┤',
|
|
112
|
+
middle: '│'
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
// Detect terminal capabilities once at startup
|
|
119
|
+
const terminalCapabilities = detectTerminalCapabilities();
|
|
120
|
+
|
|
121
|
+
// Configure marked with terminal-optimized renderer
|
|
17
122
|
marked.setOptions({
|
|
18
123
|
// @ts-ignore - markedTerminal类型定义问题
|
|
19
|
-
renderer: new TerminalRenderer()
|
|
124
|
+
renderer: new TerminalRenderer(getRendererOptions(terminalCapabilities))
|
|
20
125
|
});
|
|
21
126
|
|
|
22
127
|
/**
|
|
@@ -144,7 +249,7 @@ async function fetchGitHubRawContent(path: string): Promise<string> {
|
|
|
144
249
|
* 清理和格式化Markdown内容
|
|
145
250
|
* 移除VitePress frontmatter和特殊语法,优化终端显示
|
|
146
251
|
*/
|
|
147
|
-
function cleanMarkdownContent(content: string): string {
|
|
252
|
+
function cleanMarkdownContent(content: string, capabilities: TerminalCapabilities): string {
|
|
148
253
|
let cleaned = content;
|
|
149
254
|
|
|
150
255
|
// 1. 移除 YAML frontmatter (---开头结尾的部分)
|
|
@@ -158,13 +263,41 @@ function cleanMarkdownContent(content: string): string {
|
|
|
158
263
|
// 3. 处理 VitePress 的 [[toc]] 语法
|
|
159
264
|
cleaned = cleaned.replace(/\[\[toc\]\]/gi, '**目录**\n\n_(请在浏览器中查看完整目录)_\n');
|
|
160
265
|
|
|
161
|
-
// 4.
|
|
266
|
+
// 4. 优化图片显示 - 根据终端能力调整
|
|
267
|
+
if (capabilities.terminalType === 'basic') {
|
|
268
|
+
// Basic terminals: Replace images with simple text references
|
|
269
|
+
// This prevents clutter from image syntax that can't be displayed
|
|
270
|
+
cleaned = cleaned.replace(
|
|
271
|
+
/!\[([^\]]*)\]\(([^)]+)\)/g,
|
|
272
|
+
(_match, alt, _url) => {
|
|
273
|
+
const description = alt || '图片';
|
|
274
|
+
return `📎 [${description}]`;
|
|
275
|
+
}
|
|
276
|
+
);
|
|
277
|
+
} else if (capabilities.terminalType === 'enhanced') {
|
|
278
|
+
// Enhanced terminals: Keep alt text and show it's an image
|
|
279
|
+
cleaned = cleaned.replace(
|
|
280
|
+
/!\[([^\]]*)\]\(([^)]+)\)/g,
|
|
281
|
+
(_match, alt, url) => {
|
|
282
|
+
const description = alt || '图片';
|
|
283
|
+
const filename = url.split('/').pop() || url;
|
|
284
|
+
return `🖼️ **[图片: ${description}]**\n _${filename}_`;
|
|
285
|
+
}
|
|
286
|
+
);
|
|
287
|
+
}
|
|
288
|
+
// For advanced terminals (supportsImages), keep original markdown
|
|
289
|
+
// marked-terminal will handle the image syntax appropriately
|
|
290
|
+
|
|
291
|
+
// 5. 清理多余的空行(超过2个连续空行压缩为2个)
|
|
162
292
|
cleaned = cleaned.replace(/\n{3,}/g, '\n\n');
|
|
163
293
|
|
|
164
|
-
//
|
|
294
|
+
// 6. 移除 HTML 注释
|
|
165
295
|
cleaned = cleaned.replace(/<!--[\s\S]*?-->/g, '');
|
|
166
296
|
|
|
167
|
-
//
|
|
297
|
+
// 7. 移除 HTML 标签但保留内容 (for better terminal display)
|
|
298
|
+
cleaned = cleaned.replace(/<([a-z][a-z0-9]*)[^>]*>(.*?)<\/\1>/gi, '$2');
|
|
299
|
+
|
|
300
|
+
// 8. 清理开头和结尾的空白
|
|
168
301
|
cleaned = cleaned.trim();
|
|
169
302
|
|
|
170
303
|
return cleaned;
|
|
@@ -314,8 +447,8 @@ async function viewMarkdownFile(path: string): Promise<void> {
|
|
|
314
447
|
// 从GitHub获取原始Markdown内容
|
|
315
448
|
const rawContent = await fetchGitHubRawContent(path);
|
|
316
449
|
|
|
317
|
-
// 清理VitePress特殊语法
|
|
318
|
-
const cleanedContent = cleanMarkdownContent(rawContent);
|
|
450
|
+
// 清理VitePress特殊语法 - 使用终端能力优化显示
|
|
451
|
+
const cleanedContent = cleanMarkdownContent(rawContent, terminalCapabilities);
|
|
319
452
|
|
|
320
453
|
// 提取标题
|
|
321
454
|
const title = extractDocTitle(cleanedContent) || path.split('/').pop() || path;
|
|
@@ -402,6 +535,21 @@ export async function showDocsMenu(): Promise<void> {
|
|
|
402
535
|
console.log();
|
|
403
536
|
console.log(chalk.cyan.bold(` >> ${trans.docs.title}`));
|
|
404
537
|
console.log(chalk.dim(` ${trans.docs.subtitle}`));
|
|
538
|
+
|
|
539
|
+
// 显示终端能力信息 - 帮助用户了解文档渲染能力
|
|
540
|
+
const terminalTypeDisplay = {
|
|
541
|
+
'basic': chalk.yellow('基础'),
|
|
542
|
+
'enhanced': chalk.cyan('增强'),
|
|
543
|
+
'advanced': chalk.green('高级')
|
|
544
|
+
}[terminalCapabilities.terminalType];
|
|
545
|
+
|
|
546
|
+
console.log(chalk.dim(` 终端类型: ${terminalTypeDisplay} | 支持: ${
|
|
547
|
+
[
|
|
548
|
+
terminalCapabilities.supportsColor && '彩色',
|
|
549
|
+
terminalCapabilities.supportsUnicode && 'Unicode',
|
|
550
|
+
terminalCapabilities.supportsImages && '图片'
|
|
551
|
+
].filter(Boolean).join(', ') || '纯文本'
|
|
552
|
+
}`));
|
|
405
553
|
console.log();
|
|
406
554
|
|
|
407
555
|
const choices = [
|