feat(import): add multi-site import modal and upload-multi API

This commit is contained in:
GitHub Actions
2025-11-30 00:35:34 +00:00
parent eb60530cec
commit 2014ff9fce
3 changed files with 109 additions and 0 deletions

View File

@@ -2,11 +2,13 @@ import { useState } from 'react'
import { useImport } from '../hooks/useImport'
import ImportBanner from '../components/ImportBanner'
import ImportReviewTable from '../components/ImportReviewTable'
import ImportSitesModal from '../components/ImportSitesModal'
export default function ImportCaddy() {
const { session, preview, loading, error, upload, commit, cancel } = useImport()
const [content, setContent] = useState('')
const [showReview, setShowReview] = useState(false)
const [showMultiModal, setShowMultiModal] = useState(false)
const handleUpload = async () => {
if (!content.trim()) {
@@ -138,6 +140,12 @@ api.example.com {
>
{loading ? 'Processing...' : 'Parse and Review'}
</button>
<button
onClick={() => setShowMultiModal(true)}
className="ml-4 px-4 py-2 bg-gray-800 text-white rounded-lg"
>
Multi-site Import
</button>
</div>
</div>
)}
@@ -153,6 +161,12 @@ api.example.com {
onCancel={() => setShowReview(false)}
/>
)}
<ImportSitesModal
visible={showMultiModal}
onClose={() => setShowMultiModal(false)}
onUploaded={() => setShowReview(true)}
/>
</div>
)
}