Merge branch 'main' into feat/hitl-frontend

This commit is contained in:
twwu
2026-01-04 09:38:08 +08:00
473 changed files with 3720 additions and 2466 deletions

View File

@ -5,17 +5,14 @@ const mockUseNodesReadOnly = vi.fn()
const mockUseIsChatMode = vi.fn()
vi.mock('@/app/components/workflow/hooks', () => ({
__esModule: true,
useNodesReadOnly: () => mockUseNodesReadOnly(),
}))
vi.mock('../../hooks', () => ({
__esModule: true,
useIsChatMode: () => mockUseIsChatMode(),
}))
vi.mock('@/app/components/workflow/header/chat-variable-button', () => ({
__esModule: true,
default: ({ disabled }: { disabled: boolean }) => (
<button data-testid="chat-variable-button" type="button" disabled={disabled}>
ChatVariableButton

View File

@ -48,7 +48,6 @@ const mockWorkflowStore = {
}
vi.mock('@/app/components/workflow/hooks', () => ({
__esModule: true,
useChecklist: (...args: unknown[]) => mockUseChecklist(...args),
useChecklistBeforePublish: () => mockUseChecklistBeforePublish(),
useNodesReadOnly: () => mockUseNodesReadOnly(),
@ -57,7 +56,6 @@ vi.mock('@/app/components/workflow/hooks', () => ({
}))
vi.mock('@/app/components/workflow/store', () => ({
__esModule: true,
useStore: (selector: (state: Record<string, unknown>) => unknown) => {
const state: Record<string, unknown> = {
publishedAt: null,
@ -71,27 +69,22 @@ vi.mock('@/app/components/workflow/store', () => ({
}))
vi.mock('@/app/components/base/features/hooks', () => ({
__esModule: true,
useFeatures: (selector: (state: Record<string, unknown>) => unknown) => mockUseFeatures(selector),
}))
vi.mock('@/context/provider-context', () => ({
__esModule: true,
useProviderContext: () => mockUseProviderContext(),
}))
vi.mock('@/app/components/workflow/store/workflow/use-nodes', () => ({
__esModule: true,
default: () => mockUseNodes(),
}))
vi.mock('reactflow', () => ({
__esModule: true,
useEdges: () => mockUseEdges(),
}))
vi.mock('@/app/components/app/app-publisher', () => ({
__esModule: true,
default: (props: AppPublisherProps) => {
const inputs = props.inputs ?? []
return (
@ -124,29 +117,24 @@ vi.mock('@/app/components/app/app-publisher', () => ({
}))
vi.mock('@/service/use-workflow', () => ({
__esModule: true,
useInvalidateAppWorkflow: () => mockUpdatePublishedWorkflow,
usePublishWorkflow: () => ({ mutateAsync: mockPublishWorkflow }),
useResetWorkflowVersionHistory: () => mockResetWorkflowVersionHistory,
}))
vi.mock('@/service/use-tools', () => ({
__esModule: true,
useInvalidateAppTriggers: () => mockInvalidateAppTriggers,
}))
vi.mock('@/service/apps', () => ({
__esModule: true,
fetchAppDetail: (...args: unknown[]) => mockFetchAppDetail(...args),
}))
vi.mock('@/hooks/use-theme', () => ({
__esModule: true,
default: () => mockUseTheme(),
}))
vi.mock('@/app/components/app/store', () => ({
__esModule: true,
useStore: (selector: (state: { appDetail?: { id: string }, setAppDetail: typeof mockSetAppDetail }) => unknown) => mockUseAppStoreSelector(selector),
}))

View File

@ -51,12 +51,10 @@ const mockAppStore = (overrides: Partial<App> = {}) => {
}
vi.mock('@/app/components/app/store', () => ({
__esModule: true,
useStore: (selector: (state: { appDetail?: App, setCurrentLogItem: typeof mockSetCurrentLogItem, setShowMessageLogModal: typeof mockSetShowMessageLogModal }) => unknown) => mockUseAppStoreSelector(selector),
}))
vi.mock('@/app/components/workflow/header', () => ({
__esModule: true,
default: (props: HeaderProps) => {
return (
<div
@ -83,7 +81,6 @@ vi.mock('@/app/components/workflow/header', () => ({
}))
vi.mock('@/service/use-workflow', () => ({
__esModule: true,
useResetWorkflowVersionHistory: () => mockResetWorkflowVersionHistory,
}))

View File

@ -2,7 +2,7 @@ import type AudioPlayer from '@/app/components/base/audio-btn/audio'
import type { Node } from '@/app/components/workflow/types'
import type { IOtherOptions } from '@/service/base'
import type { VersionHistory } from '@/types/workflow'
import { noop } from 'es-toolkit/compat'
import { noop } from 'es-toolkit/function'
import { produce } from 'immer'
import { usePathname } from 'next/navigation'
import { useCallback, useRef } from 'react'