import React, { useState } from 'react'; import { Card } from '../../ui/card'; import { Button } from '../../ui/button'; import { Input } from '../../ui/input'; import { Cloud, CheckCircle, RefreshCw, Server, Shield } from 'lucide-react'; import { useToast } from '../../../context/ToastContext'; import { ProgressBar } from '../../ui/progress'; export const CloudIntegrationView: React.FC = () => { const { addToast } = useToast(); const [isConnected, setIsConnected] = useState(false); const [url, setUrl] = useState(''); const [username, setUsername] = useState(''); const [autoSync, setAutoSync] = useState(true); const handleConnect = () => { if (!url || !username) return; // Simulate connection addToast('Connecting to Nextcloud...', 'info'); setTimeout(() => { setIsConnected(true); addToast('Connected to Cloud Storage', 'success'); }, 1500); }; return (
{/* Connection Status */}

Nextcloud Integration

Sync your projects, samples, and presets.

{isConnected && (
Connected
)}
{!isConnected ? (
setUrl(e.target.value)} icon={} /> setUsername(e.target.value)} icon={} /> } />
) : (
{url}
Host
Every 15 mins
Sync Frequency
Encrypted
Status
)}
{/* Sync Settings */} {isConnected && (

Sync Preferences

Auto-Sync
Automatically upload new projects
setAutoSync(!autoSync)} className={`w-10 h-5 rounded-full relative cursor-pointer transition-colors ${autoSync ? 'bg-kodo-cyan' : 'bg-kodo-steel'}`} >
{['Projects', 'Samples', 'Presets'].map((type) => ( {type} ))}

Storage Quota

65.4 GB
used of 100 GB
0 GB 100 GB
)}
); }; // Helper icons const GlobeIcon = ({ className }: { className?: string }) => ( ); const UserIcon = ({ className }: { className?: string }) => ( ); const LockIcon = ({ className }: { className?: string }) => ( );