@seafile/sdoc-editor 2.0.75-test-0.0.1 → 2.0.76
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/api/sdoc-server-api.js +24 -24
- package/dist/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-delete-popover.js +1 -1
- package/dist/basic-sdk/comment/components/comment-item-collapse-wrapper.js +3 -3
- package/dist/basic-sdk/comment/components/comment-item-content.js +8 -8
- package/dist/basic-sdk/comment/components/comment-item-reply.js +1 -1
- package/dist/basic-sdk/comment/components/comment-item-wrapper.js +9 -8
- package/dist/basic-sdk/comment/components/comment-list.js +13 -12
- package/dist/basic-sdk/comment/components/comment-participants-editor/index.js +2 -2
- package/dist/basic-sdk/comment/components/editor-comment.js +8 -5
- package/dist/basic-sdk/comment/components/elements-comment-count/index.js +1 -1
- package/dist/basic-sdk/comment/components/global-comment/global-comment-header.js +4 -5
- package/dist/basic-sdk/comment/components/global-comment/index.js +6 -6
- package/dist/basic-sdk/comment/helper.js +11 -11
- package/dist/basic-sdk/comment/hooks/comment-hooks/use-comment-mount.js +2 -2
- package/dist/basic-sdk/comment/hooks/notification-hooks/use-notification-mount.js +10 -11
- package/dist/basic-sdk/comment/provider/notification-context-provider.js +3 -3
- package/dist/basic-sdk/comment/provider/participants-content-provider.js +4 -4
- package/dist/basic-sdk/comment/reducer/comment-reducer.js +50 -24
- package/dist/basic-sdk/comment/reducer/notification-reducer.js +19 -18
- 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 +8 -10
- package/dist/basic-sdk/components/toast/toaster.js +13 -10
- package/dist/basic-sdk/constants/index.js +16 -1
- package/dist/basic-sdk/cursor/helper.js +11 -4
- package/dist/basic-sdk/editor/comment-article.js +4 -4
- package/dist/basic-sdk/editor/sdoc-comment-editor.js +8 -19
- package/dist/basic-sdk/editor/sdoc-editor.js +9 -10
- package/dist/basic-sdk/editor/wiki-editor.js +8 -9
- package/dist/basic-sdk/extension/commons/color-menu/index.js +5 -5
- package/dist/basic-sdk/extension/commons/file-insert-dialog/index.js +14 -14
- package/dist/basic-sdk/extension/commons/insert-element-dialog/index.js +2 -2
- 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 +7 -6
- 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 +3 -3
- package/dist/basic-sdk/extension/commons/select-file-dialog/index.js +8 -6
- package/dist/basic-sdk/extension/commons/select-file-dialog/local-files/index.js +2 -2
- package/dist/basic-sdk/extension/commons/wiki-file-insert-dialog/index.js +5 -5
- 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 +13 -10
- package/dist/basic-sdk/extension/core/transforms/remove-node-children.js +3 -4
- package/dist/basic-sdk/extension/core/transforms/replace-node.js +10 -9
- package/dist/basic-sdk/extension/core/transforms/update-parent-node.js +3 -3
- package/dist/basic-sdk/extension/core/utils/index.js +4 -5
- 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 +4 -5
- 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 +4 -5
- package/dist/basic-sdk/extension/plugins/check-list/render-elem.js +1 -1
- package/dist/basic-sdk/extension/plugins/clear-format/menu/index.js +4 -6
- package/dist/basic-sdk/extension/plugins/code-block/hover-menu/index.js +4 -4
- package/dist/basic-sdk/extension/plugins/code-block/plugin.js +6 -3
- package/dist/basic-sdk/extension/plugins/code-block/render-elem.js +6 -6
- package/dist/basic-sdk/extension/plugins/file-link/hover-menu/index.js +1 -1
- package/dist/basic-sdk/extension/plugins/file-link/render-elem.js +7 -4
- 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 +21 -16
- package/dist/basic-sdk/extension/plugins/history/history-menu.js +8 -9
- package/dist/basic-sdk/extension/plugins/html/helper.js +2 -2
- package/dist/basic-sdk/extension/plugins/image/helpers.js +27 -12
- package/dist/basic-sdk/extension/plugins/image/hover-menu/index.js +9 -5
- 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 +29 -21
- 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 +5 -6
- package/dist/basic-sdk/extension/plugins/list/menu/index.js +4 -5
- package/dist/basic-sdk/extension/plugins/list/plugin/index.js +3 -4
- package/dist/basic-sdk/extension/plugins/list/plugin/on-tab-handle.js +6 -3
- package/dist/basic-sdk/extension/plugins/list/transforms/insert-list-item.js +4 -3
- package/dist/basic-sdk/extension/plugins/list/transforms/toggle-list.js +6 -5
- package/dist/basic-sdk/extension/plugins/markdown/plugin.js +17 -7
- package/dist/basic-sdk/extension/plugins/mention/plugin.js +6 -5
- 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 +4 -4
- package/dist/basic-sdk/extension/plugins/multi-column/helper.js +4 -4
- package/dist/basic-sdk/extension/plugins/multi-column/render/index.js +14 -10
- 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 +10 -8
- 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 +4 -3
- 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 +8 -5
- 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 +1 -1
- package/dist/basic-sdk/extension/plugins/table/helpers.js +38 -21
- 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 +21 -16
- 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 +11 -8
- package/dist/basic-sdk/extension/plugins/table/render/render-cell.js +18 -9
- 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 +3 -4
- package/dist/basic-sdk/extension/plugins/table/render/resize-mask/index.js +20 -16
- 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 +6 -5
- 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 +6 -6
- package/dist/basic-sdk/extension/plugins/text-style/render-elem.js +6 -8
- 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 +15 -10
- package/dist/basic-sdk/extension/render/render-comment-editor-element.js +15 -10
- 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 +31 -12
- package/dist/basic-sdk/extension/toolbar/side-toolbar/index.js +3 -3
- package/dist/basic-sdk/extension/toolbar/side-toolbar/insert-block-menu.js +28 -11
- package/dist/basic-sdk/extension/toolbar/side-toolbar/side-menu.js +8 -5
- package/dist/basic-sdk/highlight/setNodeToDecorations.js +4 -5
- package/dist/{hooks → basic-sdk/hooks}/use-collaborators.js +1 -1
- package/dist/{hooks → basic-sdk/hooks}/use-plugins.js +3 -3
- package/dist/basic-sdk/hooks/use-selection-position.js +3 -3
- package/dist/basic-sdk/index.js +26 -0
- package/dist/basic-sdk/layout/editor-content.js +2 -2
- package/dist/basic-sdk/model/index.js +20 -0
- package/dist/{model → basic-sdk/model}/notification.js +1 -1
- package/dist/basic-sdk/node-id/helpers.js +12 -8
- package/dist/basic-sdk/node-id/index.js +1 -1
- package/dist/basic-sdk/outline/outline-item.js +4 -3
- package/dist/basic-sdk/right-panel/index.js +9 -8
- 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 +31 -24
- package/dist/basic-sdk/slate-convert/slate-to-md/transform.js +5 -5
- package/dist/basic-sdk/socket/helpers.js +6 -5
- package/dist/basic-sdk/socket/socket-client.js +4 -4
- package/dist/basic-sdk/socket/socket-manager.js +23 -23
- 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 +48 -34
- package/dist/basic-sdk/utils/document-utils.js +7 -5
- 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 +5 -3
- package/dist/basic-sdk/utils/rebase.js +36 -21
- package/dist/basic-sdk/views/sdoc-viewer.js +4 -3
- package/dist/components/doc-info/index.js +1 -1
- package/dist/components/doc-operations/collaborators-operation/collaborators-popover.js +1 -1
- package/dist/components/doc-operations/more-operations.js +1 -1
- package/dist/components/doc-operations/plugins-operations.js +1 -2
- package/dist/components/doc-operations/revision-operations/changes-count/index.js +2 -2
- package/dist/components/doc-operations/revision-operations/index.js +21 -20
- package/dist/components/doc-operations/revision-operations/more-revision-operations/index.js +3 -3
- package/dist/components/doc-operations/revision-operations/revisions/index.js +1 -1
- package/dist/components/doc-operations/revision-operations/revisions/revisions-dialog/index.js +2 -2
- package/dist/components/doc-operations/revision-operations/revisions/revisions-dialog/revision-operation/index.js +1 -1
- package/dist/components/doc-operations/revision-operations/view-changes/index.js +5 -5
- package/dist/constants/index.js +12 -21
- package/dist/context.js +3 -3
- package/dist/hooks/index.js +1 -27
- package/dist/layout/content.js +5 -8
- package/dist/layout/header.js +5 -8
- package/dist/layout/layout.js +4 -6
- package/dist/model/index.js +1 -15
- package/dist/pages/simple-editor.js +2 -2
- package/dist/plugin-module/constants/index.js +3 -3
- package/dist/plugin-module/editor/plugin-editor.js +6 -7
- package/dist/plugin-module/gloable-ui/insert-element-dialog.js +1 -1
- package/dist/plugin-module/index.js +2 -2
- package/dist/plugin-module/plugins/chart/chart-edit-dialog/index.js +4 -2
- package/dist/plugin-module/plugins/chart/helpers.js +6 -6
- package/dist/plugin-module/plugins/seatable-column/helpers.js +7 -12
- package/dist/plugin-module/plugins/seatable-column/menu/column-list-item.js +1 -1
- package/dist/plugin-module/plugins/seatable-column/render-elem.js +32 -25
- 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 +4 -2
- 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 +3 -2
- package/dist/plugin-module/plugins/seatable-row/render-elem/index.js +7 -6
- 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 +3 -2
- 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 +7 -6
- 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 +3 -4
- 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 +5 -3
- 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/plugin-module/views/plugin-viewer.js +3 -3
- package/dist/utils/date-utils.js +11 -11
- package/dist/utils/index.js +1 -1
- package/package.json +1 -1
- package/dist/pages/document-plugin-editor.js +0 -111
- /package/dist/{model → basic-sdk/model}/user.js +0 -0
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.getTopLevelChanges = exports.getMergedChanges = exports.getIdDiffs = exports.getDiff = exports.generateIdMapAndIds = void 0;
|
|
8
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
9
8
|
var _slugid = _interopRequireDefault(require("slugid"));
|
|
10
9
|
var _constants = require("../extension/constants");
|
|
11
10
|
var _diffText = _interopRequireDefault(require("./diff-text"));
|
|
@@ -18,16 +17,18 @@ const generatorDiffTextElement = function (textElement, diffType) {
|
|
|
18
17
|
if (!textElement) return null;
|
|
19
18
|
if (!diffType) return textElement;
|
|
20
19
|
const id = textElement.id;
|
|
21
|
-
return
|
|
20
|
+
return {
|
|
21
|
+
...textElement,
|
|
22
22
|
id: id || _slugid.default.nice(),
|
|
23
|
-
[diffType]: true
|
|
24
|
-
|
|
23
|
+
[diffType]: true,
|
|
24
|
+
...style
|
|
25
|
+
};
|
|
25
26
|
};
|
|
26
27
|
const getTopLevelChanges = changes => {
|
|
27
28
|
const topLevelChanges = [];
|
|
28
29
|
const articleEl = document.getElementById('sdoc-editor');
|
|
29
30
|
changes.forEach(item => {
|
|
30
|
-
let dom = document.querySelectorAll(
|
|
31
|
+
let dom = document.querySelectorAll(`[data-id="${item}"]`)[0];
|
|
31
32
|
if (!dom) return [];
|
|
32
33
|
while (((_dom = dom) === null || _dom === void 0 ? void 0 : (_dom$dataset = _dom.dataset) === null || _dom$dataset === void 0 ? void 0 : _dom$dataset.root) !== 'true' || ((_dom2 = dom) === null || _dom2 === void 0 ? void 0 : _dom2.parentNode) !== articleEl) {
|
|
33
34
|
var _dom, _dom$dataset, _dom2, _dom3;
|
|
@@ -79,10 +80,11 @@ const generatorDiffElement = function (element, diffType) {
|
|
|
79
80
|
if (!Array.isArray(element.children) || element.children.length === 0) {
|
|
80
81
|
return generatorDiffTextElement(element, diffType, style);
|
|
81
82
|
}
|
|
82
|
-
return
|
|
83
|
+
return {
|
|
84
|
+
...element,
|
|
83
85
|
[diffType]: true,
|
|
84
86
|
children: element.children.map(item => generatorDiffElement(item, diffType, style))
|
|
85
|
-
}
|
|
87
|
+
};
|
|
86
88
|
};
|
|
87
89
|
const generateIdMapAndIds = elements => {
|
|
88
90
|
let map = {};
|
|
@@ -122,7 +124,7 @@ const getTextDiff = (element, oldElement, diff) => {
|
|
|
122
124
|
const textDiffs = textDiff.getDiffs();
|
|
123
125
|
let newChildren = [];
|
|
124
126
|
textDiffs.forEach((item, index) => {
|
|
125
|
-
const id =
|
|
127
|
+
const id = `${element.id || _slugid.default.nice()}-${index}`;
|
|
126
128
|
let elementItem = {
|
|
127
129
|
id,
|
|
128
130
|
text: item.value
|
|
@@ -145,18 +147,21 @@ const getTextDiff = (element, oldElement, diff) => {
|
|
|
145
147
|
const getCommonDiff = (element, oldElement, diff) => {
|
|
146
148
|
if (!hasChildren(element) && !hasChildren(oldElement)) {
|
|
147
149
|
const newChildren = getTextDiff(element, oldElement, diff);
|
|
148
|
-
return [
|
|
150
|
+
return [{
|
|
151
|
+
...element,
|
|
149
152
|
children: newChildren
|
|
150
|
-
}
|
|
153
|
+
}];
|
|
151
154
|
}
|
|
152
155
|
if (!hasChildren(element) || !hasChildren(oldElement)) {
|
|
153
156
|
const elementId = element.id || _slugid.default.nice();
|
|
154
|
-
diff.changes.push(
|
|
155
|
-
return [generatorDiffElement(
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
157
|
+
diff.changes.push(`${elementId}_delete`);
|
|
158
|
+
return [generatorDiffElement({
|
|
159
|
+
...oldElement,
|
|
160
|
+
id: `${elementId}_delete`
|
|
161
|
+
}, _constants.TEXT_STYLE_MAP.DELETE, _constants.DELETED_STYLE), generatorDiffElement({
|
|
162
|
+
...element,
|
|
163
|
+
id: `${elementId}_add`
|
|
164
|
+
}, _constants.TEXT_STYLE_MAP.ADD, _constants.ADDED_STYLE)];
|
|
160
165
|
}
|
|
161
166
|
|
|
162
167
|
// Content does not change
|
|
@@ -206,12 +211,14 @@ const getCommonDiff = (element, oldElement, diff) => {
|
|
|
206
211
|
if (newChildrenElement.data.src === oldChildrenElement.data.src) {
|
|
207
212
|
newChildren.push(newChildrenElement);
|
|
208
213
|
} else {
|
|
209
|
-
newChildren.push(generatorDiffTextElement(
|
|
214
|
+
newChildren.push(generatorDiffTextElement({
|
|
215
|
+
...element,
|
|
210
216
|
id: element.id + '_add'
|
|
211
|
-
}
|
|
212
|
-
newChildren.push(generatorDiffTextElement(
|
|
217
|
+
}, _constants.TEXT_STYLE_MAP.ADD, _constants.ADDED_STYLE));
|
|
218
|
+
newChildren.push(generatorDiffTextElement({
|
|
219
|
+
...oldChildrenElement,
|
|
213
220
|
id: element.id + '_delete'
|
|
214
|
-
}
|
|
221
|
+
}, _constants.TEXT_STYLE_MAP.DELETE, _constants.DELETED_STYLE));
|
|
215
222
|
}
|
|
216
223
|
} else if (newChildrenElement.type === _constants.ELEMENT_TYPE.LINK) {
|
|
217
224
|
if (newChildrenElement.title !== oldChildrenElement.title) {
|
|
@@ -219,12 +226,14 @@ const getCommonDiff = (element, oldElement, diff) => {
|
|
|
219
226
|
newChildren.push(...diffElements);
|
|
220
227
|
} else if (newChildrenElement.href !== oldChildrenElement.href) {
|
|
221
228
|
diff.changes.push(oldChildrenElement.id + '_delete');
|
|
222
|
-
newChildren.push(generatorDiffTextElement(
|
|
229
|
+
newChildren.push(generatorDiffTextElement({
|
|
230
|
+
...oldChildrenElement,
|
|
223
231
|
id: oldChildrenElement.id + '_delete'
|
|
224
|
-
}
|
|
225
|
-
newChildren.push(generatorDiffTextElement(
|
|
232
|
+
}, _constants.TEXT_STYLE_MAP.DELETE, _constants.DELETED_STYLE));
|
|
233
|
+
newChildren.push(generatorDiffTextElement({
|
|
234
|
+
...newChildrenElement,
|
|
226
235
|
id: newChildrenElement.id + '_add'
|
|
227
|
-
}
|
|
236
|
+
}, _constants.TEXT_STYLE_MAP.ADD, _constants.ADDED_STYLE));
|
|
228
237
|
} else {
|
|
229
238
|
newChildren.push(newChildrenElement);
|
|
230
239
|
}
|
|
@@ -237,20 +246,23 @@ const getCommonDiff = (element, oldElement, diff) => {
|
|
|
237
246
|
}
|
|
238
247
|
} else {
|
|
239
248
|
diff.changes.push(oldChildrenElement.id + '_delete');
|
|
240
|
-
newChildren.push(generatorDiffTextElement(
|
|
249
|
+
newChildren.push(generatorDiffTextElement({
|
|
250
|
+
...oldChildrenElement,
|
|
241
251
|
id: oldChildrenElement.id + '_delete'
|
|
242
|
-
}
|
|
243
|
-
newChildren.push(generatorDiffTextElement(
|
|
252
|
+
}, _constants.TEXT_STYLE_MAP.DELETE, _constants.DELETED_STYLE));
|
|
253
|
+
newChildren.push(generatorDiffTextElement({
|
|
254
|
+
...newChildrenElement,
|
|
244
255
|
id: newChildrenElement.id + '_add'
|
|
245
|
-
}
|
|
256
|
+
}, _constants.TEXT_STYLE_MAP.ADD, _constants.ADDED_STYLE));
|
|
246
257
|
}
|
|
247
258
|
}
|
|
248
259
|
}
|
|
249
260
|
});
|
|
250
261
|
});
|
|
251
|
-
return [
|
|
262
|
+
return [{
|
|
263
|
+
...element,
|
|
252
264
|
children: newChildren
|
|
253
|
-
}
|
|
265
|
+
}];
|
|
254
266
|
};
|
|
255
267
|
const updateDiffValue = (diff, element, oldElement) => {
|
|
256
268
|
if (!diff || !element || !oldElement) return;
|
|
@@ -343,15 +355,17 @@ const getDiff = function () {
|
|
|
343
355
|
const {
|
|
344
356
|
version: currentVersion,
|
|
345
357
|
elements: currentContent
|
|
346
|
-
} =
|
|
358
|
+
} = {
|
|
359
|
+
...currentValue,
|
|
347
360
|
elements: (0, _documentUtils.normalizeChildren)(currentValue.elements)
|
|
348
|
-
}
|
|
361
|
+
};
|
|
349
362
|
const {
|
|
350
363
|
version: oldVersion,
|
|
351
364
|
elements: oldContent
|
|
352
|
-
} =
|
|
365
|
+
} = {
|
|
366
|
+
...oldValue,
|
|
353
367
|
elements: (0, _documentUtils.normalizeChildren)(oldValue.elements)
|
|
354
|
-
}
|
|
368
|
+
};
|
|
355
369
|
if (currentVersion === oldVersion) return {
|
|
356
370
|
value: currentContent,
|
|
357
371
|
changes: []
|
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.setOriginSdocKey = exports.normalizeCopyNodes = exports.normalizeChildren = exports.getSlateFragmentAttribute = exports.generateDefaultDocContent = exports.formatSdocContent = void 0;
|
|
8
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
9
8
|
var _deepCopy = _interopRequireDefault(require("deep-copy"));
|
|
10
9
|
var _context = _interopRequireDefault(require("../../context"));
|
|
11
10
|
var _constants = require("../extension/constants");
|
|
@@ -45,7 +44,7 @@ const normalizeCopyNodes = (editor, elements) => {
|
|
|
45
44
|
exports.normalizeCopyNodes = normalizeCopyNodes;
|
|
46
45
|
const setOriginSdocKey = event => {
|
|
47
46
|
const docUuid = _context.default.getSetting('docUuid');
|
|
48
|
-
event.clipboardData.setData(
|
|
47
|
+
event.clipboardData.setData(`text/${_constants.CLIPBOARD_ORIGIN_SDOC_KEY}`, docUuid);
|
|
49
48
|
};
|
|
50
49
|
exports.setOriginSdocKey = setOriginSdocKey;
|
|
51
50
|
const getSlateFragmentAttribute = dataTransfer => {
|
|
@@ -72,8 +71,11 @@ const generateDefaultDocContent = () => {
|
|
|
72
71
|
// patch: update children to elements
|
|
73
72
|
exports.generateDefaultDocContent = generateDefaultDocContent;
|
|
74
73
|
const formatSdocContent = content => {
|
|
75
|
-
return
|
|
76
|
-
|
|
77
|
-
|
|
74
|
+
return {
|
|
75
|
+
...content,
|
|
76
|
+
...(!content.elements && {
|
|
77
|
+
elements: content.children
|
|
78
|
+
})
|
|
79
|
+
};
|
|
78
80
|
};
|
|
79
81
|
exports.formatSdocContent = formatSdocContent;
|
|
@@ -18,8 +18,8 @@ const getStyleByFullWidthMode = (scrollRef, editor) => {
|
|
|
18
18
|
|
|
19
19
|
// Has outline
|
|
20
20
|
if (isShowOutline && (editor === null || editor === void 0 ? void 0 : editor.editorType) !== _constants.WIKI_EDITOR) {
|
|
21
|
-
containerStyle['marginLeft'] =
|
|
22
|
-
const adjustWidth =
|
|
21
|
+
containerStyle['marginLeft'] = `${_constants.LEFT_OUTLINE_WIDTH}px`;
|
|
22
|
+
const adjustWidth = ` - ${_constants.LEFT_OUTLINE_WIDTH - 50}px`; // One side is 50
|
|
23
23
|
containerStyle['width'] = containerStyle['width'].slice(0, -1) + adjustWidth;
|
|
24
24
|
}
|
|
25
25
|
return containerStyle;
|
|
@@ -28,7 +28,7 @@ exports.getStyleByFullWidthMode = getStyleByFullWidthMode;
|
|
|
28
28
|
const getContentStyleByFullModeStyle = () => {
|
|
29
29
|
if (_localStorageUtils.default.getItem(_constants.FULL_WIDTH_MODE)) {
|
|
30
30
|
return {
|
|
31
|
-
'minWidth':
|
|
31
|
+
'minWidth': `${Number(_constants.ARTICLE_FULL_MIN_WIDTH.slice(0, -2))}px`
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
34
|
return {};
|
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
9
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
|
|
10
9
|
var _ObjectUtils;
|
|
11
10
|
class ObjectUtils {
|
|
@@ -21,13 +20,16 @@ class ObjectUtils {
|
|
|
21
20
|
}
|
|
22
21
|
static isObjectChanged(source, comparison, notIncludeKeys) {
|
|
23
22
|
if (!this.iterable(source)) {
|
|
24
|
-
throw new Error(
|
|
23
|
+
throw new Error(`source should be a Object or Array , but got ${this.getDataType(source)}`);
|
|
25
24
|
}
|
|
26
25
|
if (this.getDataType(source) !== this.getDataType(comparison)) {
|
|
27
26
|
return true;
|
|
28
27
|
}
|
|
29
28
|
const sourceKeys = Object.keys(source);
|
|
30
|
-
const comparisonKeys = Object.keys(
|
|
29
|
+
const comparisonKeys = Object.keys({
|
|
30
|
+
...source,
|
|
31
|
+
...comparison
|
|
32
|
+
}).filter(key => !notIncludeKeys.includes(key));
|
|
31
33
|
if (sourceKeys.length !== comparisonKeys.length) {
|
|
32
34
|
return true;
|
|
33
35
|
}
|
|
@@ -5,7 +5,6 @@ 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"));
|
|
9
8
|
var _constants = require("../constants");
|
|
10
9
|
var _constants2 = require("../extension/constants");
|
|
11
10
|
var _helpers = require("../node-id/helpers");
|
|
@@ -35,14 +34,15 @@ const hasConflict = content => {
|
|
|
35
34
|
exports.hasConflict = hasConflict;
|
|
36
35
|
const expandGroup = content => {
|
|
37
36
|
if ([_constants2.ELEMENT_TYPE.UNORDERED_LIST, _constants2.ELEMENT_TYPE.ORDERED_LIST].includes(content.type)) {
|
|
38
|
-
return [
|
|
37
|
+
return [{
|
|
38
|
+
...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,10 +116,11 @@ const getChanges = function (masterContent, revisionContent) {
|
|
|
116
116
|
} else {
|
|
117
117
|
const oldElement = masterContentMap[elementId];
|
|
118
118
|
const currentElement = currentContentMap[elementId];
|
|
119
|
-
let newElement =
|
|
119
|
+
let newElement = {
|
|
120
|
+
...currentElement,
|
|
120
121
|
[_constants.REBASE_MARK_KEY.MODIFY_TYPE]: _constants.MODIFY_TYPE.MODIFY,
|
|
121
122
|
[_constants.REBASE_MARK_KEY.OLD_ELEMENT]: oldElement
|
|
122
|
-
}
|
|
123
|
+
};
|
|
123
124
|
if (currentElement.type === oldElement.type) {
|
|
124
125
|
const elementType = currentElement.type;
|
|
125
126
|
if ([_constants2.ELEMENT_TYPE.UNORDERED_LIST, _constants2.ELEMENT_TYPE.ORDERED_LIST].includes(elementType)) {
|
|
@@ -137,7 +138,9 @@ const getChanges = function (masterContent, revisionContent) {
|
|
|
137
138
|
};
|
|
138
139
|
const getMergeElement = (diffElement, baseElement) => {
|
|
139
140
|
const modifyType = diffElement[_constants.REBASE_MARK_KEY.MODIFY_TYPE];
|
|
140
|
-
const newElement =
|
|
141
|
+
const newElement = {
|
|
142
|
+
...diffElement
|
|
143
|
+
};
|
|
141
144
|
newElement[_constants.REBASE_MARK_KEY.MODIFY_TYPE] && delete newElement[_constants.REBASE_MARK_KEY.MODIFY_TYPE];
|
|
142
145
|
|
|
143
146
|
// revision does not have this element, master has this element
|
|
@@ -172,19 +175,23 @@ const getMergeElement = (diffElement, baseElement) => {
|
|
|
172
175
|
|
|
173
176
|
// Elements that differ between revision and master
|
|
174
177
|
if (modifyType === _constants.MODIFY_TYPE.MODIFY) {
|
|
175
|
-
const masterElement =
|
|
178
|
+
const masterElement = {
|
|
179
|
+
...diffElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT]
|
|
180
|
+
};
|
|
176
181
|
delete newElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT];
|
|
177
182
|
|
|
178
183
|
// 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.
|
|
179
184
|
if (!baseElement) {
|
|
180
|
-
return [
|
|
185
|
+
return [{
|
|
186
|
+
...(0, _helpers.replaceNodeId)(masterElement),
|
|
181
187
|
[_constants.REBASE_MARK_KEY.REBASE_TYPE]: _constants.REBASE_TYPE.MODIFY_MODIFY,
|
|
182
188
|
[_constants.REBASE_MARK_KEY.OLD_ELEMENT]: masterElement,
|
|
183
189
|
[_constants.REBASE_MARK_KEY.ORIGIN]: _constants.REBASE_ORIGIN.OTHER
|
|
184
|
-
}
|
|
190
|
+
}, {
|
|
191
|
+
...newElement,
|
|
185
192
|
[_constants.REBASE_MARK_KEY.REBASE_TYPE]: _constants.REBASE_TYPE.MODIFY_MODIFY,
|
|
186
193
|
[_constants.REBASE_MARK_KEY.ORIGIN]: _constants.REBASE_ORIGIN.MY
|
|
187
|
-
}
|
|
194
|
+
}];
|
|
188
195
|
}
|
|
189
196
|
|
|
190
197
|
// master is the same as base, indicating that revision has modified the content
|
|
@@ -194,29 +201,35 @@ const getMergeElement = (diffElement, baseElement) => {
|
|
|
194
201
|
if (_objectUtils.default.isSameObject(newElement, baseElement)) return [masterElement];
|
|
195
202
|
|
|
196
203
|
// 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.
|
|
197
|
-
return [
|
|
204
|
+
return [{
|
|
205
|
+
...(0, _helpers.replaceNodeId)(masterElement),
|
|
198
206
|
[_constants.REBASE_MARK_KEY.REBASE_TYPE]: _constants.REBASE_TYPE.MODIFY_MODIFY,
|
|
199
207
|
[_constants.REBASE_MARK_KEY.OLD_ELEMENT]: masterElement,
|
|
200
208
|
[_constants.REBASE_MARK_KEY.ORIGIN]: _constants.REBASE_ORIGIN.OTHER
|
|
201
|
-
}
|
|
209
|
+
}, {
|
|
210
|
+
...newElement,
|
|
202
211
|
[_constants.REBASE_MARK_KEY.REBASE_TYPE]: _constants.REBASE_TYPE.MODIFY_MODIFY,
|
|
203
212
|
[_constants.REBASE_MARK_KEY.ORIGIN]: _constants.REBASE_ORIGIN.MY
|
|
204
|
-
}
|
|
213
|
+
}];
|
|
205
214
|
}
|
|
206
215
|
if (modifyType === _constants.MODIFY_TYPE.CHILDREN_MODIFY) {
|
|
207
|
-
const masterElement =
|
|
216
|
+
const masterElement = {
|
|
217
|
+
...diffElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT]
|
|
218
|
+
};
|
|
208
219
|
delete newElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT];
|
|
209
220
|
|
|
210
221
|
// 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.
|
|
211
222
|
if (!baseElement) {
|
|
212
|
-
return [
|
|
223
|
+
return [{
|
|
224
|
+
...(0, _helpers.replaceNodeId)(masterElement),
|
|
213
225
|
[_constants.REBASE_MARK_KEY.REBASE_TYPE]: _constants.REBASE_TYPE.MODIFY_MODIFY,
|
|
214
226
|
[_constants.REBASE_MARK_KEY.OLD_ELEMENT]: masterElement,
|
|
215
227
|
[_constants.REBASE_MARK_KEY.ORIGIN]: _constants.REBASE_ORIGIN.OTHER
|
|
216
|
-
}
|
|
228
|
+
}, {
|
|
229
|
+
...newElement,
|
|
217
230
|
[_constants.REBASE_MARK_KEY.REBASE_TYPE]: _constants.REBASE_TYPE.MODIFY_MODIFY,
|
|
218
231
|
[_constants.REBASE_MARK_KEY.ORIGIN]: _constants.REBASE_ORIGIN.MY
|
|
219
|
-
}
|
|
232
|
+
}];
|
|
220
233
|
}
|
|
221
234
|
if (_objectUtils.default.isSameObject(masterElement, baseElement)) return expandGroup(newElement);
|
|
222
235
|
if (_objectUtils.default.isSameObject(newElement, baseElement)) return [masterElement];
|
|
@@ -227,9 +240,10 @@ const getMergeElement = (diffElement, baseElement) => {
|
|
|
227
240
|
|
|
228
241
|
// The content of the subnode has changed and needs to be solved manually.
|
|
229
242
|
const childrenContent = getMergeContent(baseElement, diffElement.children);
|
|
230
|
-
return [
|
|
243
|
+
return [{
|
|
244
|
+
...newElement,
|
|
231
245
|
children: childrenContent
|
|
232
|
-
}
|
|
246
|
+
}];
|
|
233
247
|
}
|
|
234
248
|
newElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT] && delete newElement[_constants.REBASE_MARK_KEY.OLD_ELEMENT];
|
|
235
249
|
return expandGroup(newElement);
|
|
@@ -308,10 +322,11 @@ const getRebase = (masterContent, baseContent, revisionContent) => {
|
|
|
308
322
|
return {
|
|
309
323
|
canMerge: canMerge(content, revisionContent.elements),
|
|
310
324
|
isNeedReplaceMaster: true,
|
|
311
|
-
value:
|
|
325
|
+
value: {
|
|
326
|
+
...revisionContent,
|
|
312
327
|
elements: content,
|
|
313
328
|
version: Math.max(masterContent.version, revisionContent.version) + 1
|
|
314
|
-
}
|
|
329
|
+
}
|
|
315
330
|
};
|
|
316
331
|
};
|
|
317
332
|
exports.getRebase = getRebase;
|
|
@@ -8,11 +8,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _context = _interopRequireDefault(require("../../context"));
|
|
11
|
-
var _hooks = require("../../hooks");
|
|
12
11
|
var _jsBridge = _interopRequireDefault(require("../android/js-bridge"));
|
|
13
12
|
var _outlineModule = require("../android/outline-module");
|
|
14
13
|
var _extension = require("../extension");
|
|
14
|
+
var _useCollaborators = require("../hooks/use-collaborators");
|
|
15
15
|
var _useColorContext = require("../hooks/use-color-context");
|
|
16
|
+
var _usePlugins = require("../hooks/use-plugins");
|
|
16
17
|
var _layout = require("../layout");
|
|
17
18
|
var _nodeId = _interopRequireDefault(require("../node-id"));
|
|
18
19
|
var _documentUtils = require("../utils/document-utils");
|
|
@@ -32,7 +33,7 @@ const SDocViewer = _ref => {
|
|
|
32
33
|
}
|
|
33
34
|
const validEditor = editor || (0, _nodeId.default)((0, _extension.createDefaultEditor)());
|
|
34
35
|
const slateValue = (document || (0, _documentUtils.generateDefaultDocContent)()).elements;
|
|
35
|
-
const Provider = showComment ?
|
|
36
|
+
const Provider = showComment ? _useCollaborators.CollaboratorsProvider : _react.Fragment;
|
|
36
37
|
(0, _react.useEffect)(() => {
|
|
37
38
|
const mobileLogin = _context.default.getSetting('mobileLogin');
|
|
38
39
|
if (mobileLogin) {
|
|
@@ -45,7 +46,7 @@ const SDocViewer = _ref => {
|
|
|
45
46
|
};
|
|
46
47
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
47
48
|
}, []);
|
|
48
|
-
return /*#__PURE__*/_react.default.createElement(Provider, null, /*#__PURE__*/_react.default.createElement(
|
|
49
|
+
return /*#__PURE__*/_react.default.createElement(Provider, null, /*#__PURE__*/_react.default.createElement(_usePlugins.PluginsProvider, {
|
|
49
50
|
plugins: plugins,
|
|
50
51
|
showComment: showComment
|
|
51
52
|
}, /*#__PURE__*/_react.default.createElement(_layout.EditorContainer, {
|
|
@@ -54,7 +54,7 @@ const DocInfo = _ref => {
|
|
|
54
54
|
window.open(originFileURL, '_blank');
|
|
55
55
|
}, []);
|
|
56
56
|
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", {
|
|
57
|
-
className:
|
|
57
|
+
className: `doc-icon sdocfont ${isStarred ? 'sdoc-starred' : 'sdoc-unstarred'} border-0 p-0 bg-transparent`,
|
|
58
58
|
title: isStarred ? t('Starred') : t('Unstarred'),
|
|
59
59
|
"aria-label": isStarred ? t('Unstar') : t('Star'),
|
|
60
60
|
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 ? `${item.name} (${t('Me')})` : item.name;
|
|
34
34
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
35
35
|
key: index,
|
|
36
36
|
className: "collaborator-details"
|
|
@@ -104,7 +104,7 @@ const MoreOperations = _ref => {
|
|
|
104
104
|
eventBus.dispatch(_constants2.EXTERNAL_EVENT.INTERNAL_LINK_CLICK);
|
|
105
105
|
}, [isSdocRevision]);
|
|
106
106
|
return /*#__PURE__*/_react.default.createElement(_reactstrap.Dropdown, {
|
|
107
|
-
className:
|
|
107
|
+
className: `sdoc-operator-folder ${mobileLogin ? 'mobile-login' : ''}`,
|
|
108
108
|
isOpen: isDropdownOpen,
|
|
109
109
|
toggle: event => toggleDropdown(event, isDropdownOpen)
|
|
110
110
|
}, /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownToggle, {
|
|
@@ -12,12 +12,11 @@ var _classnames = _interopRequireDefault(require("classnames"));
|
|
|
12
12
|
var _basicSdk = require("../../basic-sdk");
|
|
13
13
|
var _constants = require("../../basic-sdk/constants");
|
|
14
14
|
var _mouseEvent = require("../../basic-sdk/utils/mouse-event");
|
|
15
|
-
var _hooks = require("../../hooks");
|
|
16
15
|
const PluginsOperations = () => {
|
|
17
16
|
const {
|
|
18
17
|
plugins,
|
|
19
18
|
updateDisplayPlugin
|
|
20
|
-
} = (0,
|
|
19
|
+
} = (0, _basicSdk.usePlugins)();
|
|
21
20
|
const {
|
|
22
21
|
t
|
|
23
22
|
} = (0, _reactI18next.useTranslation)('sdoc-editor');
|
|
@@ -45,7 +45,7 @@ const ChangesCount = _ref => {
|
|
|
45
45
|
const jumpToElement = (0, _react.useCallback)(currentDiffIndex => {
|
|
46
46
|
setDiffIndex(currentDiffIndex);
|
|
47
47
|
const change = changes[currentDiffIndex];
|
|
48
|
-
const changeElement = document.querySelectorAll(
|
|
48
|
+
const changeElement = document.querySelectorAll(`[data-id="${change}"]`)[0];
|
|
49
49
|
if (changeElement) {
|
|
50
50
|
const scrollContainer = document.getElementById('sdoc-scroll-container');
|
|
51
51
|
if (scrollContainer) {
|
|
@@ -83,7 +83,7 @@ const ChangesCount = _ref => {
|
|
|
83
83
|
className: "sdoc-revision-changes-container d-flex align-items-center ml-4"
|
|
84
84
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
85
85
|
className: "sdoc-revision-changes-tip d-flex align-items-center justify-content-center pl-2 pr-2"
|
|
86
|
-
},
|
|
86
|
+
}, `${t('Changes')} ${currentDiffIndex + 1}/${changesCount}`), /*#__PURE__*/_react.default.createElement("div", {
|
|
87
87
|
className: "sdoc-revision-changes-divider"
|
|
88
88
|
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
89
89
|
className: "sdoc-revision-changes-last d-flex align-items-center justify-content-center",
|
|
@@ -9,8 +9,9 @@ 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("../../../basic-sdk/constants");
|
|
12
13
|
var _rebase = require("../../../basic-sdk/utils/rebase");
|
|
13
|
-
var
|
|
14
|
+
var _constants2 = require("../../../constants");
|
|
14
15
|
var _context = _interopRequireDefault(require("../../../context"));
|
|
15
16
|
var _hooks = require("../../../hooks");
|
|
16
17
|
var _tipDialog = _interopRequireDefault(require("../../tip-dialog"));
|
|
@@ -58,7 +59,7 @@ const RevisionOperations = _ref => {
|
|
|
58
59
|
value
|
|
59
60
|
} = (0, _rebase.getRebase)(masterContent, baseContent, revisionContent);
|
|
60
61
|
setMergeValue(value);
|
|
61
|
-
setTipType(
|
|
62
|
+
setTipType(_constants2.TIP_TYPE.SOURCE_DOCUMENT_CHANGED);
|
|
62
63
|
}).catch(error => {
|
|
63
64
|
if (typeof error === 'string') {
|
|
64
65
|
_basicSdk.toaster.danger(t(error));
|
|
@@ -72,16 +73,16 @@ const RevisionOperations = _ref => {
|
|
|
72
73
|
}, []);
|
|
73
74
|
const onDocumentReplaced = (0, _react.useCallback)(() => {
|
|
74
75
|
if (isShowTip) return;
|
|
75
|
-
setTipType(
|
|
76
|
+
setTipType(_constants2.TIP_TYPE.HAS_BEEN_REPLACED);
|
|
76
77
|
setShowTip(true);
|
|
77
78
|
}, [isShowTip]);
|
|
78
79
|
const hasPublishRevision = (0, _react.useCallback)(() => {
|
|
79
80
|
handleRevisionPublished();
|
|
80
|
-
_basicSdk.toaster.success(t(
|
|
81
|
+
_basicSdk.toaster.success(t(_constants2.TIP_CONTENT[_constants2.TIP_TYPE.HAS_BEEN_PUBLISHED]));
|
|
81
82
|
}, [handleRevisionPublished, t]);
|
|
82
83
|
const onDocumentRemoved = (0, _react.useCallback)(() => {
|
|
83
84
|
if (isShowTip) return;
|
|
84
|
-
setTipType(
|
|
85
|
+
setTipType(_constants2.TIP_TYPE.HAS_BEEN_REMOVED);
|
|
85
86
|
setShowTip(true);
|
|
86
87
|
}, [isShowTip]);
|
|
87
88
|
const onError = (0, _react.useCallback)(() => {
|
|
@@ -91,12 +92,12 @@ const RevisionOperations = _ref => {
|
|
|
91
92
|
}, []);
|
|
92
93
|
(0, _react.useEffect)(() => {
|
|
93
94
|
const eventBus = _basicSdk.EventBus.getInstance();
|
|
94
|
-
const unsubscribeMergeDocument = eventBus.subscribe(_constants.
|
|
95
|
-
const unsubscribeMergeDocumentError = eventBus.subscribe(_constants.
|
|
96
|
-
const unsubscribePublishDocument = eventBus.subscribe(_constants.
|
|
97
|
-
const unsubscribePublishDocumentError = eventBus.subscribe(_constants.
|
|
98
|
-
const unsubscribeRemoveDocument = eventBus.subscribe(_constants.
|
|
99
|
-
const unsubscribeRemoveDocumentError = eventBus.subscribe(_constants.
|
|
95
|
+
const unsubscribeMergeDocument = eventBus.subscribe(_constants.INTERNAL_EVENT.DOCUMENT_REPLACED, onDocumentReplaced);
|
|
96
|
+
const unsubscribeMergeDocumentError = eventBus.subscribe(_constants.INTERNAL_EVENT.DOCUMENT_REPLACED_ERROR, onError);
|
|
97
|
+
const unsubscribePublishDocument = eventBus.subscribe(_constants.INTERNAL_EVENT.PUBLISH_DOCUMENT, hasPublishRevision);
|
|
98
|
+
const unsubscribePublishDocumentError = eventBus.subscribe(_constants.INTERNAL_EVENT.PUBLISH_DOCUMENT_ERROR, onError);
|
|
99
|
+
const unsubscribeRemoveDocument = eventBus.subscribe(_constants.INTERNAL_EVENT.REMOVE_DOCUMENT, onDocumentRemoved);
|
|
100
|
+
const unsubscribeRemoveDocumentError = eventBus.subscribe(_constants.INTERNAL_EVENT.REMOVE_DOCUMENT_ERROR, onError);
|
|
100
101
|
return () => {
|
|
101
102
|
unsubscribeMergeDocument();
|
|
102
103
|
unsubscribeMergeDocumentError();
|
|
@@ -118,7 +119,7 @@ const RevisionOperations = _ref => {
|
|
|
118
119
|
loadDocument().then(revisionContent => {
|
|
119
120
|
// Prevent users from switching if document contains conflicting content
|
|
120
121
|
if ((0, _rebase.hasConflict)(revisionContent.elements)) {
|
|
121
|
-
setTipType(
|
|
122
|
+
setTipType(_constants2.TIP_TYPE.HAS_CONFLICT_BEFORE_VIEW_CHANGES);
|
|
122
123
|
setShowTip(true);
|
|
123
124
|
} else {
|
|
124
125
|
handleViewChangesToggle(isShowChanges);
|
|
@@ -137,7 +138,7 @@ const RevisionOperations = _ref => {
|
|
|
137
138
|
// publish revision
|
|
138
139
|
const publishRevision = (0, _react.useCallback)(() => {
|
|
139
140
|
setShowTip(true);
|
|
140
|
-
setTipType(
|
|
141
|
+
setTipType(_constants2.TIP_TYPE.CHECKING);
|
|
141
142
|
const revisionPromise = loadDocument();
|
|
142
143
|
const baseVersionPromise = _context.default.getRevisionBaseVersionContent();
|
|
143
144
|
const originVersionPromise = _context.default.getSeadocOriginFileContent();
|
|
@@ -146,7 +147,7 @@ const RevisionOperations = _ref => {
|
|
|
146
147
|
const baseContent = JSON.parse(baseRes.data.content);
|
|
147
148
|
const masterContent = JSON.parse(masterRes.data.content);
|
|
148
149
|
if ((0, _rebase.hasConflict)(revisionContent.elements)) {
|
|
149
|
-
setTipType(
|
|
150
|
+
setTipType(_constants2.TIP_TYPE.HAS_CONFLICT_BEFORE_PUBLISH);
|
|
150
151
|
return;
|
|
151
152
|
}
|
|
152
153
|
const {
|
|
@@ -156,7 +157,7 @@ const RevisionOperations = _ref => {
|
|
|
156
157
|
} = (0, _rebase.getRebase)(masterContent, baseContent, revisionContent);
|
|
157
158
|
// change to HAS_BEEN_PUBLISHED
|
|
158
159
|
if (canMerge && isNeedReplaceMaster) {
|
|
159
|
-
setTipType(
|
|
160
|
+
setTipType(_constants2.TIP_TYPE.PUBLISHING);
|
|
160
161
|
_context.default.publishRevision().then(res => {
|
|
161
162
|
setShowTip(false);
|
|
162
163
|
setTipType('');
|
|
@@ -168,13 +169,13 @@ const RevisionOperations = _ref => {
|
|
|
168
169
|
|
|
169
170
|
// change to DELETE_NO_CHANGES_REVISION
|
|
170
171
|
if (canMerge && !isNeedReplaceMaster) {
|
|
171
|
-
setTipType(
|
|
172
|
+
setTipType(_constants2.TIP_TYPE.DELETE_NO_CHANGES_REVISION);
|
|
172
173
|
return;
|
|
173
174
|
}
|
|
174
175
|
|
|
175
176
|
// change to MERGE
|
|
176
177
|
setMergeValue(value);
|
|
177
|
-
setTipType(
|
|
178
|
+
setTipType(_constants2.TIP_TYPE.MERGE);
|
|
178
179
|
}).catch(error => {
|
|
179
180
|
if (typeof error === 'string') {
|
|
180
181
|
_basicSdk.toaster.danger(t(error));
|
|
@@ -186,11 +187,11 @@ const RevisionOperations = _ref => {
|
|
|
186
187
|
|
|
187
188
|
// confirm publish
|
|
188
189
|
const onSubmit = (0, _react.useCallback)(() => {
|
|
189
|
-
if (tipType ===
|
|
190
|
+
if (tipType === _constants2.TIP_TYPE.HAS_BEEN_PUBLISHED) {
|
|
190
191
|
// nothing todo
|
|
191
192
|
return;
|
|
192
193
|
}
|
|
193
|
-
if (tipType ===
|
|
194
|
+
if (tipType === _constants2.TIP_TYPE.DELETE_NO_CHANGES_REVISION) {
|
|
194
195
|
_context.default.deleteSdocRevision().then(res => {
|
|
195
196
|
// update current location
|
|
196
197
|
const originFileURL = _context.default.getSetting('originFileURL');
|
|
@@ -200,7 +201,7 @@ const RevisionOperations = _ref => {
|
|
|
200
201
|
});
|
|
201
202
|
return;
|
|
202
203
|
}
|
|
203
|
-
if (tipType ===
|
|
204
|
+
if (tipType === _constants2.TIP_TYPE.MERGE || tipType === _constants2.TIP_TYPE.SOURCE_DOCUMENT_CHANGED) {
|
|
204
205
|
const {
|
|
205
206
|
username
|
|
206
207
|
} = _context.default.getUserInfo();
|