"use client"; import { AlertCircle, ImagePlus, Loader2 } from "lucide-react"; import type React from "react"; import { GenerationDotPlaceholder } from "@/components/generation-dot-placeholder"; interface ImageNodeEmptyStateProps { detailProgressLabel?: string; fileInputRef: React.Ref; generationProgress?: number | null; onImageUpload: (event: React.ChangeEvent) => void; onSelectFile: (event: React.MouseEvent) => void; status?: string; viewportScale?: number; } export function ImageNodeDeferredLoadState() { return (
图片即将进入视口时加载
); } export function ImageNodeProcessingOverlay({ detailProgressLabel, generationProgress, viewportScale, }: { detailProgressLabel?: string; generationProgress?: number | null; viewportScale?: number; }) { return (
); } export function ImageNodeEmptyState({ detailProgressLabel, fileInputRef, generationProgress, onImageUpload, onSelectFile, status, viewportScale, }: ImageNodeEmptyStateProps) { if (status === "uploading") { return (
正在上传图片 上传完成后会自动显示
); } if (status === "generating") { return ( ); } if (status === "failed") { const failedTitle = detailProgressLabel || "生成失败"; return (
{failedTitle} {failedTitle.includes("上传") ? "请重新选择文件" : "请重新上传或再试一次"}
); } return (
上传图片 添加参考图、角色图或关键帧素材
); }