chore: trim large-page lint warnings
Web Quality / verify (push) Has been cancelled

This commit is contained in:
2026-06-09 12:07:08 +08:00
parent 4a298d205b
commit 4d7bec0dd7
2 changed files with 8 additions and 86 deletions
+5 -43
View File
@@ -2,24 +2,18 @@ import {
AppstoreOutlined,
ArrowDownOutlined,
ArrowUpOutlined,
CaretRightOutlined,
ClockCircleOutlined,
CloseOutlined,
CopyOutlined,
DeleteOutlined,
DownloadOutlined,
FullscreenOutlined,
LoadingOutlined,
MessageOutlined,
MutedOutlined,
PictureOutlined,
PauseOutlined,
PlusOutlined,
ReloadOutlined,
SendOutlined,
SettingOutlined,
StopOutlined,
ThunderboltOutlined,
VideoCameraOutlined,
} from "@ant-design/icons";
import {
@@ -35,10 +29,10 @@ import {
type SyntheticEvent,
} from "react";
import "../../styles/pages/workbench.css";
import type { WebGenerationPreviewTask, WebUserSession } from "../../types";
import type { WebUserSession } from "../../types";
import { aiGenerationClient } from "../../api/aiGenerationClient";
import { claimGenerationSlot, getActiveGenerationTaskCount, getEffectiveGenerationLimit, getGenerationUserKey, releaseGenerationSlot } from "../../api/generationConcurrency";
import { preUploadReference, resolvePreUploadedUrl } from "../../api/referenceUploadService";
import { preUploadReference } from "../../api/referenceUploadService";
import { assetClient } from "../../api/assetClient";
import { communityClient } from "../../api/communityClient";
import { loadRechargeModal, type RechargeModalComponent } from "../../components/RechargeModal/loadRechargeModal";
@@ -46,7 +40,6 @@ import { useGenerationTasks } from "../../hooks/useGenerationTasks";
import { conversationClient, type ConversationSummary } from "../../api/conversationClient";
import { modelCapabilitiesClient } from "../../api/modelCapabilitiesClient";
import { buildApiUrl, buildAuthHeaders } from "../../api/serverConnection";
import type { CreatePreviewTaskInput } from "../../api/webGenerationGateway";
import type { WebProjectSummary } from "../../types";
import {
@@ -62,8 +55,6 @@ import {
MarkdownMessage,
ResultCard,
} from "./components/WorkbenchChatCards";
import { renderMarkdownBlocks } from "./markdownRenderer";
import { downloadResultAsset } from "./workbenchDownload";
import { translateTaskError } from "../../utils/translateTaskError";
import {
buildLocalTimeoutMessage,
@@ -80,7 +71,6 @@ import { isPixverseModel } from "../../utils/pixverseRouting";
import { resolveVideoRequestModel } from "../../utils/resolveVideoModel";
import { calculateEnterpriseVideoCredits, ENTERPRISE_DEFAULT_VIDEO_MODEL } from "../../utils/enterpriseVideoPolicy";
import {
getImageQualityOptions,
getImageQualityOptionsForContext,
getDefaultImageQuality,
getDefaultImageQualityForContext,
@@ -90,8 +80,6 @@ import {
} from "../../utils/modelOptions";
import { filterImageModelOptionsForSession } from "../../utils/imageModelVisibility";
import { persistWorkbenchResultAsset, type PersistedWorkbenchResultAsset } from "./workbenchResultPersistence";
import { SmoothedProgressBar } from "./SmoothedProgressBar";
import { useSmoothedProgress } from "../../hooks/useSmoothedProgress";
import {
type WorkbenchMode,
type ToolbarMenuId,
@@ -99,8 +87,6 @@ import {
type WorkbenchOption,
type WorkbenchFieldGroup,
type ReferenceItem,
type PromptMentionItem,
type PromptMentionTokenRange,
type ChatAttachment,
type ChatMessage,
type DeleteDialogState,
@@ -117,33 +103,18 @@ import {
GRID_SUPPORTED_MODELS,
VIDEO_FRAME_OPTIONS,
VIDEO_DURATION_OPTIONS,
MESSAGE_STORAGE_KEY,
ACTIVE_CONVERSATION_STORAGE_KEY,
PROMPT_HISTORY_STORAGE_KEY,
TASK_KEEPALIVE_STORAGE_KEY,
WORKBENCH_TASK_STALE_MS,
WORKBENCH_TASK_MAX_POLL_FAILURES,
REFERENCE_IMAGE_COMPRESS_THRESHOLD,
REFERENCE_IMAGE_MAX_DIMENSION,
REFERENCE_IMAGE_INITIAL_QUALITY,
REFERENCE_IMAGE_MIN_QUALITY,
CHAT_MODEL,
CHAT_NATURAL_SYSTEM_PROMPT,
CHAT_TURN_STYLE_REMINDER,
NON_CONVERSATIONAL_ASSISTANT_TEXT,
getCachedRole,
getSessionUserId,
userKey,
createId,
formatWorkbenchTimestamp,
parseWorkbenchTimestampValue,
buildChatAttachments,
buildNaturalChatHistoryMessages,
getErrorText,
isAuthFailure,
isInsufficientBalance,
isInsufficientBalanceMessage,
isTransientMessage,
getPersistableMessages,
shouldPersistPatch,
buildAssistantResult,
@@ -156,25 +127,18 @@ import {
persistMessages,
clearWorkbenchLocalState,
persistPromptHistory,
buildRecoverableTaskFromMessage,
readStoredKeepaliveTasks,
persistKeepaliveTasks,
} from "./workbenchStorage";
import {
getRatioOptionClassName,
getSettingsGridColumnsClassName,
getReferenceAccept,
getReferenceUploadLabel,
getReferenceLimit,
getReferenceKindLabel,
getReferenceEmptyCopy,
hexToRgbTriplet,
inferReferenceKind,
disposeReferencePreview,
fileToDataUrl,
bytesToHex,
buildReferenceFingerprint,
canCompressReferenceImage,
compressReferenceImageIfNeeded,
buildReferenceToken,
resolveReferenceUrls,
@@ -188,7 +152,6 @@ import {
import {
findPromptMentionRangeInside,
findPromptMentionRangeOverlap,
ReferenceInlinePreview,
ReferencePreview,
PromptPreviewLayer,
} from "./WorkbenchPromptPreview";
@@ -495,7 +458,6 @@ function WorkbenchPage({
const workbenchAccent = "#00ff88";
const hasConversationRecords = activeConversationId !== null || messages.length > 0;
const hasActivatedWorkspace = !effectiveOnboarding && (workspaceStarted || isGenerating || hasConversationRecords);
const referenceCount = referenceItems.length;
const activeVideoModelValue = toHappyHorseDisplayModel(videoModel);
const activeModelValue =
activeMode === "image" ? imageModel : activeMode === "video" ? activeVideoModelValue : chatModel;
@@ -1007,7 +969,7 @@ function WorkbenchPage({
const patchConversationMessage = useCallback(
async (conversationId: number, messageId: string, patch: Partial<ChatMessage>) => {
let sourceMessages =
const sourceMessages =
activeConversationIdRef.current === conversationId
? messagesRef.current
: conversationMessagesCacheRef.current.get(conversationId);
@@ -2236,7 +2198,7 @@ function WorkbenchPage({
taskId = result.taskId;
genTracker.submitTask({ title: trimmedPrompt.slice(0, 60), type: "image", status: "running", progress: 5, prompt: trimmedPrompt, sourceView: "workbench", taskId });
} else {
let requestModel = resolveVideoRequestModel({
const requestModel = resolveVideoRequestModel({
model: taskInput.params?.model || ENTERPRISE_DEFAULT_VIDEO_MODEL,
referenceUrls: refUrls,
});
@@ -3031,7 +2993,7 @@ function WorkbenchPage({
</div>
);
const renderComposerToolbar = (disabled = false, showStop = false) => (
const renderComposerToolbar = (disabled = false, _showStop = false) => (
<div className="wb-composer__toolbar">
<div className="wb-composer__toolbar-left">
<span data-onboarding={obTarget({ chat: "onboarding-mode-selector", image: "onboarding-mode-selector" })}>