import { CameraOutlined, ClockCircleOutlined, ColumnWidthOutlined, CustomerServiceOutlined, DashboardOutlined, DeleteOutlined, EditOutlined, HighlightOutlined, MessageOutlined, SwapOutlined, ThunderboltOutlined, VideoCameraOutlined, } from "@ant-design/icons"; import type { CSSProperties, ReactNode } from "react"; import { useCallback, useEffect, useState } from "react"; import type { WebImageWorkbenchTool, WebViewKey } from "../../types"; interface MorePageProps { onSelectView?: (view: WebViewKey) => void; onOpenImageTool?: (tool: WebImageWorkbenchTool) => void; } type ToolCategory = "image" | "video"; type FilterKey = "all" | ToolCategory | "upcoming"; interface MoreTool { id: string; title: string; text: string; useCase: string; tags: string[]; icon: ReactNode; category: ToolCategory; target?: WebViewKey; imageTool?: WebImageWorkbenchTool; ready: boolean; badge?: string; featured?: boolean; } type CompareScene = | "workbench" | "inpaint" | "camera" | "upscale" | "watermark" | "dialog" | "subtitle" | "digital-human" | "character" | "avatar"; const toolCompareScenes: Record = { workbench: "workbench", inpaint: "inpaint", camera: "camera", upscale: "upscale", watermarkRemoval: "watermark", dialogGenerator: "dialog", subtitleRemoval: "subtitle", digitalHuman: "digital-human", characterMix: "character", avatarConsole: "avatar", }; function ToolComparePanel({ scene }: { scene: CompareScene }) { return (