import { Alert, LinearProgress, Snackbar, Typography } from '@mui/material'; import { useTranslation } from 'react-i18next'; import { CloseButton, ReportErrorFabButton, WikiLocation } from './FormComponents'; import type { IWikiWorkspaceFormProps } from './useForm'; import { useImportHtmlWiki, useValidateHtmlWiki } from './useImportHtmlWiki'; import { useWikiCreationProgress } from './useIndicator'; export function ImportHtmlWikiDoneButton({ form, isCreateMainWorkspace, isCreateSyncedWorkspace, errorInWhichComponentSetter, }: IWikiWorkspaceFormProps & { isCreateMainWorkspace: boolean; isCreateSyncedWorkspace: boolean }): React.JSX.Element { const { t } = useTranslation(); const [hasError, wikiCreationMessage, wikiCreationMessageSetter, hasErrorSetter] = useValidateHtmlWiki( isCreateMainWorkspace, isCreateSyncedWorkspace, form, errorInWhichComponentSetter, ); const onSubmit = useImportHtmlWiki( isCreateMainWorkspace, isCreateSyncedWorkspace, form, wikiCreationMessageSetter, hasErrorSetter, errorInWhichComponentSetter, ); const [logPanelOpened, logPanelSetter, inProgressOrError] = useWikiCreationProgress(wikiCreationMessageSetter, wikiCreationMessage, hasError); if (hasError) { return ( <> {wikiCreationMessage} {wikiCreationMessage !== undefined && } ); } return ( <> {inProgressOrError && } {/* 这个好像是log面板 */} { logPanelSetter(false); }} > {wikiCreationMessage} {t('AddWorkspace.ImportWiki')} {form.wikiHtmlPath} ); }