import { memo, useState, } from 'react' import { useTranslation } from 'react-i18next' import { useStore, useWorkflowStore, } from '../store' import Button from '@/app/components/base/button' import { PortalToFollowElem, PortalToFollowElemContent, PortalToFollowElemTrigger, } from '@/app/components/base/portal-to-follow-elem' import { publishWorkflow } from '@/service/workflow' import { useStore as useAppStore } from '@/app/components/app/store' const Publish = () => { const { t } = useTranslation() const workflowStore = useWorkflowStore() const runningStatus = useStore(s => s.runningStatus) const [open, setOpen] = useState(false) const handlePublish = async () => { const appId = useAppStore.getState().appDetail?.id try { const res = await publishWorkflow(`/apps/${appId}/workflows/publish`) if (res) workflowStore.setState({ publishedAt: res.created_at }) } catch (e) { } } return ( { if (runningStatus) return setOpen(v => !v) }}>
{t('workflow.common.currentDraft').toLocaleUpperCase()}
{t('workflow.common.autoSaved')} 3 min ago · Evan
{t('workflow.common.latestPublished').toLocaleUpperCase()}
{t('workflow.common.autoSaved')} 3 min ago · Evan
) } export default memo(Publish)