@seafile/sdoc-editor 1.0.195-test0.0.1 → 1.0.195-test0.0.3
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/insert-element-dialog/index.js +14 -0
- package/dist/basic-sdk/extension/commons/select-file-dialog/index.js +30 -3
- package/dist/basic-sdk/extension/constants/index.js +2 -1
- package/dist/basic-sdk/extension/plugins/whiteboard/index.css +5 -0
- package/dist/basic-sdk/extension/plugins/whiteboard/index.js +1 -2
- package/dist/basic-sdk/extension/plugins/whiteboard/menu/index.js +15 -2
- package/dist/basic-sdk/extension/plugins/whiteboard/render-elem.js +22 -2
- package/dist/basic-sdk/extension/toolbar/header-toolbar/insert-toolbar/index.js +1 -1
- package/dist/constants/index.js +1 -0
- package/package.json +1 -1
|
@@ -34,6 +34,7 @@ const InsertElementDialog = _ref => {
|
|
|
34
34
|
const [insertLinkCallback, setInsertLinkCallback] = (0, _react.useState)(null);
|
|
35
35
|
const [validEditor, setValidEditor] = (0, _react.useState)(editor);
|
|
36
36
|
const [linkTitle, setLinkTitle] = (0, _react.useState)('');
|
|
37
|
+
const [insertWhiteboardFile, setInsertWhiteboardFile] = (0, _react.useState)(null);
|
|
37
38
|
const [handleSubmit, setHandleSubmit] = (0, _react.useState)(() => void 0);
|
|
38
39
|
const {
|
|
39
40
|
t
|
|
@@ -90,6 +91,7 @@ const InsertElementDialog = _ref => {
|
|
|
90
91
|
slateNode,
|
|
91
92
|
insertFileLinkCallback,
|
|
92
93
|
insertSdocFileLinkCallback,
|
|
94
|
+
insertWhiteboard,
|
|
93
95
|
editor: paramEditor,
|
|
94
96
|
linkTitle,
|
|
95
97
|
// link shortcut wrapping link
|
|
@@ -103,6 +105,7 @@ const InsertElementDialog = _ref => {
|
|
|
103
105
|
insertSdocFileLinkCallback,
|
|
104
106
|
insertFileLinkCallback
|
|
105
107
|
});
|
|
108
|
+
setInsertWhiteboardFile(insertWhiteboard);
|
|
106
109
|
setLinkTitle(linkTitle);
|
|
107
110
|
setHandleSubmit(handleSubmit);
|
|
108
111
|
// Apply for comment editor, as it has a different editor instance
|
|
@@ -124,6 +127,7 @@ const InsertElementDialog = _ref => {
|
|
|
124
127
|
setElement('');
|
|
125
128
|
setDialogType('');
|
|
126
129
|
setInsertLinkCallback(null);
|
|
130
|
+
setInsertWhiteboardFile(null);
|
|
127
131
|
setValidEditor(null);
|
|
128
132
|
setLinkTitle('');
|
|
129
133
|
}, []);
|
|
@@ -169,6 +173,16 @@ const InsertElementDialog = _ref => {
|
|
|
169
173
|
};
|
|
170
174
|
return /*#__PURE__*/_react.default.createElement(_index.default, fileLinkProps);
|
|
171
175
|
}
|
|
176
|
+
case _constants2.ELEMENT_TYPE.WHITEBOARD:
|
|
177
|
+
{
|
|
178
|
+
const whiteboardProps = {
|
|
179
|
+
editor: validEditor,
|
|
180
|
+
dialogType,
|
|
181
|
+
insertWhiteboardFile,
|
|
182
|
+
closeDialog
|
|
183
|
+
};
|
|
184
|
+
return /*#__PURE__*/_react.default.createElement(_index.default, whiteboardProps);
|
|
185
|
+
}
|
|
172
186
|
case _constants2.LOCAL_IMAGE:
|
|
173
187
|
{
|
|
174
188
|
return /*#__PURE__*/_react.default.createElement("input", {
|
|
@@ -21,9 +21,9 @@ const SelectSdocFileDialog = _ref => {
|
|
|
21
21
|
editor,
|
|
22
22
|
dialogType,
|
|
23
23
|
closeDialog,
|
|
24
|
-
insertLinkCallback
|
|
24
|
+
insertLinkCallback,
|
|
25
|
+
insertWhiteboardFile
|
|
25
26
|
} = _ref;
|
|
26
|
-
const modalTitle = dialogType === _constants.ELEMENT_TYPE.FILE_LINK ? 'Select_file' : 'Select_sdoc_document';
|
|
27
27
|
const {
|
|
28
28
|
t
|
|
29
29
|
} = (0, _reactI18next.useTranslation)();
|
|
@@ -31,6 +31,20 @@ const SelectSdocFileDialog = _ref => {
|
|
|
31
31
|
const [temSearchContent, setTemSearchContent] = (0, _react.useState)('');
|
|
32
32
|
const [searchContent, setSearchContent] = (0, _react.useState)('');
|
|
33
33
|
const [isOpenSearch, setIsOpenSearch] = (0, _react.useState)(false);
|
|
34
|
+
let modalTitle;
|
|
35
|
+
switch (dialogType) {
|
|
36
|
+
case _constants.ELEMENT_TYPE.FILE_LINK:
|
|
37
|
+
modalTitle = 'Select_file';
|
|
38
|
+
break;
|
|
39
|
+
case _constants.ELEMENT_TYPE.SDOC_LINK:
|
|
40
|
+
modalTitle = 'Select_sdoc_document';
|
|
41
|
+
break;
|
|
42
|
+
case _constants.ELEMENT_TYPE.WHITEBOARD:
|
|
43
|
+
modalTitle = 'Select_whiteboard_document';
|
|
44
|
+
break;
|
|
45
|
+
default:
|
|
46
|
+
break;
|
|
47
|
+
}
|
|
34
48
|
const onSelectedFile = (0, _react.useCallback)(fileInfo => {
|
|
35
49
|
setCurrentSelectedFile(fileInfo);
|
|
36
50
|
}, []);
|
|
@@ -44,7 +58,20 @@ const SelectSdocFileDialog = _ref => {
|
|
|
44
58
|
} else {
|
|
45
59
|
insertSdocFileLinkCallback && insertSdocFileLinkCallback(editor, fileInfo.name, fileInfo.file_uuid);
|
|
46
60
|
}
|
|
47
|
-
|
|
61
|
+
switch (dialogType) {
|
|
62
|
+
case _constants.ELEMENT_TYPE.FILE_LINK:
|
|
63
|
+
insertFileLinkCallback && insertFileLinkCallback(editor, fileInfo.name, fileInfo.file_uuid);
|
|
64
|
+
break;
|
|
65
|
+
case _constants.ELEMENT_TYPE.SDOC_LINK:
|
|
66
|
+
insertSdocFileLinkCallback && insertSdocFileLinkCallback(editor, fileInfo.name, fileInfo.file_uuid);
|
|
67
|
+
break;
|
|
68
|
+
case _constants.ELEMENT_TYPE.WHITEBOARD:
|
|
69
|
+
insertWhiteboardFile && insertWhiteboardFile(editor, fileInfo.name, fileInfo.file_uuid);
|
|
70
|
+
break;
|
|
71
|
+
default:
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
}, [insertLinkCallback, insertWhiteboardFile, dialogType, editor]);
|
|
48
75
|
const onSubmit = (0, _react.useCallback)(() => {
|
|
49
76
|
if (!currentSelectedFile) return;
|
|
50
77
|
const {
|
|
@@ -538,7 +538,8 @@ const LIST_ITEM_SUPPORTED_TRANSFORMATION = exports.LIST_ITEM_SUPPORTED_TRANSFORM
|
|
|
538
538
|
const ADD_POSITION_OFFSET_TYPE = exports.ADD_POSITION_OFFSET_TYPE = [_elementType.PARAGRAPH, _elementType.SUBTITLE, _elementType.HEADER1, _elementType.HEADER2, _elementType.HEADER3, _elementType.HEADER4, _elementType.HEADER5, _elementType.HEADER6, _elementType.CHECK_LIST_ITEM, _elementType.IMAGE_BLOCK];
|
|
539
539
|
const FILE_TYPE = exports.FILE_TYPE = {
|
|
540
540
|
[_elementType.FILE_LINK]: 'file',
|
|
541
|
-
[_elementType.SDOC_LINK]: 'sdoc'
|
|
541
|
+
[_elementType.SDOC_LINK]: 'sdoc',
|
|
542
|
+
[_elementType.WHITEBOARD]: 'draw'
|
|
542
543
|
};
|
|
543
544
|
const SUPPORTED_SIDE_OPERATION_TYPE = exports.SUPPORTED_SIDE_OPERATION_TYPE = [_elementType.PARAGRAPH, _elementType.SUBTITLE, _elementType.HEADER1, _elementType.HEADER2, _elementType.HEADER3, _elementType.HEADER4, _elementType.HEADER5, _elementType.HEADER6, _elementType.CHECK_LIST_ITEM, _elementType.CODE_BLOCK, _elementType.TABLE, _elementType.BLOCKQUOTE, _elementType.CALL_OUT, _elementType.IMAGE_BLOCK, _elementType.VIDEO, _elementType.WHITEBOARD, _elementType.SEATABLE_TABLE, _elementType.MULTI_COLUMN];
|
|
544
545
|
const MOUSE_ENTER_EVENT_DISABLED_MAP = exports.MOUSE_ENTER_EVENT_DISABLED_MAP = {
|
|
@@ -9,8 +9,7 @@ var _constants = require("../../constants");
|
|
|
9
9
|
var _plugin = _interopRequireDefault(require("./plugin"));
|
|
10
10
|
var _menu = _interopRequireDefault(require("./menu"));
|
|
11
11
|
var _renderElem = require("./render-elem");
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
require("./index.css");
|
|
14
13
|
const WhiteboardPlugin = {
|
|
15
14
|
type: _constants.WHITEBOARD,
|
|
16
15
|
nodeType: 'element',
|
|
@@ -12,10 +12,13 @@ var _reactstrap = require("reactstrap");
|
|
|
12
12
|
var _dropdownMenuItem = _interopRequireDefault(require("../../../commons/dropdown-menu-item"));
|
|
13
13
|
var _helpers = require("../helpers");
|
|
14
14
|
var _constants = require("../../../constants");
|
|
15
|
+
var _constants2 = require("../../../../constants");
|
|
15
16
|
const WhiteboardMenu = _ref => {
|
|
16
17
|
let {
|
|
17
18
|
editor,
|
|
18
|
-
readonly
|
|
19
|
+
readonly,
|
|
20
|
+
eventBus,
|
|
21
|
+
toggle
|
|
19
22
|
} = _ref;
|
|
20
23
|
const disabled = (0, _helpers.isInsertWhiteboardMenuDisabled)(editor, readonly);
|
|
21
24
|
const menuConfig = _constants.MENUS_CONFIG_MAP[_constants.WHITEBOARD];
|
|
@@ -25,6 +28,15 @@ const WhiteboardMenu = _ref => {
|
|
|
25
28
|
const onCreateFile = () => {
|
|
26
29
|
(0, _helpers.onCreateWhiteboardFile)(editor);
|
|
27
30
|
};
|
|
31
|
+
const openSelectSdocFileDialog = (0, _react.useCallback)(() => {
|
|
32
|
+
eventBus.dispatch(_constants2.INTERNAL_EVENT.INSERT_ELEMENT, {
|
|
33
|
+
type: _constants.ELEMENT_TYPE.WHITEBOARD,
|
|
34
|
+
insertWhiteboard: _helpers.insertWhiteboard
|
|
35
|
+
});
|
|
36
|
+
toggle && toggle();
|
|
37
|
+
|
|
38
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
39
|
+
}, [toggle, eventBus]);
|
|
28
40
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_dropdownMenuItem.default, {
|
|
29
41
|
disabled: disabled,
|
|
30
42
|
menuConfig: menuConfig,
|
|
@@ -41,7 +53,8 @@ const WhiteboardMenu = _ref => {
|
|
|
41
53
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
42
54
|
className: "sdoc-insert-whiteboard-menu-popover-container sdoc-dropdown-menu-container"
|
|
43
55
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
44
|
-
className: "sdoc-dropdown-menu-item"
|
|
56
|
+
className: "sdoc-dropdown-menu-item",
|
|
57
|
+
onClick: openSelectSdocFileDialog
|
|
45
58
|
}, t('Upload_local_whiteboard')), /*#__PURE__*/_react.default.createElement("div", {
|
|
46
59
|
className: "sdoc-dropdown-menu-item",
|
|
47
60
|
onClick: onCreateFile
|
|
@@ -1,16 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.renderWhiteboard = renderWhiteboard;
|
|
8
|
-
var _react =
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
|
|
11
|
+
var _constants = require("../../../../constants");
|
|
12
|
+
require("./index.css");
|
|
9
13
|
const Whiteboard = _ref => {
|
|
10
14
|
let {
|
|
11
15
|
editor
|
|
12
16
|
} = _ref;
|
|
13
|
-
|
|
17
|
+
// const whiteboardContainer = document.getElementById('sdoc-whiteboard-container');
|
|
18
|
+
const [tldraw, setTldraw] = (0, _react.useState)(null);
|
|
19
|
+
const renderWhiteboardEditor = Tldraw => {
|
|
20
|
+
console.log(4, Tldraw);
|
|
21
|
+
setTldraw( /*#__PURE__*/_react.default.createElement(Tldraw, null));
|
|
22
|
+
};
|
|
23
|
+
(0, _react.useEffect)(() => {
|
|
24
|
+
const eventBus = _eventBus.default.getInstance();
|
|
25
|
+
const unsubscribeWhiteboardEditor = eventBus.subscribe(_constants.EXTERNAL_EVENT.TLDRAW_EDITOR, renderWhiteboardEditor);
|
|
26
|
+
console.log(3, renderWhiteboardEditor);
|
|
27
|
+
return () => {
|
|
28
|
+
unsubscribeWhiteboardEditor();
|
|
29
|
+
};
|
|
30
|
+
}, []);
|
|
31
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
32
|
+
id: "sdoc-whiteboard-container"
|
|
33
|
+
}, tldraw);
|
|
14
34
|
};
|
|
15
35
|
function renderWhiteboard(props, editor) {
|
|
16
36
|
return /*#__PURE__*/_react.default.createElement(Whiteboard, Object.assign({}, props, {
|
|
@@ -19,10 +19,10 @@ var _menu5 = _interopRequireDefault(require("../../../plugins/sdoc-link/menu"));
|
|
|
19
19
|
var _menu6 = _interopRequireDefault(require("../../../plugins/file-link/menu"));
|
|
20
20
|
var _menu7 = _interopRequireDefault(require("../../../plugins/seatable-column/menu"));
|
|
21
21
|
var _menu8 = _interopRequireDefault(require("../../../plugins/seatable-tables/menu"));
|
|
22
|
+
var _menu9 = _interopRequireDefault(require("../../../plugins/whiteboard/menu"));
|
|
22
23
|
var _eventBus = _interopRequireDefault(require("../../../../utils/event-bus"));
|
|
23
24
|
var _constants = require("../../../../constants");
|
|
24
25
|
require("./index.css");
|
|
25
|
-
var _menu9 = _interopRequireDefault(require("../../../plugins/whiteboard/menu"));
|
|
26
26
|
const InsertToolbar = _ref => {
|
|
27
27
|
let {
|
|
28
28
|
isRichEditor,
|
package/dist/constants/index.js
CHANGED
|
@@ -37,6 +37,7 @@ const EXTERNAL_EVENT = exports.EXTERNAL_EVENT = {
|
|
|
37
37
|
CREATE_SDOC_FILE: 'create_sdoc_file',
|
|
38
38
|
CREATE_WIKI_PAGE: 'create_wiki_page',
|
|
39
39
|
CREATE_WHITEBOARD_FILE: 'create_whiteboard_file',
|
|
40
|
+
TLDRAW_EDITOR: 'tldraw_editor',
|
|
40
41
|
// wiki
|
|
41
42
|
INSERT_LINK: 'insert_link',
|
|
42
43
|
// document
|