Feat: web app dark mode (#14732)

This commit is contained in:
KVOJJJin
2025-03-03 14:44:51 +08:00
committed by GitHub
parent e53052ab7a
commit d0d0bf570e
98 changed files with 3006 additions and 2496 deletions

View File

@@ -4,7 +4,6 @@ import React, { useEffect, useRef, useState } from 'react'
import { useBoolean } from 'ahooks'
import { t } from 'i18next'
import produce from 'immer'
import cn from '@/utils/classnames'
import TextGenerationRes from '@/app/components/app/text-generate/item'
import NoData from '@/app/components/share/text-generation/no-data'
import Toast from '@/app/components/base/toast'
@@ -13,7 +12,6 @@ import type { FeedbackType } from '@/app/components/base/chat/chat/type'
import Loading from '@/app/components/base/loading'
import type { PromptConfig } from '@/models/debug'
import type { InstalledApp } from '@/models/explore'
import type { ModerationService } from '@/models/common'
import { TransferMethod, type VisionFile, type VisionSettings } from '@/types/app'
import { NodeRunningStatus, WorkflowRunningStatus } from '@/app/components/workflow/types'
import type { WorkflowProcess } from '@/app/components/base/chat/types'
@@ -24,7 +22,7 @@ import {
getFilesInLogs,
} from '@/app/components/base/file-uploader/utils'
export interface IResultProps {
export type IResultProps = {
isWorkflow: boolean
isCallBatchAPI: boolean
isPC: boolean
@@ -43,11 +41,10 @@ export interface IResultProps {
handleSaveMessage: (messageId: string) => void
taskId?: number
onCompleted: (completionRes: string, taskId?: number, success?: boolean) => void
enableModeration?: boolean
moderationService?: (text: string) => ReturnType<ModerationService>
visionConfig: VisionSettings
completionFiles: VisionFile[]
siteInfo: SiteInfo | null
onRunStart: () => void
}
const Result: FC<IResultProps> = ({
@@ -72,6 +69,7 @@ const Result: FC<IResultProps> = ({
visionConfig,
completionFiles,
siteInfo,
onRunStart,
}) => {
const [isResponding, { setTrue: setRespondingTrue, setFalse: setRespondingFalse }] = useBoolean(false)
useEffect(() => {
@@ -183,8 +181,10 @@ const Result: FC<IResultProps> = ({
let res: string[] = []
let tempMessageId = ''
if (!isPC)
if (!isPC) {
onShowRes()
onRunStart()
}
setRespondingTrue()
let isEnd = false
@@ -375,7 +375,6 @@ const Result: FC<IResultProps> = ({
<TextGenerationRes
isWorkflow={isWorkflow}
workflowProcessData={workflowProcessData}
className='mt-3'
isError={isError}
onRetry={handleSend}
content={completionRes}
@@ -398,7 +397,7 @@ const Result: FC<IResultProps> = ({
)
return (
<div className={cn(isNoData && !isCallBatchAPI && 'h-full')}>
<>
{!isCallBatchAPI && !isWorkflow && (
(isResponding && !completionRes)
? (
@@ -414,25 +413,19 @@ const Result: FC<IResultProps> = ({
</>
)
)}
{
!isCallBatchAPI && isWorkflow && (
(isResponding && !workflowProcessData)
? (
<div className='flex h-full w-full justify-center items-center'>
<Loading type='area' />
</div>
)
: !workflowProcessData
? <NoData />
: renderTextGenerationRes()
)
}
{isCallBatchAPI && (
<div className='mt-2'>
{renderTextGenerationRes()}
</div>
{!isCallBatchAPI && isWorkflow && (
(isResponding && !workflowProcessData)
? (
<div className='flex h-full w-full justify-center items-center'>
<Loading type='area' />
</div>
)
: !workflowProcessData
? <NoData />
: renderTextGenerationRes()
)}
</div>
{isCallBatchAPI && renderTextGenerationRes()}
</>
)
}
export default React.memo(Result)