UNPKG

eslint-remote-tester

Version:
33 lines (32 loc) 1.27 kB
import React from 'react'; import { Newline, Text } from 'ink'; import Status from './Status.js'; import Tasks from './Tasks.js'; import Messages from './Messages.js'; import MessagesScrollBox from './MessagesScrollBox.js'; import FinalLog from './FinalLog.js'; import { useOnExit } from '../hooks/index.js'; import useOnHorizontalResize from '../hooks/useOnHorizontalResize.js'; /** * Application for CLIs */ const AppCLI = ({ isTTY }) => { const done = useOnExit(); // Clear screen completely on horizontal resize // Otherwise parts of old renders are displayed on top of app useOnHorizontalResize(console.clear); if (done) { return React.createElement(FinalLog, null); } // Scrollbox can only be rendered in TTY const wrapper = isTTY ? MessagesScrollBox : undefined; return (React.createElement(React.Fragment, null, !isTTY && (React.createElement(Text, { color: 'red' }, "Terminal is not detected as TTY. Scrollbox is disabled.", React.createElement(Newline, null))), React.createElement(Status, null), React.createElement(Tasks, null), !isTTY && React.createElement(Text, null), React.createElement(Messages, { wrapper: wrapper }))); }; export default AppCLI;