import React, { useState, useEffect } from 'react'; import { Download, Server, Package } from 'lucide-react'; import { formatBytes } from '../utils/formatters'; interface DownloadModalProps { isOpen: boolean; onClose: () => void; } const DownloadModal: React.FC = ({ isOpen, onClose }) => { if (!isOpen) return null; const baseUrl = import.meta.env.BASE_URL; const [fileSizes, setFileSizes] = useState<{ [key: string]: string }>({}); useEffect(() => { if (!isOpen) return; const fetchSize = async (filename: string) => { try { const response = await fetch(`${baseUrl}${filename}`, { method: 'HEAD' }); const size = response.headers.get('Content-Length'); if (size) { setFileSizes(prev => ({ ...prev, [filename]: formatBytes(parseInt(size, 10)) })); } } catch (e) { console.error(`Failed to fetch size for ${filename}`, e); } }; fetchSize('webftp.exe'); fetchSize('webftp-backend.exe'); }, [isOpen, baseUrl]); return (

다운로드 센터

사용 환경에 맞는 실행 파일을 선택하여 다운로드하세요.

WebFTP (권장) WebFTP (권장) {fileSizes['webftp.exe'] && {fileSizes['webftp.exe']}} ALL-IN-ONE

백엔드와 프론트엔드가 포함된 단일 실행 파일입니다.
다운로드 후 바로 실행하여 사용하세요.

Backend Only {fileSizes['webftp-backend.exe'] && {fileSizes['webftp-backend.exe']}}

백엔드 서버 파일만 다운로드합니다.
백엔드를 실행하시면 현재 사이트에서 백엔드가 자동 연결 됩니다

); }; export default DownloadModal;