mirror of
https://github.com/langgenius/dify.git
synced 2025-09-05 23:33:33 +00:00
68 lines
2.0 KiB
TypeScript
68 lines
2.0 KiB
TypeScript
import {
|
|
memo,
|
|
useState,
|
|
} from 'react'
|
|
import { useStore } from '../../workflow/store'
|
|
import InputField from './input-field'
|
|
import RagPipelinePanel from './panel'
|
|
import RagPipelineHeader from './rag-pipeline-header'
|
|
import type { EnvironmentVariable } from '@/app/components/workflow/types'
|
|
import { DSL_EXPORT_CHECK } from '@/app/components/workflow/constants'
|
|
import UpdateDSLModal from './update-dsl-modal'
|
|
import DSLExportConfirmModal from '@/app/components/workflow/dsl-export-confirm-modal'
|
|
import {
|
|
useDSL,
|
|
usePanelInteractions,
|
|
} from '@/app/components/workflow/hooks'
|
|
import { useEventEmitterContextContext } from '@/context/event-emitter'
|
|
|
|
const RagPipelineChildren = () => {
|
|
const { eventEmitter } = useEventEmitterContextContext()
|
|
const [secretEnvList, setSecretEnvList] = useState<EnvironmentVariable[]>([])
|
|
const showInputFieldDialog = useStore(state => state.showInputFieldDialog)
|
|
const showImportDSLModal = useStore(s => s.showImportDSLModal)
|
|
const setShowImportDSLModal = useStore(s => s.setShowImportDSLModal)
|
|
const {
|
|
handlePaneContextmenuCancel,
|
|
} = usePanelInteractions()
|
|
const {
|
|
exportCheck,
|
|
handleExportDSL,
|
|
} = useDSL()
|
|
|
|
eventEmitter?.useSubscription((v: any) => {
|
|
if (v.type === DSL_EXPORT_CHECK)
|
|
setSecretEnvList(v.payload.data as EnvironmentVariable[])
|
|
})
|
|
|
|
return (
|
|
<>
|
|
{
|
|
showImportDSLModal && (
|
|
<UpdateDSLModal
|
|
onCancel={() => setShowImportDSLModal(false)}
|
|
onBackup={exportCheck!}
|
|
onImport={handlePaneContextmenuCancel}
|
|
/>
|
|
)
|
|
}
|
|
{
|
|
secretEnvList.length > 0 && (
|
|
<DSLExportConfirmModal
|
|
envList={secretEnvList}
|
|
onConfirm={handleExportDSL!}
|
|
onClose={() => setSecretEnvList([])}
|
|
/>
|
|
)
|
|
}
|
|
<RagPipelineHeader />
|
|
<RagPipelinePanel />
|
|
{
|
|
showInputFieldDialog && (<InputField />)
|
|
}
|
|
</>
|
|
)
|
|
}
|
|
|
|
export default memo(RagPipelineChildren)
|