khamba
Version:
A cli tool for sharing files through local network.
24 lines (23 loc) • 1.14 kB
JavaScript
import React from 'react';
import { Text } from 'ink';
import useLocalIP from './functions/ip.js';
import useComputerName from './functions/name.js';
import { useStore } from '@nanostores/react';
import { $action, $baseInfo } from './stores/baseStore.js';
import { hasNullValue } from './functions/helper.js';
import { useCommands } from './functions/commands.js';
import MainApp from './components/MainApp.js';
import { Spinner, spinners } from './components/Misc/Spinner.js';
import Failed from './components/Misc/Failed.js';
export default function App({ name = 'Stranger' }) {
useCommands();
useLocalIP();
useComputerName();
const baseInfo = useStore($baseInfo);
const action = useStore($action);
return (React.createElement(React.Fragment, null,
hasNullValue(baseInfo) ? (React.createElement(Text, null,
React.createElement(Spinner, { frames: spinners.dotsRound, color: "magenta" }),
"\u2800 Setting up...")) : ['SEND', 'RECEIVE'].includes(action) ? (React.createElement(MainApp, null)) : (React.createElement(React.Fragment, null)),
React.createElement(Failed, null)));
}