@seafile/sdoc-editor 2.0.78 → 2.0.80-test-0.0.1
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/assets/css/plugin-editor.css +4 -0
- package/dist/basic-sdk/api/sdoc-server-api.js +24 -24
- package/dist/basic-sdk/api/seafile-api.js +3 -3
- package/dist/basic-sdk/comment/comment-decorate.js +1 -1
- package/dist/basic-sdk/comment/components/comment-all-participants/participant-avatar.js +1 -1
- package/dist/basic-sdk/comment/components/comment-context-menu/index.js +5 -0
- package/dist/basic-sdk/comment/components/comment-delete-popover.js +1 -1
- package/dist/basic-sdk/comment/components/comment-item-collapse-wrapper.js +5 -3
- package/dist/basic-sdk/comment/components/comment-item-content.js +32 -11
- package/dist/basic-sdk/comment/components/comment-item-reply.js +1 -1
- package/dist/basic-sdk/comment/components/comment-item-wrapper.js +10 -9
- package/dist/basic-sdk/comment/components/comment-list.js +14 -13
- package/dist/basic-sdk/comment/components/editor-comment.js +5 -8
- package/dist/basic-sdk/comment/components/elements-comment-count/index.js +1 -1
- package/dist/basic-sdk/comment/components/global-comment/index.js +4 -4
- package/dist/basic-sdk/comment/helper.js +11 -11
- package/dist/basic-sdk/comment/hooks/notification-hooks/use-notification-mount.js +1 -1
- package/dist/basic-sdk/comment/provider/notification-context-provider.js +3 -3
- package/dist/basic-sdk/comment/reducer/comment-reducer.js +24 -50
- package/dist/basic-sdk/comment/reducer/notification-reducer.js +7 -9
- package/dist/basic-sdk/comment/utils/index.js +2 -2
- package/dist/basic-sdk/comment/utils/notification-utils.js +3 -3
- package/dist/basic-sdk/components/toast/alert.js +1 -1
- package/dist/basic-sdk/components/toast/toast.js +1 -1
- package/dist/basic-sdk/components/toast/toastManager.js +10 -8
- package/dist/basic-sdk/components/toast/toaster.js +10 -13
- package/dist/basic-sdk/constants/index.js +1 -3
- package/dist/basic-sdk/context.js +2 -2
- package/dist/basic-sdk/cursor/helper.js +4 -11
- package/dist/basic-sdk/editor/comment-article.js +4 -4
- package/dist/basic-sdk/editor/sdoc-comment-editor.js +4 -4
- package/dist/basic-sdk/editor/sdoc-editor.js +4 -4
- package/dist/basic-sdk/editor/wiki-editor.js +4 -4
- package/dist/basic-sdk/extension/commons/color-menu/index.js +5 -5
- package/dist/basic-sdk/extension/commons/file-insert-dialog/index.js +8 -9
- package/dist/basic-sdk/extension/commons/insert-element-dialog/index.js +1 -1
- package/dist/basic-sdk/extension/commons/menu-shortcut-indicator/index.js +1 -1
- package/dist/basic-sdk/extension/commons/select/_option.js +2 -2
- package/dist/basic-sdk/extension/commons/select/field-setting.js +6 -7
- package/dist/basic-sdk/extension/commons/select/index.js +3 -3
- package/dist/basic-sdk/extension/commons/select/menu/item.js +2 -2
- package/dist/basic-sdk/extension/commons/select-file-dialog/helpers.js +25 -7
- package/dist/basic-sdk/extension/commons/select-file-dialog/index.js +6 -8
- package/dist/basic-sdk/extension/commons/select-file-dialog/local-files/index.js +7 -9
- package/dist/basic-sdk/extension/commons/wiki-file-insert-dialog/index.js +8 -9
- package/dist/basic-sdk/extension/constants/index.js +17 -1
- package/dist/basic-sdk/extension/constants/menus-config.js +13 -13
- package/dist/basic-sdk/extension/core/queries/index.js +35 -35
- package/dist/basic-sdk/extension/core/transforms/rebase.js +10 -13
- package/dist/basic-sdk/extension/core/transforms/remove-node-children.js +4 -3
- package/dist/basic-sdk/extension/core/transforms/replace-node.js +9 -10
- package/dist/basic-sdk/extension/core/transforms/update-parent-node.js +3 -3
- package/dist/basic-sdk/extension/core/utils/index.js +5 -4
- package/dist/basic-sdk/extension/plugins/ai/ai-module/helpers.js +3 -1
- package/dist/basic-sdk/extension/plugins/ai/ai-module/index.js +10 -10
- package/dist/basic-sdk/extension/plugins/blockquote/helpers.js +3 -3
- package/dist/basic-sdk/extension/plugins/blockquote/menu/index.js +5 -4
- package/dist/basic-sdk/extension/plugins/callout/menu/index.js +1 -1
- package/dist/basic-sdk/extension/plugins/callout/render-elem/callout-color-selector/index.js +1 -1
- package/dist/basic-sdk/extension/plugins/callout/render-elem/index.js +1 -1
- package/dist/basic-sdk/extension/plugins/check-list/menu/index.js +5 -4
- package/dist/basic-sdk/extension/plugins/check-list/render-elem.js +1 -1
- package/dist/basic-sdk/extension/plugins/clear-format/menu/index.js +6 -4
- package/dist/basic-sdk/extension/plugins/code-block/hover-menu/index.js +4 -4
- package/dist/basic-sdk/extension/plugins/code-block/plugin.js +3 -6
- package/dist/basic-sdk/extension/plugins/code-block/render-elem.js +6 -6
- package/dist/basic-sdk/extension/plugins/file-link/helpers.js +1 -1
- package/dist/basic-sdk/extension/plugins/file-link/hover-menu/index.js +1 -1
- package/dist/basic-sdk/extension/plugins/file-link/render-elem.css +8 -0
- package/dist/basic-sdk/extension/plugins/file-link/render-elem.js +17 -12
- package/dist/basic-sdk/extension/plugins/font/helpers.js +5 -5
- package/dist/basic-sdk/extension/plugins/font/menu/font-family/index.js +3 -3
- package/dist/basic-sdk/extension/plugins/font/menu/font-size/index.js +1 -1
- package/dist/basic-sdk/extension/plugins/header/menu/index.js +3 -3
- package/dist/basic-sdk/extension/plugins/header/placeholder.js +1 -1
- package/dist/basic-sdk/extension/plugins/header/render-elem.js +16 -21
- package/dist/basic-sdk/extension/plugins/history/history-menu.js +9 -8
- package/dist/basic-sdk/extension/plugins/html/helper.js +2 -2
- package/dist/basic-sdk/extension/plugins/image/helpers.js +12 -14
- package/dist/basic-sdk/extension/plugins/image/hover-menu/index.js +5 -9
- package/dist/basic-sdk/extension/plugins/image/image-loader/index.js +1 -1
- package/dist/basic-sdk/extension/plugins/image/menu/index.js +8 -8
- package/dist/basic-sdk/extension/plugins/image/plugin.js +2 -2
- package/dist/basic-sdk/extension/plugins/image/render-elem.js +11 -20
- package/dist/basic-sdk/extension/plugins/image/use-copy-image.js +4 -4
- package/dist/basic-sdk/extension/plugins/link/helpers.js +3 -3
- package/dist/basic-sdk/extension/plugins/link/hover/index.js +1 -1
- package/dist/basic-sdk/extension/plugins/link/menu/index.js +6 -5
- package/dist/basic-sdk/extension/plugins/list/menu/index.js +5 -4
- package/dist/basic-sdk/extension/plugins/list/plugin/index.js +4 -3
- package/dist/basic-sdk/extension/plugins/list/plugin/on-tab-handle.js +3 -6
- package/dist/basic-sdk/extension/plugins/list/transforms/insert-list-item.js +3 -4
- package/dist/basic-sdk/extension/plugins/list/transforms/toggle-list.js +5 -6
- package/dist/basic-sdk/extension/plugins/markdown/plugin.js +7 -17
- package/dist/basic-sdk/extension/plugins/mention/plugin.js +5 -6
- package/dist/basic-sdk/extension/plugins/mention/render-elem/comment-participant-item.js +1 -1
- package/dist/basic-sdk/extension/plugins/mention/render-elem/participant-popover.js +2 -2
- package/dist/basic-sdk/extension/plugins/multi-column/helper.js +4 -4
- package/dist/basic-sdk/extension/plugins/multi-column/render/index.js +10 -14
- package/dist/basic-sdk/extension/plugins/multi-column/render/multi-column-root.js +3 -3
- package/dist/basic-sdk/extension/plugins/multi-column/render/render-column.js +1 -1
- package/dist/basic-sdk/extension/plugins/multi-column/resize-handlers/column-resize-handler.js +1 -1
- package/dist/basic-sdk/extension/plugins/multi-column/resize-handlers/index.js +8 -10
- package/dist/basic-sdk/extension/plugins/paragraph/render-elem.js +4 -4
- package/dist/basic-sdk/extension/plugins/quick-insert/render-elem.js +1 -1
- package/dist/basic-sdk/extension/plugins/sdoc-link/helpers.js +3 -4
- package/dist/basic-sdk/extension/plugins/sdoc-link/hover-menu/index.js +2 -2
- package/dist/basic-sdk/extension/plugins/sdoc-link/render/render-elem.js +5 -8
- package/dist/basic-sdk/extension/plugins/search-replace/helper.js +6 -6
- package/dist/basic-sdk/extension/plugins/search-replace/menu/index.js +3 -3
- package/dist/basic-sdk/extension/plugins/search-replace/popover/index.js +2 -2
- package/dist/basic-sdk/extension/plugins/search-replace/popover/replace-all-confirm-modal.js +10 -4
- package/dist/basic-sdk/extension/plugins/table/helpers.js +21 -38
- package/dist/basic-sdk/extension/plugins/table/menu/active-table-menu/common-menu.js +2 -2
- package/dist/basic-sdk/extension/plugins/table/menu/color-selector-popover/index.js +3 -3
- package/dist/basic-sdk/extension/plugins/table/model.js +2 -2
- package/dist/basic-sdk/extension/plugins/table/plugin.js +16 -21
- package/dist/basic-sdk/extension/plugins/table/popover/table-size-popover/index.js +4 -4
- package/dist/basic-sdk/extension/plugins/table/popover/table-template/sample-table.js +3 -3
- package/dist/basic-sdk/extension/plugins/table/render/index.js +8 -11
- package/dist/basic-sdk/extension/plugins/table/render/render-cell.js +9 -18
- package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/column-resize-handler.js +6 -6
- package/dist/basic-sdk/extension/plugins/table/render/resize-handlers/first-column-left-resize-handler.js +4 -3
- package/dist/basic-sdk/extension/plugins/table/render/resize-mask/index.js +16 -20
- package/dist/basic-sdk/extension/plugins/table/render/table-root.js +4 -4
- package/dist/basic-sdk/extension/plugins/text-align/menu/index.js +1 -1
- package/dist/basic-sdk/extension/plugins/text-style/caret.js +5 -6
- package/dist/basic-sdk/extension/plugins/text-style/menu/comemnt-editor-menu.js +5 -5
- package/dist/basic-sdk/extension/plugins/text-style/menu/index.js +5 -6
- package/dist/basic-sdk/extension/plugins/text-style/render-elem.js +8 -6
- package/dist/basic-sdk/extension/plugins/video/helpers.js +8 -8
- package/dist/basic-sdk/extension/plugins/video/render-elem.js +4 -4
- package/dist/basic-sdk/extension/plugins/wiki-link/helpers.js +2 -2
- package/dist/basic-sdk/extension/render/custom-element.js +10 -15
- package/dist/basic-sdk/extension/render/render-comment-editor-element.js +10 -15
- package/dist/basic-sdk/extension/toolbar/context-toolbar/index.js +3 -3
- package/dist/basic-sdk/extension/toolbar/header-toolbar/index.js +2 -2
- package/dist/basic-sdk/extension/toolbar/header-toolbar/insert-toolbar/index.js +1 -1
- package/dist/basic-sdk/extension/toolbar/insert-element-toolbar/index.js +12 -31
- package/dist/basic-sdk/extension/toolbar/side-toolbar/index.js +3 -3
- package/dist/basic-sdk/extension/toolbar/side-toolbar/insert-block-menu.js +11 -28
- package/dist/basic-sdk/extension/toolbar/side-toolbar/side-menu.js +5 -8
- package/dist/basic-sdk/highlight/setNodeToDecorations.js +5 -4
- package/dist/basic-sdk/hooks/use-selection-position.js +3 -3
- package/dist/basic-sdk/index.js +106 -0
- package/dist/basic-sdk/node-id/helpers.js +8 -12
- package/dist/basic-sdk/node-id/index.js +1 -1
- package/dist/basic-sdk/outline/outline-item.js +3 -4
- package/dist/basic-sdk/right-panel/index.js +6 -7
- package/dist/basic-sdk/slate-convert/html-to-slate/constants.js +6 -6
- package/dist/basic-sdk/slate-convert/html-to-slate/index.js +2 -2
- package/dist/basic-sdk/slate-convert/md-to-slate/transform.js +24 -31
- package/dist/basic-sdk/slate-convert/slate-to-md/transform.js +5 -5
- package/dist/basic-sdk/socket/helpers.js +5 -6
- package/dist/basic-sdk/socket/socket-client.js +4 -4
- package/dist/basic-sdk/socket/socket-manager.js +13 -13
- package/dist/basic-sdk/utils/Kebab-to-camel.js +1 -1
- package/dist/basic-sdk/utils/default-mode.js +1 -1
- package/dist/basic-sdk/utils/diff-text.js +1 -1
- package/dist/basic-sdk/utils/diff.js +34 -48
- package/dist/basic-sdk/utils/document-utils.js +5 -7
- package/dist/basic-sdk/utils/full-width-mode.js +3 -3
- package/dist/basic-sdk/utils/local-storage-utils.js +1 -1
- package/dist/basic-sdk/utils/object-utils.js +3 -5
- package/dist/basic-sdk/utils/rebase.js +21 -36
- package/dist/components/doc-info/index.js +3 -3
- package/dist/components/doc-operations/collaborators-operation/collaborators-popover.js +1 -1
- package/dist/components/doc-operations/more-operations.js +13 -16
- package/dist/components/doc-operations/plugins-operations.js +3 -4
- package/dist/components/doc-operations/presentation-operation/index.js +1 -2
- package/dist/components/doc-operations/revision-operations/changes-count/index.js +4 -5
- package/dist/components/doc-operations/revision-operations/index.js +24 -26
- package/dist/components/doc-operations/revision-operations/more-revision-operations/index.js +2 -2
- package/dist/components/doc-operations/revision-operations/revisions/revisions-dialog/index.js +4 -4
- package/dist/components/doc-operations/revision-operations/revisions/revisions-dialog/revision-operation/index.js +5 -6
- package/dist/components/doc-operations/revision-operations/view-changes/index.js +13 -12
- package/dist/{pages → components/error-boundary}/error-page.js +2 -2
- package/dist/components/tip-dialog/index.js +1 -1
- package/dist/constants/index.js +7 -7
- package/dist/layout/content.js +8 -5
- package/dist/layout/header.js +8 -5
- package/dist/layout/layout.js +16 -15
- package/dist/pages/published-revision-viewer.js +1 -1
- package/dist/pages/sdoc-wiki-editor.js +7 -12
- package/dist/pages/simple-editor.js +2 -3
- package/dist/pages/simple-viewer.js +1 -1
- package/dist/pages/wiki-viewer.js +1 -1
- package/dist/plugin-module/constants/index.js +3 -3
- package/dist/plugin-module/editor/plugin-editor.js +4 -4
- package/dist/plugin-module/gloable-ui/insert-element-dialog.js +1 -1
- package/dist/plugin-module/plugins/chart/chart-edit-dialog/index.js +2 -4
- package/dist/plugin-module/plugins/chart/helpers.js +6 -6
- package/dist/plugin-module/plugins/seatable-column/helpers.js +3 -6
- package/dist/plugin-module/plugins/seatable-column/menu/column-list-item.js +1 -1
- package/dist/plugin-module/plugins/seatable-column/render-elem.js +25 -32
- package/dist/plugin-module/plugins/seatable-row/dialog/add-seatable-row-dialog/record-content.js +2 -2
- package/dist/plugin-module/plugins/seatable-row/dialog/add-seatable-row-dialog/resize-handle/ResizeHandle.js +2 -4
- package/dist/plugin-module/plugins/seatable-row/dialog/add-seatable-row-dialog/row-card-header-cell.js +2 -2
- package/dist/plugin-module/plugins/seatable-row/dialog/add-seatable-row-dialog/row-card-header.js +2 -2
- package/dist/plugin-module/plugins/seatable-row/dialog/add-seatable-row-dialog/row-card-item.js +1 -1
- package/dist/plugin-module/plugins/seatable-row/helpers.js +2 -3
- package/dist/plugin-module/plugins/seatable-row/render-elem/index.js +6 -7
- package/dist/plugin-module/plugins/seatable-row/render-elem/record-header.js +4 -4
- package/dist/plugin-module/plugins/seatable-tables/formatter/index.js +1 -1
- package/dist/plugin-module/plugins/seatable-tables/formatter/link-formatter/index.js +18 -18
- package/dist/plugin-module/plugins/seatable-tables/helpers.js +2 -3
- package/dist/plugin-module/plugins/seatable-tables/op-menu/index.js +3 -3
- package/dist/plugin-module/plugins/seatable-tables/render-element/record-header.js +4 -4
- package/dist/plugin-module/plugins/seatable-tables/render-element/seatable-table.js +6 -7
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/common-add-tool/index.js +2 -2
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/dtable-search-input/index.js +1 -1
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/_department-utils.js +4 -3
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/department-multiple-select.js +3 -3
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/department-single-select.js +5 -5
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/selected-departments.js +3 -3
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/filter-item.js +2 -2
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/rate-item/index.js +5 -5
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover.js +1 -1
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/hide-column-setter/hide-column-item.js +1 -1
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/hide-column-setter/hide-column-popover.js +1 -1
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/index.js +3 -5
- package/dist/plugin-module/plugins/seatable-tables/seatable-settings/sort-setter/sort-popover.js +1 -1
- package/dist/plugin-module/toolbar/header-toolbar/index.js +2 -2
- package/dist/plugin-module/toolbar/header-toolbar/insert-toolbar/index.js +1 -1
- package/dist/utils/date-utils.js +11 -11
- package/dist/utils/index.js +2 -5
- package/package.json +1 -1
- package/dist/components/copy-image-error-svg/index.js +0 -64
- package/dist/entry.js +0 -9
- package/dist/utils/base64-to-unit8array.js +0 -21
- package/dist/utils/hotkey.js +0 -32
- package/dist/utils/is-punctuation-mark.js +0 -50
- /package/dist/{basic-sdk/assets → assets}/images/sdoc-freezed.png +0 -0
- /package/dist/{assets/css → components/error-boundary}/error-page.css +0 -0
- /package/dist/{pages/error-boundary.js → components/error-boundary/index.js} +0 -0
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.hasConflict = exports.getRebase = exports.canMerge = void 0;
|
|
8
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
8
9
|
var _constants = require("../constants");
|
|
9
10
|
var _constants2 = require("../extension/constants");
|
|
10
11
|
var _helpers = require("../node-id/helpers");
|
|
@@ -34,15 +35,14 @@ const hasConflict = content => {
|
|
|
34
35
|
exports.hasConflict = hasConflict;
|
|
35
36
|
const expandGroup = content => {
|
|
36
37
|
if ([_constants2.ELEMENT_TYPE.UNORDERED_LIST, _constants2.ELEMENT_TYPE.ORDERED_LIST].includes(content.type)) {
|
|
37
|
-
return [{
|
|
38
|
-
...content,
|
|
38
|
+
return [(0, _objectSpread2.default)((0, _objectSpread2.default)({}, content), {}, {
|
|
39
39
|
children: content.children.map(item => {
|
|
40
40
|
if (item.type === _constants2.ELEMENT_TYPE.GROUP) {
|
|
41
41
|
return expandGroup(item);
|
|
42
42
|
}
|
|
43
43
|
return item;
|
|
44
44
|
}).flat(1)
|
|
45
|
-
}];
|
|
45
|
+
})];
|
|
46
46
|
}
|
|
47
47
|
return content.type === _constants2.ELEMENT_TYPE.GROUP ? content.children : [content];
|
|
48
48
|
};
|
|
@@ -116,11 +116,10 @@ const getChanges = function (masterContent, revisionContent) {
|
|
|
116
116
|
} else {
|
|
117
117
|
const oldElement = masterContentMap[elementId];
|
|
118
118
|
const currentElement = currentContentMap[elementId];
|
|
119
|
-
let newElement = {
|
|
120
|
-
...currentElement,
|
|
119
|
+
let newElement = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, currentElement), {}, {
|
|
121
120
|
[_constants.REBASE_MARK_KEY.MODIFY_TYPE]: _constants.MODIFY_TYPE.MODIFY,
|
|
122
121
|
[_constants.REBASE_MARK_KEY.OLD_ELEMENT]: oldElement
|
|
123
|
-
};
|
|
122
|
+
});
|
|
124
123
|
if (currentElement.type === oldElement.type) {
|
|
125
124
|
const elementType = currentElement.type;
|
|
126
125
|
if ([_constants2.ELEMENT_TYPE.UNORDERED_LIST, _constants2.ELEMENT_TYPE.ORDERED_LIST].includes(elementType)) {
|
|
@@ -138,9 +137,7 @@ const getChanges = function (masterContent, revisionContent) {
|
|
|
138
137
|
};
|
|
139
138
|
const getMergeElement = (diffElement, baseElement) => {
|
|
140
139
|
const modifyType = diffElement[_constants.REBASE_MARK_KEY.MODIFY_TYPE];
|
|
141
|
-
const newElement = {
|
|
142
|
-
...diffElement
|
|
143
|
-
};
|
|
140
|
+
const newElement = (0, _objectSpread2.default)({}, diffElement);
|
|
144
141
|
newElement[_constants.REBASE_MARK_KEY.MODIFY_TYPE] && delete newElement[_constants.REBASE_MARK_KEY.MODIFY_TYPE];
|
|
145
142
|
|
|
146
143
|
// revision does not have this element, master has this element
|
|
@@ -175,23 +172,19 @@ const getMergeElement = (diffElement, baseElement) => {
|
|
|
175
172
|
|
|
176
173
|
// Elements that differ between revision and master
|
|
177
174
|
if (modifyType === _constants.MODIFY_TYPE.MODIFY) {
|
|
178
|
-
const masterElement = {
|
|
179
|
-
...diffElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT]
|
|
180
|
-
};
|
|
175
|
+
const masterElement = (0, _objectSpread2.default)({}, diffElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT]);
|
|
181
176
|
delete newElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT];
|
|
182
177
|
|
|
183
178
|
// revision and master both add a new element, but the content is different. ===》 At present, this situation does not exist, it only exists in the theoretical stage.
|
|
184
179
|
if (!baseElement) {
|
|
185
|
-
return [{
|
|
186
|
-
...(0, _helpers.replaceNodeId)(masterElement),
|
|
180
|
+
return [(0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _helpers.replaceNodeId)(masterElement)), {}, {
|
|
187
181
|
[_constants.REBASE_MARK_KEY.REBASE_TYPE]: _constants.REBASE_TYPE.MODIFY_MODIFY,
|
|
188
182
|
[_constants.REBASE_MARK_KEY.OLD_ELEMENT]: masterElement,
|
|
189
183
|
[_constants.REBASE_MARK_KEY.ORIGIN]: _constants.REBASE_ORIGIN.OTHER
|
|
190
|
-
}, {
|
|
191
|
-
...newElement,
|
|
184
|
+
}), (0, _objectSpread2.default)((0, _objectSpread2.default)({}, newElement), {}, {
|
|
192
185
|
[_constants.REBASE_MARK_KEY.REBASE_TYPE]: _constants.REBASE_TYPE.MODIFY_MODIFY,
|
|
193
186
|
[_constants.REBASE_MARK_KEY.ORIGIN]: _constants.REBASE_ORIGIN.MY
|
|
194
|
-
}];
|
|
187
|
+
})];
|
|
195
188
|
}
|
|
196
189
|
|
|
197
190
|
// master is the same as base, indicating that revision has modified the content
|
|
@@ -201,35 +194,29 @@ const getMergeElement = (diffElement, baseElement) => {
|
|
|
201
194
|
if (_objectUtils.default.isSameObject(newElement, baseElement)) return [masterElement];
|
|
202
195
|
|
|
203
196
|
// They are all different. Revision and master were modified at the same time. If there is a conflict, the conflict needs to be resolved manually.
|
|
204
|
-
return [{
|
|
205
|
-
...(0, _helpers.replaceNodeId)(masterElement),
|
|
197
|
+
return [(0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _helpers.replaceNodeId)(masterElement)), {}, {
|
|
206
198
|
[_constants.REBASE_MARK_KEY.REBASE_TYPE]: _constants.REBASE_TYPE.MODIFY_MODIFY,
|
|
207
199
|
[_constants.REBASE_MARK_KEY.OLD_ELEMENT]: masterElement,
|
|
208
200
|
[_constants.REBASE_MARK_KEY.ORIGIN]: _constants.REBASE_ORIGIN.OTHER
|
|
209
|
-
}, {
|
|
210
|
-
...newElement,
|
|
201
|
+
}), (0, _objectSpread2.default)((0, _objectSpread2.default)({}, newElement), {}, {
|
|
211
202
|
[_constants.REBASE_MARK_KEY.REBASE_TYPE]: _constants.REBASE_TYPE.MODIFY_MODIFY,
|
|
212
203
|
[_constants.REBASE_MARK_KEY.ORIGIN]: _constants.REBASE_ORIGIN.MY
|
|
213
|
-
}];
|
|
204
|
+
})];
|
|
214
205
|
}
|
|
215
206
|
if (modifyType === _constants.MODIFY_TYPE.CHILDREN_MODIFY) {
|
|
216
|
-
const masterElement = {
|
|
217
|
-
...diffElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT]
|
|
218
|
-
};
|
|
207
|
+
const masterElement = (0, _objectSpread2.default)({}, diffElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT]);
|
|
219
208
|
delete newElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT];
|
|
220
209
|
|
|
221
210
|
// revision and master both add a new element, but the content is different. ===》 At present, this situation does not exist, it only exists in the theoretical stage.
|
|
222
211
|
if (!baseElement) {
|
|
223
|
-
return [{
|
|
224
|
-
...(0, _helpers.replaceNodeId)(masterElement),
|
|
212
|
+
return [(0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _helpers.replaceNodeId)(masterElement)), {}, {
|
|
225
213
|
[_constants.REBASE_MARK_KEY.REBASE_TYPE]: _constants.REBASE_TYPE.MODIFY_MODIFY,
|
|
226
214
|
[_constants.REBASE_MARK_KEY.OLD_ELEMENT]: masterElement,
|
|
227
215
|
[_constants.REBASE_MARK_KEY.ORIGIN]: _constants.REBASE_ORIGIN.OTHER
|
|
228
|
-
}, {
|
|
229
|
-
...newElement,
|
|
216
|
+
}), (0, _objectSpread2.default)((0, _objectSpread2.default)({}, newElement), {}, {
|
|
230
217
|
[_constants.REBASE_MARK_KEY.REBASE_TYPE]: _constants.REBASE_TYPE.MODIFY_MODIFY,
|
|
231
218
|
[_constants.REBASE_MARK_KEY.ORIGIN]: _constants.REBASE_ORIGIN.MY
|
|
232
|
-
}];
|
|
219
|
+
})];
|
|
233
220
|
}
|
|
234
221
|
if (_objectUtils.default.isSameObject(masterElement, baseElement)) return expandGroup(newElement);
|
|
235
222
|
if (_objectUtils.default.isSameObject(newElement, baseElement)) return [masterElement];
|
|
@@ -240,10 +227,9 @@ const getMergeElement = (diffElement, baseElement) => {
|
|
|
240
227
|
|
|
241
228
|
// The content of the subnode has changed and needs to be solved manually.
|
|
242
229
|
const childrenContent = getMergeContent(baseElement, diffElement.children);
|
|
243
|
-
return [{
|
|
244
|
-
...newElement,
|
|
230
|
+
return [(0, _objectSpread2.default)((0, _objectSpread2.default)({}, newElement), {}, {
|
|
245
231
|
children: childrenContent
|
|
246
|
-
}];
|
|
232
|
+
})];
|
|
247
233
|
}
|
|
248
234
|
newElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT] && delete newElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT];
|
|
249
235
|
return expandGroup(newElement);
|
|
@@ -322,11 +308,10 @@ const getRebase = (masterContent, baseContent, revisionContent) => {
|
|
|
322
308
|
return {
|
|
323
309
|
canMerge: canMerge(content, revisionContent.elements),
|
|
324
310
|
isNeedReplaceMaster: true,
|
|
325
|
-
value: {
|
|
326
|
-
...revisionContent,
|
|
311
|
+
value: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, revisionContent), {}, {
|
|
327
312
|
elements: content,
|
|
328
313
|
version: Math.max(masterContent.version, revisionContent.version) + 1
|
|
329
|
-
}
|
|
314
|
+
})
|
|
330
315
|
};
|
|
331
316
|
};
|
|
332
317
|
exports.getRebase = getRebase;
|
|
@@ -8,9 +8,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _reactI18next = require("react-i18next");
|
|
11
|
-
var _revisionAvatar = _interopRequireDefault(require("../../assets/images/revision-avatar.png"));
|
|
12
11
|
var _basicSdk = require("../../basic-sdk");
|
|
13
|
-
var
|
|
12
|
+
var _revisionAvatar = _interopRequireDefault(require("../../assets/images/revision-avatar.png"));
|
|
13
|
+
var _sdocFreezed = _interopRequireDefault(require("../../assets/images/sdoc-freezed.png"));
|
|
14
14
|
var _constants = require("../../constants");
|
|
15
15
|
var _utils = require("../../utils");
|
|
16
16
|
var _draftDropdown = _interopRequireDefault(require("../draft-dropdown"));
|
|
@@ -53,7 +53,7 @@ const DocInfo = _ref => {
|
|
|
53
53
|
window.open(originFileURL, '_blank');
|
|
54
54
|
}, []);
|
|
55
55
|
const docInfo = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isDraft && /*#__PURE__*/_react.default.createElement(_draftDropdown.default, null), isStarIconShown && !mobileLogin && /*#__PURE__*/_react.default.createElement("button", {
|
|
56
|
-
className:
|
|
56
|
+
className: "doc-icon sdocfont ".concat(isStarred ? 'sdoc-starred' : 'sdoc-unstarred', " border-0 p-0 bg-transparent"),
|
|
57
57
|
title: isStarred ? t('Starred') : t('Unstarred'),
|
|
58
58
|
"aria-label": isStarred ? t('Unstar') : t('Star'),
|
|
59
59
|
onClick: toggleStar
|
|
@@ -30,7 +30,7 @@ class CollaboratorsPopover extends _react.default.PureComponent {
|
|
|
30
30
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
31
31
|
className: "content-list"
|
|
32
32
|
}, collaborators.map((item, index) => {
|
|
33
|
-
const name = index === 0 ?
|
|
33
|
+
const name = index === 0 ? "".concat(item.name, " (").concat(t('Me'), ")") : item.name;
|
|
34
34
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
35
35
|
key: index,
|
|
36
36
|
className: "collaborator-details"
|
|
@@ -12,17 +12,14 @@ var _reactI18next = require("react-i18next");
|
|
|
12
12
|
var _reactstrap = require("reactstrap");
|
|
13
13
|
var _printJs = _interopRequireDefault(require("@seafile/print-js"));
|
|
14
14
|
var _basicSdk = require("../../basic-sdk");
|
|
15
|
-
var _constants = require("../../
|
|
16
|
-
var _menuShortcutIndicator = _interopRequireDefault(require("../../basic-sdk/extension/commons/menu-shortcut-indicator"));
|
|
17
|
-
var _localStorageUtils = _interopRequireDefault(require("../../basic-sdk/utils/local-storage-utils"));
|
|
18
|
-
var _constants2 = require("../../constants");
|
|
15
|
+
var _constants = require("../../constants");
|
|
19
16
|
const MoreOperations = _ref => {
|
|
20
17
|
let {
|
|
21
18
|
isStarred,
|
|
22
19
|
t
|
|
23
20
|
} = _ref;
|
|
24
21
|
const [isDropdownOpen, setIsDropdownOpen] = (0, _react.useState)(false);
|
|
25
|
-
const [isFullWidthMode, setIsFullWidthMode] = (0, _react.useState)(
|
|
22
|
+
const [isFullWidthMode, setIsFullWidthMode] = (0, _react.useState)(_basicSdk.LocalStorage.getItem(_basicSdk.FULL_WIDTH_MODE));
|
|
26
23
|
const parentFolderURL = _basicSdk.context.getSetting('parentFolderURL');
|
|
27
24
|
const isPro = _basicSdk.context.getSetting('isPro');
|
|
28
25
|
const isFreezed = _basicSdk.context.getSetting('isFreezed');
|
|
@@ -34,7 +31,7 @@ const MoreOperations = _ref => {
|
|
|
34
31
|
const id = 'sdoc_more_operation';
|
|
35
32
|
(0, _react.useEffect)(() => {
|
|
36
33
|
const eventBus = _basicSdk.EventBus.getInstance();
|
|
37
|
-
const unSubscribe = eventBus.subscribe(
|
|
34
|
+
const unSubscribe = eventBus.subscribe(_basicSdk.INTERNAL_EVENT.ON_PRINT, handlePrint);
|
|
38
35
|
return () => {
|
|
39
36
|
unSubscribe();
|
|
40
37
|
};
|
|
@@ -60,11 +57,11 @@ const MoreOperations = _ref => {
|
|
|
60
57
|
}, [cssUrls]);
|
|
61
58
|
const onFreezeDocument = (0, _react.useCallback)(() => {
|
|
62
59
|
const eventBus = _basicSdk.EventBus.getInstance();
|
|
63
|
-
eventBus.dispatch(
|
|
60
|
+
eventBus.dispatch(_constants.EXTERNAL_EVENT.FREEZE_DOCUMENT);
|
|
64
61
|
}, []);
|
|
65
62
|
const unFreeze = (0, _react.useCallback)(() => {
|
|
66
63
|
const eventBus = _basicSdk.EventBus.getInstance();
|
|
67
|
-
eventBus.dispatch(
|
|
64
|
+
eventBus.dispatch(_constants.EXTERNAL_EVENT.UNFREEZE);
|
|
68
65
|
}, []);
|
|
69
66
|
const handleClickHistory = (0, _react.useCallback)(event => {
|
|
70
67
|
if (docPerm !== 'rw' || !historyURL) return;
|
|
@@ -79,31 +76,31 @@ const MoreOperations = _ref => {
|
|
|
79
76
|
}, []);
|
|
80
77
|
const onSwitchMode = (0, _react.useCallback)(() => {
|
|
81
78
|
const newMode = !isFullWidthMode;
|
|
82
|
-
|
|
79
|
+
_basicSdk.LocalStorage.setItem(_basicSdk.FULL_WIDTH_MODE, newMode);
|
|
83
80
|
const eventBus = _basicSdk.EventBus.getInstance();
|
|
84
|
-
eventBus.dispatch(
|
|
81
|
+
eventBus.dispatch(_basicSdk.INTERNAL_EVENT.RESIZE_ARTICLE);
|
|
85
82
|
setIsFullWidthMode(newMode);
|
|
86
83
|
}, [isFullWidthMode]);
|
|
87
84
|
const toggleStar = (0, _react.useCallback)(() => {
|
|
88
85
|
const eventBus = _basicSdk.EventBus.getInstance();
|
|
89
|
-
eventBus.dispatch(
|
|
86
|
+
eventBus.dispatch(_constants.EXTERNAL_EVENT.TOGGLE_STAR);
|
|
90
87
|
}, []);
|
|
91
88
|
const onShareToggle = (0, _react.useCallback)(() => {
|
|
92
89
|
const eventBus = _basicSdk.EventBus.getInstance();
|
|
93
|
-
eventBus.dispatch(
|
|
90
|
+
eventBus.dispatch(_constants.EXTERNAL_EVENT.SHARE_SDOC);
|
|
94
91
|
}, []);
|
|
95
92
|
const onInternalLinkClick = (0, _react.useCallback)(() => {
|
|
96
93
|
const eventBus = _basicSdk.EventBus.getInstance();
|
|
97
94
|
if (isSdocRevision) {
|
|
98
|
-
eventBus.dispatch(
|
|
95
|
+
eventBus.dispatch(_constants.EXTERNAL_EVENT.INTERNAL_LINK_CLICK, {
|
|
99
96
|
internalLink: window.location.href
|
|
100
97
|
});
|
|
101
98
|
return;
|
|
102
99
|
}
|
|
103
|
-
eventBus.dispatch(
|
|
100
|
+
eventBus.dispatch(_constants.EXTERNAL_EVENT.INTERNAL_LINK_CLICK);
|
|
104
101
|
}, [isSdocRevision]);
|
|
105
102
|
return /*#__PURE__*/_react.default.createElement(_reactstrap.Dropdown, {
|
|
106
|
-
className:
|
|
103
|
+
className: "sdoc-operator-folder ".concat(mobileLogin ? 'mobile-login' : ''),
|
|
107
104
|
isOpen: isDropdownOpen,
|
|
108
105
|
toggle: event => toggleDropdown(event, isDropdownOpen)
|
|
109
106
|
}, /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownToggle, {
|
|
@@ -133,7 +130,7 @@ const MoreOperations = _ref => {
|
|
|
133
130
|
onClick: handlePrint
|
|
134
131
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
135
132
|
className: "sdoc-dropdown-print-container"
|
|
136
|
-
}, /*#__PURE__*/_react.default.createElement("div", null, t('Print')), /*#__PURE__*/_react.default.createElement(
|
|
133
|
+
}, /*#__PURE__*/_react.default.createElement("div", null, t('Print')), /*#__PURE__*/_react.default.createElement(_basicSdk.MenuShortcutPrompt, {
|
|
137
134
|
shortcuts: printShortcutTexts
|
|
138
135
|
}))), isPro && isFreezed && /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownItem, {
|
|
139
136
|
className: "sdoc-dropdown-menu-item",
|
|
@@ -10,8 +10,6 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
10
10
|
var _reactI18next = require("react-i18next");
|
|
11
11
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
12
12
|
var _basicSdk = require("../../basic-sdk");
|
|
13
|
-
var _constants = require("../../basic-sdk/constants");
|
|
14
|
-
var _mouseEvent = require("../../basic-sdk/utils/mouse-event");
|
|
15
13
|
const PluginsOperations = () => {
|
|
16
14
|
const {
|
|
17
15
|
plugins,
|
|
@@ -25,11 +23,12 @@ const PluginsOperations = () => {
|
|
|
25
23
|
'sdoc-comment': 'sdoc_comment'
|
|
26
24
|
};
|
|
27
25
|
const onClick = (0, _react.useCallback)((event, pluginName) => {
|
|
28
|
-
|
|
26
|
+
event.stopPropagation();
|
|
27
|
+
event.nativeEvent && event.nativeEvent.stopImmediatePropagation && event.nativeEvent.stopImmediatePropagation();
|
|
29
28
|
updateDisplayPlugin(pluginName);
|
|
30
29
|
}, [updateDisplayPlugin]);
|
|
31
30
|
if (plugins.length === 0) return null;
|
|
32
|
-
return plugins.filter(plugin => !plugin.position || plugin.position ===
|
|
31
|
+
return plugins.filter(plugin => !plugin.position || plugin.position === _basicSdk.PLUGIN_BTN_POSITION.DEFAULT).map(plugin => {
|
|
33
32
|
const {
|
|
34
33
|
name,
|
|
35
34
|
icon
|
|
@@ -8,7 +8,6 @@ exports.default = void 0;
|
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _reactI18next = require("react-i18next");
|
|
10
10
|
var _basicSdk = require("../../../basic-sdk");
|
|
11
|
-
var _constants = require("../../../basic-sdk/constants");
|
|
12
11
|
const PresentationOperation = () => {
|
|
13
12
|
const {
|
|
14
13
|
t
|
|
@@ -16,7 +15,7 @@ const PresentationOperation = () => {
|
|
|
16
15
|
const id = 'sdoc_presentation';
|
|
17
16
|
const onPresentationToggle = (0, _react.useCallback)(() => {
|
|
18
17
|
const eventBus = _basicSdk.EventBus.getInstance();
|
|
19
|
-
eventBus.dispatch(
|
|
18
|
+
eventBus.dispatch(_basicSdk.INTERNAL_EVENT.TOGGLE_PRESENTATION_MODE, {
|
|
20
19
|
isShowFullScreen: true
|
|
21
20
|
});
|
|
22
21
|
const node = document.querySelector('.sdoc-editor-container');
|
|
@@ -8,7 +8,6 @@ exports.default = void 0;
|
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _reactI18next = require("react-i18next");
|
|
10
10
|
var _basicSdk = require("../../../../basic-sdk");
|
|
11
|
-
var _diff = require("../../../../basic-sdk/utils/diff");
|
|
12
11
|
require("./index.css");
|
|
13
12
|
const ChangesCount = _ref => {
|
|
14
13
|
let {
|
|
@@ -33,8 +32,8 @@ const ChangesCount = _ref => {
|
|
|
33
32
|
}, 100);
|
|
34
33
|
}).then(() => {
|
|
35
34
|
if (allChanges.changes.length !== 0) {
|
|
36
|
-
const topLevelChanges = (0,
|
|
37
|
-
const changes = (0,
|
|
35
|
+
const topLevelChanges = (0, _basicSdk.getTopLevelChanges)(allChanges.changes);
|
|
36
|
+
const changes = (0, _basicSdk.getMergedChanges)(topLevelChanges, allChanges.value);
|
|
38
37
|
setChanges(changes);
|
|
39
38
|
}
|
|
40
39
|
});
|
|
@@ -45,7 +44,7 @@ const ChangesCount = _ref => {
|
|
|
45
44
|
const jumpToElement = (0, _react.useCallback)(currentDiffIndex => {
|
|
46
45
|
setDiffIndex(currentDiffIndex);
|
|
47
46
|
const change = changes[currentDiffIndex];
|
|
48
|
-
const changeElement = document.querySelectorAll(
|
|
47
|
+
const changeElement = document.querySelectorAll("[data-id=\"".concat(change, "\"]"))[0];
|
|
49
48
|
if (changeElement) {
|
|
50
49
|
const scrollContainer = document.getElementById('sdoc-scroll-container');
|
|
51
50
|
if (scrollContainer) {
|
|
@@ -83,7 +82,7 @@ const ChangesCount = _ref => {
|
|
|
83
82
|
className: "sdoc-revision-changes-container d-flex align-items-center ml-4"
|
|
84
83
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
85
84
|
className: "sdoc-revision-changes-tip d-flex align-items-center justify-content-center pl-2 pr-2"
|
|
86
|
-
},
|
|
85
|
+
}, "".concat(t('Changes'), " ").concat(currentDiffIndex + 1, "/").concat(changesCount)), /*#__PURE__*/_react.default.createElement("div", {
|
|
87
86
|
className: "sdoc-revision-changes-divider"
|
|
88
87
|
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
89
88
|
className: "sdoc-revision-changes-last d-flex align-items-center justify-content-center",
|
|
@@ -9,9 +9,7 @@ exports.default = void 0;
|
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _reactI18next = require("react-i18next");
|
|
11
11
|
var _basicSdk = require("../../../basic-sdk");
|
|
12
|
-
var _constants = require("../../../
|
|
13
|
-
var _rebase = require("../../../basic-sdk/utils/rebase");
|
|
14
|
-
var _constants2 = require("../../../constants");
|
|
12
|
+
var _constants = require("../../../constants");
|
|
15
13
|
var _hooks = require("../../../hooks");
|
|
16
14
|
var _tipDialog = _interopRequireDefault(require("../../tip-dialog"));
|
|
17
15
|
var _changesCount = _interopRequireDefault(require("./changes-count"));
|
|
@@ -56,9 +54,9 @@ const RevisionOperations = _ref => {
|
|
|
56
54
|
setShowTip(true);
|
|
57
55
|
const {
|
|
58
56
|
value
|
|
59
|
-
} = (0,
|
|
57
|
+
} = (0, _basicSdk.getRebase)(masterContent, baseContent, revisionContent);
|
|
60
58
|
setMergeValue(value);
|
|
61
|
-
setTipType(
|
|
59
|
+
setTipType(_constants.TIP_TYPE.SOURCE_DOCUMENT_CHANGED);
|
|
62
60
|
}).catch(error => {
|
|
63
61
|
if (typeof error === 'string') {
|
|
64
62
|
_basicSdk.toaster.danger(t(error));
|
|
@@ -72,16 +70,16 @@ const RevisionOperations = _ref => {
|
|
|
72
70
|
}, []);
|
|
73
71
|
const onDocumentReplaced = (0, _react.useCallback)(() => {
|
|
74
72
|
if (isShowTip) return;
|
|
75
|
-
setTipType(
|
|
73
|
+
setTipType(_constants.TIP_TYPE.HAS_BEEN_REPLACED);
|
|
76
74
|
setShowTip(true);
|
|
77
75
|
}, [isShowTip]);
|
|
78
76
|
const hasPublishRevision = (0, _react.useCallback)(() => {
|
|
79
77
|
handleRevisionPublished();
|
|
80
|
-
_basicSdk.toaster.success(t(
|
|
78
|
+
_basicSdk.toaster.success(t(_constants.TIP_CONTENT[_constants.TIP_TYPE.HAS_BEEN_PUBLISHED]));
|
|
81
79
|
}, [handleRevisionPublished, t]);
|
|
82
80
|
const onDocumentRemoved = (0, _react.useCallback)(() => {
|
|
83
81
|
if (isShowTip) return;
|
|
84
|
-
setTipType(
|
|
82
|
+
setTipType(_constants.TIP_TYPE.HAS_BEEN_REMOVED);
|
|
85
83
|
setShowTip(true);
|
|
86
84
|
}, [isShowTip]);
|
|
87
85
|
const onError = (0, _react.useCallback)(() => {
|
|
@@ -91,12 +89,12 @@ const RevisionOperations = _ref => {
|
|
|
91
89
|
}, []);
|
|
92
90
|
(0, _react.useEffect)(() => {
|
|
93
91
|
const eventBus = _basicSdk.EventBus.getInstance();
|
|
94
|
-
const unsubscribeMergeDocument = eventBus.subscribe(
|
|
95
|
-
const unsubscribeMergeDocumentError = eventBus.subscribe(
|
|
96
|
-
const unsubscribePublishDocument = eventBus.subscribe(
|
|
97
|
-
const unsubscribePublishDocumentError = eventBus.subscribe(
|
|
98
|
-
const unsubscribeRemoveDocument = eventBus.subscribe(
|
|
99
|
-
const unsubscribeRemoveDocumentError = eventBus.subscribe(
|
|
92
|
+
const unsubscribeMergeDocument = eventBus.subscribe(_basicSdk.INTERNAL_EVENT.DOCUMENT_REPLACED, onDocumentReplaced);
|
|
93
|
+
const unsubscribeMergeDocumentError = eventBus.subscribe(_basicSdk.INTERNAL_EVENT.DOCUMENT_REPLACED_ERROR, onError);
|
|
94
|
+
const unsubscribePublishDocument = eventBus.subscribe(_basicSdk.INTERNAL_EVENT.PUBLISH_DOCUMENT, hasPublishRevision);
|
|
95
|
+
const unsubscribePublishDocumentError = eventBus.subscribe(_basicSdk.INTERNAL_EVENT.PUBLISH_DOCUMENT_ERROR, onError);
|
|
96
|
+
const unsubscribeRemoveDocument = eventBus.subscribe(_basicSdk.INTERNAL_EVENT.REMOVE_DOCUMENT, onDocumentRemoved);
|
|
97
|
+
const unsubscribeRemoveDocumentError = eventBus.subscribe(_basicSdk.INTERNAL_EVENT.REMOVE_DOCUMENT_ERROR, onError);
|
|
100
98
|
return () => {
|
|
101
99
|
unsubscribeMergeDocument();
|
|
102
100
|
unsubscribeMergeDocumentError();
|
|
@@ -117,8 +115,8 @@ const RevisionOperations = _ref => {
|
|
|
117
115
|
// The trick here is to send one more api request in order to use the same information box.
|
|
118
116
|
loadDocument().then(revisionContent => {
|
|
119
117
|
// Prevent users from switching if document contains conflicting content
|
|
120
|
-
if ((0,
|
|
121
|
-
setTipType(
|
|
118
|
+
if ((0, _basicSdk.hasConflict)(revisionContent.elements)) {
|
|
119
|
+
setTipType(_constants.TIP_TYPE.HAS_CONFLICT_BEFORE_VIEW_CHANGES);
|
|
122
120
|
setShowTip(true);
|
|
123
121
|
} else {
|
|
124
122
|
handleViewChangesToggle(isShowChanges);
|
|
@@ -137,7 +135,7 @@ const RevisionOperations = _ref => {
|
|
|
137
135
|
// publish revision
|
|
138
136
|
const publishRevision = (0, _react.useCallback)(() => {
|
|
139
137
|
setShowTip(true);
|
|
140
|
-
setTipType(
|
|
138
|
+
setTipType(_constants.TIP_TYPE.CHECKING);
|
|
141
139
|
const revisionPromise = loadDocument();
|
|
142
140
|
const baseVersionPromise = _basicSdk.context.getRevisionBaseVersionContent();
|
|
143
141
|
const originVersionPromise = _basicSdk.context.getSeadocOriginFileContent();
|
|
@@ -145,18 +143,18 @@ const RevisionOperations = _ref => {
|
|
|
145
143
|
const [revisionContent, baseRes, masterRes] = results;
|
|
146
144
|
const baseContent = JSON.parse(baseRes.data.content);
|
|
147
145
|
const masterContent = JSON.parse(masterRes.data.content);
|
|
148
|
-
if ((0,
|
|
149
|
-
setTipType(
|
|
146
|
+
if ((0, _basicSdk.hasConflict)(revisionContent.elements)) {
|
|
147
|
+
setTipType(_constants.TIP_TYPE.HAS_CONFLICT_BEFORE_PUBLISH);
|
|
150
148
|
return;
|
|
151
149
|
}
|
|
152
150
|
const {
|
|
153
151
|
canMerge,
|
|
154
152
|
isNeedReplaceMaster,
|
|
155
153
|
value
|
|
156
|
-
} = (0,
|
|
154
|
+
} = (0, _basicSdk.getRebase)(masterContent, baseContent, revisionContent);
|
|
157
155
|
// change to HAS_BEEN_PUBLISHED
|
|
158
156
|
if (canMerge && isNeedReplaceMaster) {
|
|
159
|
-
setTipType(
|
|
157
|
+
setTipType(_constants.TIP_TYPE.PUBLISHING);
|
|
160
158
|
_basicSdk.context.publishRevision().then(res => {
|
|
161
159
|
setShowTip(false);
|
|
162
160
|
setTipType('');
|
|
@@ -168,13 +166,13 @@ const RevisionOperations = _ref => {
|
|
|
168
166
|
|
|
169
167
|
// change to DELETE_NO_CHANGES_REVISION
|
|
170
168
|
if (canMerge && !isNeedReplaceMaster) {
|
|
171
|
-
setTipType(
|
|
169
|
+
setTipType(_constants.TIP_TYPE.DELETE_NO_CHANGES_REVISION);
|
|
172
170
|
return;
|
|
173
171
|
}
|
|
174
172
|
|
|
175
173
|
// change to MERGE
|
|
176
174
|
setMergeValue(value);
|
|
177
|
-
setTipType(
|
|
175
|
+
setTipType(_constants.TIP_TYPE.MERGE);
|
|
178
176
|
}).catch(error => {
|
|
179
177
|
if (typeof error === 'string') {
|
|
180
178
|
_basicSdk.toaster.danger(t(error));
|
|
@@ -186,11 +184,11 @@ const RevisionOperations = _ref => {
|
|
|
186
184
|
|
|
187
185
|
// confirm publish
|
|
188
186
|
const onSubmit = (0, _react.useCallback)(() => {
|
|
189
|
-
if (tipType ===
|
|
187
|
+
if (tipType === _constants.TIP_TYPE.HAS_BEEN_PUBLISHED) {
|
|
190
188
|
// nothing todo
|
|
191
189
|
return;
|
|
192
190
|
}
|
|
193
|
-
if (tipType ===
|
|
191
|
+
if (tipType === _constants.TIP_TYPE.DELETE_NO_CHANGES_REVISION) {
|
|
194
192
|
_basicSdk.context.deleteSdocRevision().then(res => {
|
|
195
193
|
// update current location
|
|
196
194
|
const originFileURL = _basicSdk.context.getSetting('originFileURL');
|
|
@@ -200,7 +198,7 @@ const RevisionOperations = _ref => {
|
|
|
200
198
|
});
|
|
201
199
|
return;
|
|
202
200
|
}
|
|
203
|
-
if (tipType ===
|
|
201
|
+
if (tipType === _constants.TIP_TYPE.MERGE || tipType === _constants.TIP_TYPE.SOURCE_DOCUMENT_CHANGED) {
|
|
204
202
|
const {
|
|
205
203
|
username
|
|
206
204
|
} = _basicSdk.context.getUserInfo();
|
package/dist/components/doc-operations/revision-operations/more-revision-operations/index.js
CHANGED
|
@@ -25,7 +25,7 @@ const MoreRevisionOperations = _ref => {
|
|
|
25
25
|
_basicSdk.context.startRevise().then(res => {
|
|
26
26
|
const repoID = _basicSdk.context.getSetting('repoID');
|
|
27
27
|
const siteRoot = _basicSdk.context.getSetting('siteRoot');
|
|
28
|
-
const revisionURL =
|
|
28
|
+
const revisionURL = "".concat(siteRoot, "lib/").concat(repoID, "/revisions/").concat(res.data.revision_id, "/");
|
|
29
29
|
window.open(revisionURL, '_blank');
|
|
30
30
|
eventBus.dispatch(_constants.NEW_REVISION);
|
|
31
31
|
}).catch(error => {
|
|
@@ -44,7 +44,7 @@ const MoreRevisionOperations = _ref => {
|
|
|
44
44
|
}, /*#__PURE__*/_react.default.createElement("i", {
|
|
45
45
|
className: "sdocfont sdoc-revise"
|
|
46
46
|
}), /*#__PURE__*/_react.default.createElement("span", {
|
|
47
|
-
className:
|
|
47
|
+
className: "sdocfont sdoc-".concat(isDropdownOpen ? 'caret-up' : 'drop-down')
|
|
48
48
|
})), /*#__PURE__*/_react.default.createElement(_basicSdk.Tooltip, {
|
|
49
49
|
target: id
|
|
50
50
|
}, t('Revise')), /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownMenu, {
|
package/dist/components/doc-operations/revision-operations/revisions/revisions-dialog/index.js
CHANGED
|
@@ -11,7 +11,6 @@ var _reactI18next = require("react-i18next");
|
|
|
11
11
|
var _reactstrap = require("reactstrap");
|
|
12
12
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
13
|
var _basicSdk = require("../../../../../basic-sdk");
|
|
14
|
-
var _mouseEvent = require("../../../../../basic-sdk/utils/mouse-event");
|
|
15
14
|
var _constants = require("../../../../../constants");
|
|
16
15
|
var _model = require("../../../../../model");
|
|
17
16
|
var _utils = require("../../../../../utils");
|
|
@@ -72,9 +71,10 @@ const RevisionsDialog = _ref => {
|
|
|
72
71
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
73
72
|
}, [revisions, page, perPage]);
|
|
74
73
|
const openRevision = (0, _react.useCallback)((event, revisionId) => {
|
|
75
|
-
|
|
74
|
+
event.stopPropagation();
|
|
75
|
+
event.nativeEvent && event.nativeEvent.stopImmediatePropagation && event.nativeEvent.stopImmediatePropagation();
|
|
76
76
|
if (event.target.className.includes('sdoc-revision-operation-toggle')) return;
|
|
77
|
-
const url =
|
|
77
|
+
const url = "".concat(siteRoot, "lib/").concat(repoID, "/revisions/").concat(revisionId, "/");
|
|
78
78
|
window.open(url, '_blank');
|
|
79
79
|
|
|
80
80
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
@@ -228,7 +228,7 @@ const RevisionsDialog = _ref => {
|
|
|
228
228
|
onClose: closeDeleteTipDialog,
|
|
229
229
|
zIndex: 1071
|
|
230
230
|
}, t(_constants.TIP_CONTENT[_constants.TIP_TYPE.DELETE_REVISION], {
|
|
231
|
-
content:
|
|
231
|
+
content: "".concat(t('revision'), " ").concat(operatingRevisionId)
|
|
232
232
|
})));
|
|
233
233
|
};
|
|
234
234
|
var _default = exports.default = RevisionsDialog;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
3
|
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
@@ -8,8 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
7
|
exports.default = void 0;
|
|
9
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
9
|
var _reactstrap = require("reactstrap");
|
|
11
|
-
var
|
|
12
|
-
var _mouseEvent = require("../../../../../../basic-sdk/utils/mouse-event");
|
|
10
|
+
var _basicSdk = require("../../../../../../basic-sdk");
|
|
13
11
|
require("./index.css");
|
|
14
12
|
const RevisionOperation = _ref => {
|
|
15
13
|
let {
|
|
@@ -19,7 +17,7 @@ const RevisionOperation = _ref => {
|
|
|
19
17
|
updateOperatingRevision,
|
|
20
18
|
onDeleteOtherRevision
|
|
21
19
|
} = _ref;
|
|
22
|
-
const targetId =
|
|
20
|
+
const targetId = "sdoc-revision-".concat(revision.id);
|
|
23
21
|
const popoverRef = (0, _react.useRef)(null);
|
|
24
22
|
const [isPopoverShow, setPopoverShow] = (0, _react.useState)(false);
|
|
25
23
|
const toggle = (0, _react.useCallback)(() => {
|
|
@@ -29,7 +27,8 @@ const RevisionOperation = _ref => {
|
|
|
29
27
|
updateOperatingRevision(nextPopoverShow ? revision.id : '');
|
|
30
28
|
}, [isPopoverShow, updateOperatingRevision, revision]);
|
|
31
29
|
const deleteRevision = (0, _react.useCallback)(event => {
|
|
32
|
-
|
|
30
|
+
event.stopPropagation();
|
|
31
|
+
event.nativeEvent && event.nativeEvent.stopImmediatePropagation && event.nativeEvent.stopImmediatePropagation();
|
|
33
32
|
onDeleteOtherRevision();
|
|
34
33
|
popoverRef.current.toggle();
|
|
35
34
|
}, [onDeleteOtherRevision]);
|
|
@@ -56,7 +55,7 @@ const RevisionOperation = _ref => {
|
|
|
56
55
|
ref: popoverRef
|
|
57
56
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
58
57
|
className: "sdoc-dropdown-menu-container"
|
|
59
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
58
|
+
}, /*#__PURE__*/_react.default.createElement(_basicSdk.DropdownMenuItem, {
|
|
60
59
|
onClick: deleteRevision,
|
|
61
60
|
menuConfig: {
|
|
62
61
|
iconClass: 'sdocfont sdoc-delete',
|