diff --git a/web/app/components/datasets/documents/detail/metadata/hooks/use-metadata-state.ts b/web/app/components/datasets/documents/detail/metadata/hooks/use-metadata-state.ts index 5f7aa4289d..08651b699e 100644 --- a/web/app/components/datasets/documents/detail/metadata/hooks/use-metadata-state.ts +++ b/web/app/components/datasets/documents/detail/metadata/hooks/use-metadata-state.ts @@ -89,7 +89,7 @@ export function useMetadataState({ docDetail, onUpdate }: UseMetadataStateOption } const cancelEdit = () => { - setMetadataParams({ documentType: docType || '', metadata: { ...docDetail?.doc_metadata } }) + setMetadataParams({ documentType: docType || '', metadata: { ...(docDetail?.doc_metadata || {}) } }) setEditStatus(!docType) if (!docType) setShowDocTypes(true) diff --git a/web/app/components/rag-pipeline/hooks/use-update-dsl-modal.ts b/web/app/components/rag-pipeline/hooks/use-update-dsl-modal.ts index 065a6b4ca5..3b86937417 100644 --- a/web/app/components/rag-pipeline/hooks/use-update-dsl-modal.ts +++ b/web/app/components/rag-pipeline/hooks/use-update-dsl-modal.ts @@ -97,7 +97,7 @@ export const useUpdateDSLModal = ({ onCancel, onImport }: UseUpdateDSLModalParam hash, rag_pipeline_variables: rag_pipeline_variables || [], }, - } as unknown as string) + }) }, [eventEmitter]) const completeImport = useCallback(async ( diff --git a/web/context/event-emitter.tsx b/web/context/event-emitter.tsx index 61a605cabf..14b81eacb6 100644 --- a/web/context/event-emitter.tsx +++ b/web/context/event-emitter.tsx @@ -4,7 +4,19 @@ import type { EventEmitter } from 'ahooks/lib/useEventEmitter' import { useEventEmitter } from 'ahooks' import { createContext, useContext } from 'use-context-selector' -const EventEmitterContext = createContext<{ eventEmitter: EventEmitter | null }>({ +/** + * Typed event object emitted via the shared EventEmitter. + * Covers workflow updates, prompt-editor commands, DSL export checks, etc. + */ +export type EventEmitterMessage = { + type: string + payload?: unknown + instanceId?: string +} + +export type EventEmitterValue = string | EventEmitterMessage + +const EventEmitterContext = createContext<{ eventEmitter: EventEmitter | null }>({ eventEmitter: null, }) @@ -16,7 +28,7 @@ type EventEmitterContextProviderProps = { export const EventEmitterContextProvider = ({ children, }: EventEmitterContextProviderProps) => { - const eventEmitter = useEventEmitter() + const eventEmitter = useEventEmitter() return (