@seafile/sdoc-editor 1.0.198-test2.5 → 1.0.198-test2.7
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/basic-sdk/extension/commons/select-file-dialog/index.js +5 -2
- package/dist/basic-sdk/extension/plugins/whiteboard/helpers.js +14 -5
- package/dist/basic-sdk/extension/plugins/whiteboard/index.css +1 -4
- package/dist/basic-sdk/extension/plugins/whiteboard/plugin.js +26 -1
- package/dist/basic-sdk/extension/plugins/whiteboard/render-elem.js +2 -2
- package/package.json +1 -1
|
@@ -54,6 +54,9 @@ const SelectSdocFileDialog = _ref => {
|
|
|
54
54
|
insertFileLinkCallback,
|
|
55
55
|
insertSdocFileLinkCallback
|
|
56
56
|
} = insertLinkCallback || {};
|
|
57
|
+
const {
|
|
58
|
+
insertWhiteboard
|
|
59
|
+
} = insertWhiteboardFile || {};
|
|
57
60
|
switch (dialogType) {
|
|
58
61
|
case _constants.ELEMENT_TYPE.FILE_LINK:
|
|
59
62
|
insertFileLinkCallback && insertFileLinkCallback(editor, fileInfo.name, fileInfo.file_uuid);
|
|
@@ -62,8 +65,8 @@ const SelectSdocFileDialog = _ref => {
|
|
|
62
65
|
insertSdocFileLinkCallback && insertSdocFileLinkCallback(editor, fileInfo.name, fileInfo.file_uuid);
|
|
63
66
|
break;
|
|
64
67
|
case _constants.ELEMENT_TYPE.WHITEBOARD:
|
|
65
|
-
console.log(33);
|
|
66
|
-
|
|
68
|
+
console.log(33, insertWhiteboardFile, insertWhiteboard);
|
|
69
|
+
insertWhiteboard && insertWhiteboard(editor, fileInfo.name, fileInfo.path);
|
|
67
70
|
break;
|
|
68
71
|
default:
|
|
69
72
|
break;
|
|
@@ -11,10 +11,8 @@ var _core = require("../../core");
|
|
|
11
11
|
var _constants = require("../../constants");
|
|
12
12
|
var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
|
|
13
13
|
var _constants2 = require("../../../../constants");
|
|
14
|
-
var _context = _interopRequireDefault(require("../../../../context"));
|
|
15
14
|
const isInsertWhiteboardMenuDisabled = (editor, readonly) => {
|
|
16
15
|
if (readonly) return true;
|
|
17
|
-
console.log(9, editor.selection);
|
|
18
16
|
const {
|
|
19
17
|
selection
|
|
20
18
|
} = editor;
|
|
@@ -66,11 +64,9 @@ const insertWhiteboard = (editor, filename, filePath) => {
|
|
|
66
64
|
var _editor$selection;
|
|
67
65
|
console.log(8, editor.selection);
|
|
68
66
|
if (isInsertWhiteboardMenuDisabled(editor)) return;
|
|
69
|
-
console.log(99);
|
|
70
67
|
const {
|
|
71
68
|
repoID
|
|
72
69
|
} = window.app.pageOptions;
|
|
73
|
-
console.log(9, repoID);
|
|
74
70
|
const {
|
|
75
71
|
selection
|
|
76
72
|
} = editor;
|
|
@@ -84,7 +80,20 @@ const insertWhiteboard = (editor, filename, filePath) => {
|
|
|
84
80
|
_slate.Transforms.insertNodes(editor, whiteboardNode, {
|
|
85
81
|
at: [path[0] + 1]
|
|
86
82
|
});
|
|
87
|
-
|
|
83
|
+
const nextPath = _slate.Path.next([path[0] + 1]);
|
|
84
|
+
if (!(0, _core.getNode)(editor, nextPath)) {
|
|
85
|
+
console.log(5);
|
|
86
|
+
_slate.Transforms.insertNodes(editor, (0, _core.generateDefaultParagraph)(), {
|
|
87
|
+
at: nextPath
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
const endOfFirstNode = _slate.Editor.start(editor, nextPath);
|
|
91
|
+
const range = {
|
|
92
|
+
anchor: endOfFirstNode,
|
|
93
|
+
focus: endOfFirstNode
|
|
94
|
+
};
|
|
95
|
+
console.log(range);
|
|
96
|
+
(0, _core.focusEditor)(editor, range);
|
|
88
97
|
return;
|
|
89
98
|
}
|
|
90
99
|
};
|
|
@@ -6,10 +6,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _isHotkey = _interopRequireDefault(require("is-hotkey"));
|
|
10
|
+
var _slate = require("@seafile/slate");
|
|
9
11
|
var _constants = require("../../constants");
|
|
12
|
+
var _core = require("../../core");
|
|
13
|
+
var _helpers = require("../../toolbar/side-toolbar/helpers");
|
|
10
14
|
const withWhiteboard = editor => {
|
|
11
15
|
const {
|
|
12
|
-
isVoid
|
|
16
|
+
isVoid,
|
|
17
|
+
onHotKeyDown
|
|
13
18
|
} = editor;
|
|
14
19
|
const newEditor = editor;
|
|
15
20
|
|
|
@@ -23,6 +28,26 @@ const withWhiteboard = editor => {
|
|
|
23
28
|
}
|
|
24
29
|
return isVoid(elem);
|
|
25
30
|
};
|
|
31
|
+
newEditor.onHotKeyDown = event => {
|
|
32
|
+
const [whiteboardNode, path] = (0, _core.getSelectedNodeEntryByType)(editor, _constants.WHITEBOARD) || [];
|
|
33
|
+
if (path) {
|
|
34
|
+
// Insert empty paragraph node after whiteboard when clicking 'enter' on selected whiteboard
|
|
35
|
+
if ((0, _isHotkey.default)('enter', event)) {
|
|
36
|
+
event.preventDefault();
|
|
37
|
+
const emptyParagraph = (0, _core.generateEmptyElement)(_constants.PARAGRAPH);
|
|
38
|
+
_slate.Transforms.insertNodes(editor, emptyParagraph, {
|
|
39
|
+
at: _slate.Path.next(path)
|
|
40
|
+
});
|
|
41
|
+
const focusPoint = _slate.Editor.end(editor, _slate.Path.next(path));
|
|
42
|
+
(0, _core.focusEditor)(newEditor, focusPoint);
|
|
43
|
+
}
|
|
44
|
+
if ((0, _isHotkey.default)('mod+c', event)) {
|
|
45
|
+
(0, _helpers.onCopyNode)(editor, whiteboardNode);
|
|
46
|
+
}
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
return onHotKeyDown && onHotKeyDown(event);
|
|
50
|
+
};
|
|
26
51
|
return newEditor;
|
|
27
52
|
};
|
|
28
53
|
var _default = exports.default = withWhiteboard;
|
|
@@ -8,10 +8,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
exports.renderWhiteboard = renderWhiteboard;
|
|
9
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
10
10
|
var _slateReact = require("@seafile/slate-react");
|
|
11
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
12
|
var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
|
|
12
13
|
var _constants = require("../../../../constants");
|
|
13
14
|
require("./index.css");
|
|
14
|
-
var _classnames = _interopRequireDefault(require("classnames"));
|
|
15
15
|
const Whiteboard = _ref => {
|
|
16
16
|
let {
|
|
17
17
|
editor,
|
|
@@ -35,7 +35,7 @@ const Whiteboard = _ref => {
|
|
|
35
35
|
window.open(url, '_blank');
|
|
36
36
|
return;
|
|
37
37
|
};
|
|
38
|
-
console.log(isSelected);
|
|
38
|
+
console.log(6, isSelected);
|
|
39
39
|
(0, _react.useEffect)(() => {
|
|
40
40
|
const eventBus = _eventBus.default.getInstance();
|
|
41
41
|
eventBus.dispatch(_constants.EXTERNAL_EVENT.TLDRAW_EDITOR, {
|