1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-07 09:51:26 +00:00

remove-draft-dialog (#3122)

This commit is contained in:
Michael An
2019-03-18 08:40:31 +08:00
committed by Daniel Pan
parent 5ba079db0b
commit 7404edfd12
2 changed files with 48 additions and 6 deletions

View File

@@ -0,0 +1,32 @@
import React from 'react';
import PropTypes from 'prop-types';
import { gettext } from '../../utils/constants';
import { Button, Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';
const propTypes = {
deleteDraft: PropTypes.func.isRequired,
useDraft: PropTypes.func.isRequired,
localDraftDialog: PropTypes.bool.isRequired,
closeDraftDialog: PropTypes.func.isRequired,
};
class LocalDraftDialog extends React.PureComponent {
render() {
return (
<Modal isOpen={true} toggle={this.props.closeDraftDialog}>
<ModalHeader toggle={this.props.closeDraftDialog}>{gettext('Local draft')}</ModalHeader>
<ModalBody>
<p>{gettext('You have an unsaved draft. Do you like to use it?')}</p>
</ModalBody>
<ModalFooter>
<Button color="primary" onClick={this.props.useDraft}>{gettext('Use draft')}</Button>
<Button color="secondary" onClick={this.props.deleteDraft}>{gettext('Delete draft')}</Button>
</ModalFooter>
</Modal>
);
}
}
LocalDraftDialog.propTypes = propTypes;
export default LocalDraftDialog;

View File

@@ -15,7 +15,7 @@ import ShareDialog from './components/dialog/share-dialog';
import CommentDialog from './components/markdown-view/comment-dialog';
import MarkdownViewerSlate from '@seafile/seafile-editor/dist/viewer/markdown-viewer-slate';
import { serialize, deserialize } from '@seafile/seafile-editor/dist/utils/slate2markdown';
import LocalDraftDialog from '@seafile/seafile-editor/dist/components/local-draft-dialog';
import LocalDraftDialog from './components/dialog/local-draft-dialog';
import DiffViewer from '@seafile/seafile-editor/dist/viewer/diff-viewer';
import MarkdownViewerToolbar from './components/toolbar/markdown-viewer-toolbar';
import HistoryList from './components/markdown-view/history-list';
@@ -454,6 +454,12 @@ class MarkdownEditor extends React.Component {
}
}
closeDraftDialog = () => {
this.setState({
localDraftDialog: false
});
}
clearTimer = () => {
clearTimeout(this.timer);
this.timer = null;
@@ -1054,11 +1060,15 @@ class MarkdownEditor extends React.Component {
return (
<React.Fragment>
{this.state.localDraftDialog?
<ModalPortal>
<LocalDraftDialog
localDraftDialog={this.state.localDraftDialog}
deleteDraft={this.deleteDraft}
useDraft={this.useDraft}/>:
null}
closeDraftDialog={this.closeDraftDialog}
useDraft={this.useDraft}
/>
</ModalPortal>
: null}
{component}
{this.state.showMarkdownEditorDialog && (
<React.Fragment>