UNPKG

khamba

Version:

A cli tool for sharing files through local network.

31 lines (30 loc) 1.6 kB
import React, { useMemo } from 'react'; import SendArrowAnimation from '../../../components/Misc/SendArrowAnimation.js'; import { Box, Text } from 'ink'; import { formatBytes } from '../../../functions/helper.js'; import ProgressBar from '../../../components/Misc/ProgressBar.js'; const SinglePeerTransferForSender = ({ singlePeerTransferInfo }) => { const totalProgress = useMemo(() => { return Math.min((singlePeerTransferInfo.totalTransferred / singlePeerTransferInfo.totalFileSize) * 100, 100); }, [ singlePeerTransferInfo.totalTransferred, singlePeerTransferInfo.totalFileSize, ]); const isTransferComplete = useMemo(() => totalProgress == 100, [totalProgress]); return (React.createElement(Box, { flexDirection: "column" }, React.createElement(Box, { flexDirection: "column" }, isTransferComplete ? (React.createElement(Text, { dimColor: true }, "Files Transfer Complete \uD83C\uDF89")) : (React.createElement(Text, null, "SENDING\u2800", React.createElement(SendArrowAnimation, null))), React.createElement(Box, null, React.createElement(ProgressBar, { left: 0, percent: totalProgress ?? 0 }), React.createElement(Text, { dimColor: true }, "\u2800(", formatBytes(singlePeerTransferInfo.totalTransferred), "\u2800/\u2800", formatBytes(singlePeerTransferInfo.totalFileSize), ")"))))); }; export default SinglePeerTransferForSender;