pull/12372/head
StyleZhang 2 years ago
parent 102a42d24c
commit f47b32b26d

@ -25,7 +25,7 @@ import AppsFull from '@/app/components/billing/apps-full-in-dialog'
import { NEED_REFRESH_APP_LIST_KEY } from '@/config' import { NEED_REFRESH_APP_LIST_KEY } from '@/config'
import { getRedirection } from '@/utils/app-redirection' import { getRedirection } from '@/utils/app-redirection'
import cn from '@/utils/classnames' import cn from '@/utils/classnames'
import { useMutationCheckDependenciesBeforeImportDSL } from '@/service/use-plugins' import { useStore as usePluginDependencyStore } from '@/app/components/workflow/plugin-dependency/store'
type CreateFromDSLModalProps = { type CreateFromDSLModalProps = {
show: boolean show: boolean
@ -48,7 +48,6 @@ const CreateFromDSLModal = ({ show, onSuccess, onClose, activeTab = CreateFromDS
const [fileContent, setFileContent] = useState<string>() const [fileContent, setFileContent] = useState<string>()
const [currentTab, setCurrentTab] = useState(activeTab) const [currentTab, setCurrentTab] = useState(activeTab)
const [dslUrlValue, setDslUrlValue] = useState(dslUrl) const [dslUrlValue, setDslUrlValue] = useState(dslUrl)
const { mutateAsync } = useMutationCheckDependenciesBeforeImportDSL()
const [showErrorModal, setShowErrorModal] = useState(false) const [showErrorModal, setShowErrorModal] = useState(false)
const [versions, setVersions] = useState<{ importedVersion: string; systemVersion: string }>() const [versions, setVersions] = useState<{ importedVersion: string; systemVersion: string }>()
const [importId, setImportId] = useState<string>() const [importId, setImportId] = useState<string>()
@ -92,20 +91,22 @@ const CreateFromDSLModal = ({ show, onSuccess, onClose, activeTab = CreateFromDS
mode: DSLImportMode.YAML_CONTENT, mode: DSLImportMode.YAML_CONTENT,
yaml_content: fileContent || '', yaml_content: fileContent || '',
}) })
await mutateAsync({ dslString: fileContent })
} }
if (currentTab === CreateFromDSLModalTab.FROM_URL) { if (currentTab === CreateFromDSLModalTab.FROM_URL) {
response = await importDSL({ response = await importDSL({
mode: DSLImportMode.YAML_URL, mode: DSLImportMode.YAML_URL,
yaml_url: dslUrlValue || '', yaml_url: dslUrlValue || '',
}) })
await mutateAsync({ url: dslUrlValue })
} }
if (!response) if (!response)
return return
const { id, status, app_id, imported_dsl_version, current_dsl_version } = response const { id, status, app_id, imported_dsl_version, current_dsl_version, leaked } = response
if (leaked?.length) {
const { setDependencies } = usePluginDependencyStore.getState()
setDependencies(leaked)
}
if (status === DSLImportStatus.COMPLETED || status === DSLImportStatus.COMPLETED_WITH_WARNINGS) { if (status === DSLImportStatus.COMPLETED || status === DSLImportStatus.COMPLETED_WITH_WARNINGS) {
if (onSuccess) if (onSuccess)
onSuccess() onSuccess()

@ -1,5 +1,6 @@
import type { LangFuseConfig, LangSmithConfig, TracingProvider } from '@/app/(commonLayout)/app/(appDetailLayout)/[appId]/overview/tracing/type' import type { LangFuseConfig, LangSmithConfig, TracingProvider } from '@/app/(commonLayout)/app/(appDetailLayout)/[appId]/overview/tracing/type'
import type { App, AppSSO, AppTemplate, SiteConfig } from '@/types/app' import type { App, AppSSO, AppTemplate, SiteConfig } from '@/types/app'
import type { Dependency } from '@/app/components/plugins/types'
/* export type App = { /* export type App = {
id: string id: string
@ -87,6 +88,7 @@ export type DSLImportResponse = {
current_dsl_version?: string current_dsl_version?: string
imported_dsl_version?: string imported_dsl_version?: string
error: string error: string
leaked: Dependency[]
} }
export type AppSSOResponse = { enabled: AppSSO['enable_sso'] } export type AppSSOResponse = { enabled: AppSSO['enable_sso'] }

Loading…
Cancel
Save