import chatStyles from "@/app/components/chat.module.scss"; import styles from "@/app/components/sd/sd.module.scss"; import homeStyles from "@/app/components/home.module.scss"; import { IconButton } from "@/app/components/button"; import ReturnIcon from "@/app/icons/return.svg"; import Locale from "@/app/locales"; import { Path } from "@/app/constant"; import React, { useEffect, useMemo, useRef, useState } from "react"; import { copyToClipboard, getMessageTextContent, useMobileScreen, } from "@/app/utils"; import { useNavigate, useLocation } from "react-router-dom"; import { useAppConfig } from "@/app/store"; import MinIcon from "@/app/icons/min.svg"; import MaxIcon from "@/app/icons/max.svg"; import { getClientConfig } from "@/app/config/client"; import { ChatAction } from "@/app/components/chat"; import DeleteIcon from "@/app/icons/clear.svg"; import CopyIcon from "@/app/icons/copy.svg"; import PromptIcon from "@/app/icons/prompt.svg"; import ResetIcon from "@/app/icons/reload.svg"; import { useSdStore } from "@/app/store/sd"; import LoadingIcon from "@/app/icons/three-dots.svg"; import ErrorIcon from "@/app/icons/delete.svg"; import SDIcon from "@/app/icons/sd.svg"; import { Property } from "csstype"; import { showConfirm, showImageModal, showModal, } from "@/app/components/ui-lib"; import { removeImage } from "@/app/utils/chat"; import { SideBar } from "./sd-sidebar"; import { WindowContent } from "@/app/components/home"; import { params } from "./sd-panel"; import clsx from "clsx"; function getSdTaskStatus(item: any) { let s: string; let color: Property.Color | undefined = undefined; switch (item.status) { case "success": s = Locale.Sd.Status.Success; color = "green"; break; case "error": s = Locale.Sd.Status.Error; color = "red"; break; case "wait": s = Locale.Sd.Status.Wait; color = "yellow"; break; case "running": s = Locale.Sd.Status.Running; color = "blue"; break; default: s = item.status.toUpperCase(); } return (
{Locale.Sd.Status.Name}: {s}
{item.status === "error" && (
{
showModal({
title: Locale.Sd.Detail,
children: (
{Locale.SdPanel.Prompt}:{" "}
{
showModal({
title: Locale.Sd.Detail,
children: (
{Locale.SdPanel.AIModel}: {item.model_name}
{getSdTaskStatus(item)}{item.created_at}