feat(import): add multi-site import modal and upload-multi API
This commit is contained in:
@@ -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>
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user