@seafile/sdoc-editor 0.2.23-beta1 → 0.2.23-beta3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/doc-info/index.js +4 -5
- package/dist/components/doc-operations/index.js +5 -3
- package/dist/components/doc-operations/revision-operations/index.js +13 -10
- package/dist/hooks/use-document.js +2 -6
- package/dist/pages/published-revision-viewer.js +3 -1
- package/dist/pages/simple-editor.js +32 -2
- package/package.json +1 -1
- package/dist/hooks/use-config.js +0 -2
|
@@ -7,15 +7,14 @@ import { EXTERNAL_EVENT } from '../../constants';
|
|
|
7
7
|
import { DateUtils } from '../../utils';
|
|
8
8
|
import DraftDropdown from '../draft-dropdown';
|
|
9
9
|
import RevisionAvatar from '../../assets/images/revision-avatar.png';
|
|
10
|
-
import { useDocument } from '../../hooks';
|
|
11
10
|
import './index.css';
|
|
12
11
|
var DocInfo = function DocInfo(_ref) {
|
|
13
12
|
var t = _ref.t,
|
|
14
13
|
isStarred = _ref.isStarred,
|
|
15
14
|
isDraft = _ref.isDraft,
|
|
16
|
-
isEditMode = _ref.isEditMode
|
|
17
|
-
|
|
18
|
-
isPublished =
|
|
15
|
+
isEditMode = _ref.isEditMode,
|
|
16
|
+
_ref$isPublished = _ref.isPublished,
|
|
17
|
+
isPublished = _ref$isPublished === void 0 ? false : _ref$isPublished;
|
|
19
18
|
var onInternalLinkClick = useCallback(function () {
|
|
20
19
|
var eventBus = EventBus.getInstance();
|
|
21
20
|
eventBus.dispatch(EXTERNAL_EVENT.INTERNAL_LINK_CLICK);
|
|
@@ -70,7 +69,7 @@ var DocInfo = function DocInfo(_ref) {
|
|
|
70
69
|
className: "sdoc-revision-order"
|
|
71
70
|
}, t('Revision') + ' ' + revisionId), isPublished && /*#__PURE__*/React.createElement("div", {
|
|
72
71
|
className: "sdoc-revision-order"
|
|
73
|
-
}, t('Published')), /*#__PURE__*/React.createElement(TipMessage, {
|
|
72
|
+
}, t('Published')), !isPublished && /*#__PURE__*/React.createElement(TipMessage, {
|
|
74
73
|
isEditMode: isEditMode
|
|
75
74
|
})), /*#__PURE__*/React.createElement("div", {
|
|
76
75
|
className: "doc-state"
|
|
@@ -9,16 +9,16 @@ import CommentsOperation from './comments-operation';
|
|
|
9
9
|
import ShareOperation from './share-operation';
|
|
10
10
|
import TagOperation from './tag-operation';
|
|
11
11
|
import { isMobile } from '../../utils';
|
|
12
|
-
import { useDocument } from '../../hooks';
|
|
13
12
|
import './style.css';
|
|
14
13
|
var DocOperations = function DocOperations(_ref) {
|
|
15
14
|
var isShowChanges = _ref.isShowChanges,
|
|
15
|
+
_ref$isPublished = _ref.isPublished,
|
|
16
|
+
isPublished = _ref$isPublished === void 0 ? false : _ref$isPublished,
|
|
16
17
|
changes = _ref.changes,
|
|
17
18
|
handleViewChangesToggle = _ref.handleViewChangesToggle,
|
|
19
|
+
handleRevisionMerged = _ref.handleRevisionMerged,
|
|
18
20
|
handleRevisionPublished = _ref.handleRevisionPublished;
|
|
19
21
|
var isSdocRevision = context.getSetting('isSdocRevision');
|
|
20
|
-
var _useDocument = useDocument(),
|
|
21
|
-
isPublished = _useDocument.isPublished;
|
|
22
22
|
if (isMobile) {
|
|
23
23
|
return /*#__PURE__*/React.createElement("div", {
|
|
24
24
|
className: "doc-ops"
|
|
@@ -28,8 +28,10 @@ var DocOperations = function DocOperations(_ref) {
|
|
|
28
28
|
className: "doc-ops"
|
|
29
29
|
}, /*#__PURE__*/React.createElement(RevisionOperations, {
|
|
30
30
|
isShowChanges: isShowChanges,
|
|
31
|
+
isPublished: isPublished,
|
|
31
32
|
changes: changes,
|
|
32
33
|
handleViewChangesToggle: handleViewChangesToggle,
|
|
34
|
+
handleRevisionMerged: handleRevisionMerged,
|
|
33
35
|
handleRevisionPublished: handleRevisionPublished
|
|
34
36
|
}), !isPublished && /*#__PURE__*/React.createElement(TagOperation, null), !isPublished && /*#__PURE__*/React.createElement(CommentsOperation, null), !isSdocRevision && /*#__PURE__*/React.createElement(ShareOperation, null), /*#__PURE__*/React.createElement(HistoryOperation, null), !isPublished && /*#__PURE__*/React.createElement(CollaboratorsOperation, null), !isSdocRevision && /*#__PURE__*/React.createElement(MoreOperations, null));
|
|
35
37
|
};
|
|
@@ -4,7 +4,6 @@ import { EventBus } from '../../../basic-sdk';
|
|
|
4
4
|
import { getRebase, hasConflict } from '../../../basic-sdk/utils/rebase';
|
|
5
5
|
import context from '../../../context';
|
|
6
6
|
import { EXTERNAL_EVENT, TIP_TYPE } from '../../../constants';
|
|
7
|
-
import { useDocument } from '../../../hooks/use-document';
|
|
8
7
|
import toaster from '../../toast';
|
|
9
8
|
import TipDialog from '../../tip-dialog';
|
|
10
9
|
import { useTranslation } from 'react-i18next';
|
|
@@ -13,10 +12,14 @@ import ViewChanges from './view-changes';
|
|
|
13
12
|
import MoreRevisionOperations from './more-revision-operations';
|
|
14
13
|
import Revisions from './revisions';
|
|
15
14
|
import ChangesCount from './changes-count';
|
|
15
|
+
import { useDocument } from '../../../hooks';
|
|
16
16
|
var RevisionOperations = function RevisionOperations(_ref) {
|
|
17
17
|
var isShowChanges = _ref.isShowChanges,
|
|
18
|
+
_ref$isPublished = _ref.isPublished,
|
|
19
|
+
isPublished = _ref$isPublished === void 0 ? false : _ref$isPublished,
|
|
18
20
|
changes = _ref.changes,
|
|
19
21
|
handleViewChangesToggle = _ref.handleViewChangesToggle,
|
|
22
|
+
handleRevisionMerged = _ref.handleRevisionMerged,
|
|
20
23
|
handleRevisionPublished = _ref.handleRevisionPublished;
|
|
21
24
|
var isSdocRevision = context.getSetting('isSdocRevision');
|
|
22
25
|
var _useTranslation = useTranslation(),
|
|
@@ -25,7 +28,7 @@ var RevisionOperations = function RevisionOperations(_ref) {
|
|
|
25
28
|
_useState2 = _slicedToArray(_useState, 2),
|
|
26
29
|
isShowTip = _useState2[0],
|
|
27
30
|
setShowTip = _useState2[1];
|
|
28
|
-
var _useState3 = useState(
|
|
31
|
+
var _useState3 = useState(''),
|
|
29
32
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
30
33
|
tipType = _useState4[0],
|
|
31
34
|
setTipType = _useState4[1];
|
|
@@ -34,9 +37,7 @@ var RevisionOperations = function RevisionOperations(_ref) {
|
|
|
34
37
|
mergeValue = _useState6[0],
|
|
35
38
|
setMergeValue = _useState6[1];
|
|
36
39
|
var _useDocument = useDocument(),
|
|
37
|
-
loadDocument = _useDocument.loadDocument
|
|
38
|
-
isPublished = _useDocument.isPublished,
|
|
39
|
-
setPublished = _useDocument.setPublished;
|
|
40
|
+
loadDocument = _useDocument.loadDocument;
|
|
40
41
|
var onDocumentReplaced = useCallback(function () {
|
|
41
42
|
if (isShowTip) return;
|
|
42
43
|
setTipType(TIP_TYPE.HAS_BEEN_REPLACED);
|
|
@@ -44,9 +45,9 @@ var RevisionOperations = function RevisionOperations(_ref) {
|
|
|
44
45
|
}, [isShowTip]);
|
|
45
46
|
var hasPublishRevision = useCallback(function () {
|
|
46
47
|
if (isPublished) return;
|
|
47
|
-
|
|
48
|
+
handleRevisionPublished(true);
|
|
48
49
|
toaster.success(t('Revision published'));
|
|
49
|
-
}, [isPublished,
|
|
50
|
+
}, [isPublished, handleRevisionPublished, t]);
|
|
50
51
|
var onDocumentRemoved = useCallback(function () {
|
|
51
52
|
if (isShowTip) return;
|
|
52
53
|
setTipType(TIP_TYPE.HAS_BEEN_REMOVED);
|
|
@@ -123,7 +124,9 @@ var RevisionOperations = function RevisionOperations(_ref) {
|
|
|
123
124
|
if (canMerge && isNeedReplaceMaster) {
|
|
124
125
|
setTipType(TIP_TYPE.PUBLISHING);
|
|
125
126
|
context.publishRevision().then(function (res) {
|
|
126
|
-
|
|
127
|
+
setShowTip(false);
|
|
128
|
+
setTipType('');
|
|
129
|
+
handleRevisionPublished(true);
|
|
127
130
|
toaster.success(t('Revision published'));
|
|
128
131
|
}).catch(function (error) {
|
|
129
132
|
toaster.danger(t('Error'));
|
|
@@ -147,7 +150,7 @@ var RevisionOperations = function RevisionOperations(_ref) {
|
|
|
147
150
|
}
|
|
148
151
|
toaster.danger(t('Error'));
|
|
149
152
|
});
|
|
150
|
-
}, [loadDocument, t,
|
|
153
|
+
}, [loadDocument, t, handleRevisionPublished]);
|
|
151
154
|
|
|
152
155
|
// confirm publish
|
|
153
156
|
var onSubmit = useCallback(function () {
|
|
@@ -178,7 +181,7 @@ var RevisionOperations = function RevisionOperations(_ref) {
|
|
|
178
181
|
context.updateSettings({
|
|
179
182
|
'originFileVersion': origin_file_version
|
|
180
183
|
});
|
|
181
|
-
|
|
184
|
+
handleRevisionMerged && handleRevisionMerged(mergeValue);
|
|
182
185
|
setShowTip(false);
|
|
183
186
|
}).catch(function (error) {
|
|
184
187
|
toaster.danger(t('Error'));
|
|
@@ -3,6 +3,7 @@ import { useCallback, useEffect, useState } from 'react';
|
|
|
3
3
|
import context from '../context';
|
|
4
4
|
export var useDocument = function useDocument() {
|
|
5
5
|
var isSdocRevision = context.getSetting('isSdocRevision');
|
|
6
|
+
var isPublished = context.getSetting('isPublished');
|
|
6
7
|
var _useState = useState(true),
|
|
7
8
|
_useState2 = _slicedToArray(_useState, 2),
|
|
8
9
|
isFirstLoading = _useState2[0],
|
|
@@ -23,10 +24,6 @@ export var useDocument = function useDocument() {
|
|
|
23
24
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
24
25
|
errorMessage = _useState8[0],
|
|
25
26
|
setErrorMessage = _useState8[1];
|
|
26
|
-
var _useState9 = useState(context.getSetting('isPublished')),
|
|
27
|
-
_useState10 = _slicedToArray(_useState9, 2),
|
|
28
|
-
isPublished = _useState10[0],
|
|
29
|
-
setPublished = _useState10[1];
|
|
30
27
|
var loadDocument = useCallback(function () {
|
|
31
28
|
return new Promise(function (resolve, reject) {
|
|
32
29
|
context.getFileContent().then(function (res) {
|
|
@@ -86,7 +83,6 @@ export var useDocument = function useDocument() {
|
|
|
86
83
|
document: document,
|
|
87
84
|
loadDocument: loadDocument,
|
|
88
85
|
reloadDocument: reloadDocument,
|
|
89
|
-
|
|
90
|
-
setPublished: setPublished
|
|
86
|
+
setErrorMessage: setErrorMessage
|
|
91
87
|
};
|
|
92
88
|
};
|
|
@@ -78,10 +78,12 @@ var PublishedRevisionViewer = function PublishedRevisionViewer() {
|
|
|
78
78
|
}, t(errorMessage)));
|
|
79
79
|
}
|
|
80
80
|
return /*#__PURE__*/React.createElement(ErrorBoundary, null, /*#__PURE__*/React.createElement(Layout, null, /*#__PURE__*/React.createElement(Header, null, /*#__PURE__*/React.createElement(DocInfo, {
|
|
81
|
-
isEditMode: false
|
|
81
|
+
isEditMode: false,
|
|
82
|
+
isPublished: true
|
|
82
83
|
}), /*#__PURE__*/React.createElement(DocOperations, {
|
|
83
84
|
isShowChanges: isShowChanges,
|
|
84
85
|
changes: changes,
|
|
86
|
+
isPublished: true,
|
|
85
87
|
handleViewChangesToggle: handleViewChangesToggle
|
|
86
88
|
})), /*#__PURE__*/React.createElement(Content, null, /*#__PURE__*/React.createElement(PublishedRevisionDiffViewer, {
|
|
87
89
|
isShowChanges: isShowChanges,
|
|
@@ -24,7 +24,7 @@ var SimpleEditor = function SimpleEditor(_ref) {
|
|
|
24
24
|
errorMessage = _useDocument.errorMessage,
|
|
25
25
|
document = _useDocument.document,
|
|
26
26
|
reloadDocument = _useDocument.reloadDocument,
|
|
27
|
-
|
|
27
|
+
setErrorMessage = _useDocument.setErrorMessage;
|
|
28
28
|
var _useState = useState(false),
|
|
29
29
|
_useState2 = _slicedToArray(_useState, 2),
|
|
30
30
|
isShowChanges = _useState2[0],
|
|
@@ -37,6 +37,11 @@ var SimpleEditor = function SimpleEditor(_ref) {
|
|
|
37
37
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
38
38
|
changes = _useState6[0],
|
|
39
39
|
setChanges = _useState6[1];
|
|
40
|
+
var initIsPublished = context.getSetting('isPublished');
|
|
41
|
+
var _useState7 = useState(initIsPublished),
|
|
42
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
43
|
+
isPublished = _useState8[0],
|
|
44
|
+
setPublished = _useState8[1];
|
|
40
45
|
|
|
41
46
|
// useMount: reset title
|
|
42
47
|
useEffect(function () {
|
|
@@ -64,11 +69,33 @@ var SimpleEditor = function SimpleEditor(_ref) {
|
|
|
64
69
|
setShowChanges(isShowChanges);
|
|
65
70
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
66
71
|
}, [document, editorRef.current, isPublished]);
|
|
67
|
-
var
|
|
72
|
+
var handleRevisionMerged = useCallback(function (value) {
|
|
68
73
|
setShowChanges(false);
|
|
69
74
|
editorRef.current.setSlateValue(value);
|
|
70
75
|
editorRef.current.updateDocumentVersion(value);
|
|
71
76
|
}, []);
|
|
77
|
+
var handleRevisionPublished = useCallback(function () {
|
|
78
|
+
context.getPublishedRevisionContent().then(function (res) {
|
|
79
|
+
var revisionContentString = res.data.content;
|
|
80
|
+
var document = JSON.parse(revisionContentString);
|
|
81
|
+
setRevisionContent(document);
|
|
82
|
+
setPublished(true);
|
|
83
|
+
context.settings['isPublished'] = true;
|
|
84
|
+
}).catch(function (error) {
|
|
85
|
+
// eslint-disable-next-line
|
|
86
|
+
console.log(error);
|
|
87
|
+
var errorMessage = 'Load_doc_content_error';
|
|
88
|
+
if (error && error.response) {
|
|
89
|
+
var _ref2 = error.response.data || {},
|
|
90
|
+
error_type = _ref2.error_type;
|
|
91
|
+
if (error_type === 'content_invalid') {
|
|
92
|
+
errorMessage = 'Sdoc_format_invalid';
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
setErrorMessage(errorMessage);
|
|
96
|
+
setPublished(true);
|
|
97
|
+
});
|
|
98
|
+
}, [setErrorMessage]);
|
|
72
99
|
if (isFirstLoading) {
|
|
73
100
|
return /*#__PURE__*/React.createElement(Loading, null);
|
|
74
101
|
}
|
|
@@ -82,11 +109,14 @@ var SimpleEditor = function SimpleEditor(_ref) {
|
|
|
82
109
|
return /*#__PURE__*/React.createElement(ErrorBoundary, null, /*#__PURE__*/React.createElement(Layout, null, /*#__PURE__*/React.createElement(Header, null, /*#__PURE__*/React.createElement(DocInfo, {
|
|
83
110
|
isStarred: isStarred,
|
|
84
111
|
isDraft: isDraft,
|
|
112
|
+
isPublished: isPublished,
|
|
85
113
|
isEditMode: isPublished ? false : !isShowChanges
|
|
86
114
|
}), /*#__PURE__*/React.createElement(DocOperations, {
|
|
87
115
|
isShowChanges: isShowChanges,
|
|
116
|
+
isPublished: isPublished,
|
|
88
117
|
changes: changes,
|
|
89
118
|
handleViewChangesToggle: handleViewChangesToggle,
|
|
119
|
+
handleRevisionMerged: handleRevisionMerged,
|
|
90
120
|
handleRevisionPublished: handleRevisionPublished
|
|
91
121
|
})), /*#__PURE__*/React.createElement(Content, null, isPublished && /*#__PURE__*/React.createElement(PublishedRevisionDiffViewer, {
|
|
92
122
|
isShowChanges: isShowChanges,
|
package/package.json
CHANGED
package/dist/hooks/use-config.js
DELETED