| stripAnsi | 移除字符串中包含的所有 ANSI 转义码。 |
| visibleLen | 计算字符串的终端可见字符长度(自动排除 ANSI 颜色与样式转义码)。 |
| supportsColor | 检测输出流是否支持彩色输出(遵循 NO_COLOR 与 FORCE_COLOR 环境变量行业规范)。 |
| wrap | 使用指定的 ANSI 颜色样式包裹目标字符串。 |
| mapBdsLevelToken | 将 BDS 级别词字符串映射为平台标准的 LogLevel 枚举(大小写不敏感)。 |
| stripBdsLogPrefix | 去掉 BDS 自带的 [时间 等级] 前缀,使正文从真正的有效消息开始。 具有幂等性:若已剥离过则原样返回。 |
| parseBdsEmbeddedLevel | 从单行文本中提取 BDS 内嵌的日志级别(优先提取行首前缀,未命中时在全文中查找首次出现的标记)。 例如:[2026-07-25 18:42:27:626 warn] [Commands] ... → "warn"。 |
| inferLevel | 从原始文本行推断日志级别(BDS 时间戳前缀优先,未命中时按常见关键词推断)。 |
| padSource | 将 source 来源标识字段右侧填充空格至指定的终端可见宽度。 |
| levelTag | 生成紧凑形式的级别标签字符串(例如 [INF]、[WRN]、[ERR]、[OK]、[DBG])。 |
| levelTagFull | 完整级别标签: [INFO] [WARN] [ERROR] [OK] [DEBUG] |
| highlightText | 高亮文本中的关键系统词,并剥离 Minecraft 原生的 § 样式颜色代码。 |
| formatLogLine | 格式化单行日志(供子进程 stdout 输出及持久化日志文件落盘)。 输出格式:<ISO时间> [source] [LEVEL] text。 |
| formatLog | 格式化日志条目供控制台或 REPL 界面展示。 输出格式:<localTime> <paddedSource> <levelTag> <text>。 |
| createNodeServiceLogger | 创建 Node 独立服务的标准 Logger 实例:同时输出至终端与持久化日志文件。 |
| createLogger | 创建通用 Logger 实例。 |
| getOutputLine | getOutputLine — 给定 entry,返回它会被 sink 输出的字符串 (供测试/调试) |
| createMemoryBuffer | 创建进程内环形内存日志缓冲。 |
| createStdoutSink | 创建 stdout 日志 sink(可选颜色与 error 路由 stderr)。 |
| createFileSink | 创建文件追加 sink(纯文本、同步写入)。 |
| createCallbackSink | 创建回调转发 sink(用于子进程 stdout 捕获等场景)。 |
| hasActiveProgress | 是否有活跃进度条(含 pause 中) |
| pauseAllProgress | 日志写行前:清掉进度条行 |
| resumeAllProgress | 日志写行后:重绘进度条 |
| withProgressPaused | 包裹一次会写终端的操作,避免与进度条抢行 |
| formatDownloadSpeed | 下载速度文案(BDS / CF 等共用,避免各处复制阈值分支) |
| bindByteProgressToBar | 把字节进度接到 TerminalProgress(MB 刻度 + 速度文案)。 BDS 更新与 CF 包下载共用,避免两处复制 lastTime/lastLoaded 环路(DRY)。 |
| createTerminalProgress | 创建进度句柄。TTY 时画 bar;非 TTY 时按步进打 logger。 |
| withTerminalProgress | 在异步任务期间持有进度条,结束时保证 stop |