mirror of
https://github.com/discountry/ritmex-bot.git
synced 2026-09-09 08:18:07 +00:00
更新用户界面组件,使用 Ink 的 stdin 检测替代原有的 TTY 检测,确保在不同环境下的输入支持。同时,修改启动脚本以确保 Bun 启动时正确处理 TTY 输入,提升用户交互体验。
This commit is contained in:
+8
-2
@@ -1,5 +1,5 @@
|
||||
import React, { useState } from "react";
|
||||
import { Box, Text, useInput } from "ink";
|
||||
import { Box, Text, useInput, useStdin } from "ink";
|
||||
import { TrendApp } from "./TrendApp";
|
||||
import { MakerApp } from "./MakerApp";
|
||||
import { OffsetMakerApp } from "./OffsetMakerApp";
|
||||
@@ -32,9 +32,15 @@ const STRATEGIES: StrategyOption[] = [
|
||||
},
|
||||
];
|
||||
|
||||
const inputSupported = Boolean(process.stdin && (process.stdin as any).isTTY);
|
||||
// Prefer Ink's stdin detection to avoid false negatives when spawned by shells
|
||||
// that don't propagate process.stdin TTY flags correctly.
|
||||
function useInputSupported() {
|
||||
const { isRawModeSupported } = useStdin();
|
||||
return Boolean(isRawModeSupported);
|
||||
}
|
||||
|
||||
export function App() {
|
||||
const inputSupported = useInputSupported();
|
||||
const [cursor, setCursor] = useState(0);
|
||||
const [selected, setSelected] = useState<StrategyOption | null>(null);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user