@seafile/sdoc-editor 2.0.129-test-0.0.1 → 2.0.129

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/LICENSE.txt ADDED
@@ -0,0 +1,13 @@
1
+ Copyright (c) 2025 Seafile Ltd.
2
+
3
+ Licensed under the Apache License, Version 2.0 (the "License");
4
+ you may not use this file except in compliance with the License.
5
+ You may obtain a copy of the License at
6
+
7
+ http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ Unless required by applicable law or agreed to in writing, software
10
+ distributed under the License is distributed on an "AS IS" BASIS,
11
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ See the License for the specific language governing permissions and
13
+ limitations under the License.
@@ -186,7 +186,6 @@
186
186
  padding: 8px 0;
187
187
  }
188
188
 
189
- .sdoc-insert-whiteboard-menu-popover-container,
190
189
  .sdoc-insert-video-menu-popover-container {
191
190
  padding: 8px 0;
192
191
  }
@@ -74,9 +74,7 @@ var INTERNAL_EVENT = exports.INTERNAL_EVENT = {
74
74
  TOGGLE_PRESENTATION_MODE: 'toggle_presentation_mode',
75
75
  CREATE_SDOC_FILE: 'create_sdoc_file',
76
76
  CREATE_WIKI_PAGE: 'create_wiki_page',
77
- IMAGE_COLUMN_TOGGLE: 'Image_column_toggle',
78
- CREATE_WHITEBOARD_FILE: 'create_whiteboard_file',
79
- GENERATE_EXDRAW_READ_ONLY_LINK: 'generate_exdraw_read_only_link'
77
+ IMAGE_COLUMN_TOGGLE: 'Image_column_toggle'
80
78
  };
81
79
  var PAGE_EDIT_AREA_WIDTH = exports.PAGE_EDIT_AREA_WIDTH = 672; // 672 = 794 - 2[borderLeft + borderRight] - 120[paddingLeft + paddingRight]
82
80
  var COMMENT_EDITOR_EDIT_AREA_WIDTH = exports.COMMENT_EDITOR_EDIT_AREA_WIDTH = 364;
@@ -64,14 +64,10 @@ var InsertElementDialog = function InsertElementDialog(_ref) {
64
64
  _useState16 = (0, _slicedToArray2["default"])(_useState15, 2),
65
65
  handleSubmit = _useState16[0],
66
66
  setHandleSubmit = _useState16[1];
67
- var _useState17 = (0, _react.useState)(null),
67
+ var _useState17 = (0, _react.useState)({}),
68
68
  _useState18 = (0, _slicedToArray2["default"])(_useState17, 2),
69
- insertWhiteboardFile = _useState18[0],
70
- setInsertWhiteboardFile = _useState18[1];
71
- var _useState19 = (0, _react.useState)({}),
72
- _useState20 = (0, _slicedToArray2["default"])(_useState19, 2),
73
- data = _useState20[0],
74
- setData = _useState20[1];
69
+ data = _useState18[0],
70
+ setData = _useState18[1];
75
71
  var _useTranslation = (0, _reactI18next.useTranslation)('sdoc-editor'),
76
72
  t = _useTranslation.t;
77
73
  var uploadLocalImageInputRef = (0, _react.useRef)();
@@ -125,7 +121,6 @@ var InsertElementDialog = function InsertElementDialog(_ref) {
125
121
  insertFileLinkCallback = _ref2.insertFileLinkCallback,
126
122
  insertSdocFileLinkCallback = _ref2.insertSdocFileLinkCallback,
127
123
  insertVideo = _ref2.insertVideo,
128
- insertWhiteboard = _ref2.insertWhiteboard,
129
124
  paramEditor = _ref2.editor,
130
125
  linkTitle = _ref2.linkTitle,
131
126
  handleSubmit = _ref2.handleSubmit,
@@ -138,9 +133,6 @@ var InsertElementDialog = function InsertElementDialog(_ref) {
138
133
  insertSdocFileLinkCallback: insertSdocFileLinkCallback,
139
134
  insertFileLinkCallback: insertFileLinkCallback
140
135
  });
141
- setInsertWhiteboardFile({
142
- insertWhiteboard: insertWhiteboard
143
- });
144
136
  setInsertVideoCallback({
145
137
  insertVideo: insertVideo
146
138
  });
@@ -167,7 +159,6 @@ var InsertElementDialog = function InsertElementDialog(_ref) {
167
159
  setDialogType('');
168
160
  setInsertLinkCallback(null);
169
161
  setInsertVideoCallback(null);
170
- setInsertWhiteboardFile(null);
171
162
  setValidEditor(null);
172
163
  setLinkTitle('');
173
164
  setData('');
@@ -215,16 +206,6 @@ var InsertElementDialog = function InsertElementDialog(_ref) {
215
206
  };
216
207
  return /*#__PURE__*/_react["default"].createElement(_index5["default"], fileLinkProps);
217
208
  }
218
- case _constants2.ELEMENT_TYPE.WHITEBOARD:
219
- {
220
- var whiteboardProps = {
221
- editor: validEditor,
222
- dialogType: dialogType,
223
- insertWhiteboardFile: insertWhiteboardFile,
224
- closeDialog: closeDialog
225
- };
226
- return /*#__PURE__*/_react["default"].createElement(_index5["default"], whiteboardProps);
227
- }
228
209
  case _constants2.ELEMENT_TYPE.VIDEO:
229
210
  {
230
211
  var videoProps = {
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.whiteboardFileIcon = exports.parcelFileTypeIcon = exports.getSdocFileIcon = exports.getFileTypeIcon = exports.addDataToTree = void 0;
7
+ exports.parcelFileTypeIcon = exports.getSdocFileIcon = exports.getFileTypeIcon = exports.addDataToTree = void 0;
8
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
9
9
  var _context = _interopRequireDefault(require("../../../context"));
10
10
  var _constants = require("../../constants");
@@ -29,10 +29,6 @@ var getSdocFileIcon = exports.getSdocFileIcon = function getSdocFileIcon() {
29
29
  var server = _context["default"].getSetting('serviceUrl');
30
30
  return "".concat(server, "/media/img/file/256/sdoc.png");
31
31
  };
32
- var whiteboardFileIcon = exports.whiteboardFileIcon = function whiteboardFileIcon() {
33
- var server = _context["default"].getSetting('serviceUrl');
34
- return "".concat(server, "/media/img/file/256/draw.png");
35
- };
36
32
  var getFileTypeIcon = exports.getFileTypeIcon = function getFileTypeIcon(fileType) {
37
33
  var imgResource = ['css', 'draw', 'excel', 'md', 'music', 'pdf', 'pic', 'ppt', 'psd', 'sdoc', 'txt', 'video', 'zip', 'word'];
38
34
  if (imgResource.includes(fileType)) {
@@ -23,8 +23,7 @@ var SelectSdocFileDialog = function SelectSdocFileDialog(_ref) {
23
23
  dialogType = _ref.dialogType,
24
24
  closeDialog = _ref.closeDialog,
25
25
  insertLinkCallback = _ref.insertLinkCallback,
26
- insertVideoCallback = _ref.insertVideoCallback,
27
- insertWhiteboardFile = _ref.insertWhiteboardFile;
26
+ insertVideoCallback = _ref.insertVideoCallback;
28
27
  var _useTranslation = (0, _reactI18next.useTranslation)('sdoc-editor'),
29
28
  t = _useTranslation.t;
30
29
  var _useState = (0, _react.useState)(null),
@@ -54,9 +53,6 @@ var SelectSdocFileDialog = function SelectSdocFileDialog(_ref) {
54
53
  case _constants.ELEMENT_TYPE.VIDEO:
55
54
  modalTitle = 'Select_video_file';
56
55
  break;
57
- case _constants.ELEMENT_TYPE.WHITEBOARD:
58
- modalTitle = 'Select_Excalidraw_document';
59
- break;
60
56
  default:
61
57
  break;
62
58
  }
@@ -69,8 +65,6 @@ var SelectSdocFileDialog = function SelectSdocFileDialog(_ref) {
69
65
  insertSdocFileLinkCallback = _ref2.insertSdocFileLinkCallback;
70
66
  var _ref3 = insertVideoCallback || {},
71
67
  insertVideo = _ref3.insertVideo;
72
- var _ref4 = insertWhiteboardFile || {},
73
- insertWhiteboard = _ref4.insertWhiteboard;
74
68
  switch (dialogType) {
75
69
  case _constants.ELEMENT_TYPE.FILE_LINK:
76
70
  insertFileLinkCallback && insertFileLinkCallback(editor, fileInfo.name, fileInfo.file_uuid);
@@ -88,13 +82,10 @@ var SelectSdocFileDialog = function SelectSdocFileDialog(_ref) {
88
82
  name: fileInfo.name
89
83
  }], [encodedUrl]);
90
84
  break;
91
- case _constants.ELEMENT_TYPE.WHITEBOARD:
92
- insertWhiteboard && insertWhiteboard(editor, fileInfo.name, fileInfo.path);
93
- break;
94
85
  default:
95
86
  break;
96
87
  }
97
- }, [insertLinkCallback, insertVideoCallback, insertWhiteboardFile, dialogType, editor]);
88
+ }, [insertLinkCallback, insertVideoCallback, dialogType, editor]);
98
89
  var onSubmit = (0, _react.useCallback)(function () {
99
90
  if (!currentSelectedFile) return;
100
91
  var file_uuid = currentSelectedFile.file_uuid;
@@ -107,13 +98,6 @@ var SelectSdocFileDialog = function SelectSdocFileDialog(_ref) {
107
98
  return;
108
99
  }
109
100
 
110
- // Insert whiteboard file in sdoc
111
- if (dialogType === _constants.ELEMENT_TYPE.WHITEBOARD) {
112
- insertFile(fileInfo);
113
- closeDialog();
114
- return;
115
- }
116
-
117
101
  // File has no id
118
102
  if (!file_uuid || file_uuid === '') {
119
103
  _context["default"].getSdocLocalFileId(currentSelectedFile.path).then(function (res) {
@@ -36,7 +36,6 @@
36
36
  left: 0;
37
37
  }
38
38
 
39
- .sdoc-file-icon-container .whiteboard-file-img,
40
39
  .sdoc-file-icon-container .video-file-img,
41
40
  .sdoc-file-icon-container .sdoc-file-img {
42
41
  position: absolute;
@@ -97,7 +96,6 @@
97
96
  white-space: nowrap;
98
97
  }
99
98
 
100
- .sdoc-folder-container.sdoc-folder-search-results .sdoc-file-info .sdoc-file-icon-container .whiteboard-file-img,
101
99
  .sdoc-folder-container.sdoc-folder-search-results .sdoc-file-info .sdoc-file-icon-container .sdoc-file-img {
102
100
  width: 36px;
103
101
  height: 36px;
@@ -194,7 +194,7 @@ var LocalFiles = function LocalFiles(_ref) {
194
194
  className: "sdoc-folder-children"
195
195
  }, ((_item$children = item.children) === null || _item$children === void 0 ? void 0 : _item$children.length) === 0 && /*#__PURE__*/_react["default"].createElement("div", {
196
196
  className: "sdoc-folder-children-empty"
197
- }, "(".concat(t('Empty'), ")")), ((_item$children2 = item.children) === null || _item$children2 === void 0 ? void 0 : _item$children2.length) > 0 && renderFileTree(item.children))), ['file', 'video', 'exdraw'].includes(type) && /*#__PURE__*/_react["default"].createElement("div", {
197
+ }, "(".concat(t('Empty'), ")")), ((_item$children2 = item.children) === null || _item$children2 === void 0 ? void 0 : _item$children2.length) > 0 && renderFileTree(item.children))), ['file', 'video'].includes(type) && /*#__PURE__*/_react["default"].createElement("div", {
198
198
  className: (0, _classnames["default"])('sdoc-file-info', {
199
199
  'active': selected
200
200
  }),
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.WIKI_LINK = exports.WHITEBOARD = exports.VIDEO_LINK = exports.VIDEO = exports.UNORDERED_LIST = exports.TWO_COLUMN = exports.TOP_LEVEL_TYPES = exports.TITLE = exports.THREE_COLUMN = exports.TABLE_ROW = exports.TABLE_CELL = exports.TABLE = exports.SUBTITLE = exports.SDOC_LINK = exports.QUICK_INSERT = exports.PARAGRAPH = exports.ORDERED_LIST = exports.MULTI_COLUMN = exports.MENTION_TEMP = exports.MENTION = exports.LIST_ITEM = exports.LINK = exports.INLINE_LEVEL_TYPES = exports.IMAGE_BLOCK = exports.IMAGE = exports.HEADER6 = exports.HEADER5 = exports.HEADER4 = exports.HEADER3 = exports.HEADER2 = exports.HEADER1 = exports.HEADER = exports.GROUP = exports.FOUR_COLUMN = exports.FONT_SIZE_REDUCE = exports.FONT_SIZE_INCREASE = exports.FONT_SIZE = exports.FIVE_COLUMN = exports.FILE_LINK_INSET_INPUT_TEMP = exports.FILE_LINK = exports.COLUMN = exports.CODE_LINE = exports.CODE_BLOCK = exports.CHECK_LIST_ITEM = exports.CALL_OUT = exports.BLOCKQUOTE = exports.ASK_AI = void 0;
6
+ exports.WIKI_LINK = exports.VIDEO_LINK = exports.VIDEO = exports.UNORDERED_LIST = exports.TWO_COLUMN = exports.TOP_LEVEL_TYPES = exports.TITLE = exports.THREE_COLUMN = exports.TABLE_ROW = exports.TABLE_CELL = exports.TABLE = exports.SUBTITLE = exports.SDOC_LINK = exports.QUICK_INSERT = exports.PARAGRAPH = exports.ORDERED_LIST = exports.MULTI_COLUMN = exports.MENTION_TEMP = exports.MENTION = exports.LIST_ITEM = exports.LINK = exports.INLINE_LEVEL_TYPES = exports.IMAGE_BLOCK = exports.IMAGE = exports.HEADER6 = exports.HEADER5 = exports.HEADER4 = exports.HEADER3 = exports.HEADER2 = exports.HEADER1 = exports.HEADER = exports.GROUP = exports.FOUR_COLUMN = exports.FONT_SIZE_REDUCE = exports.FONT_SIZE_INCREASE = exports.FONT_SIZE = exports.FIVE_COLUMN = exports.FILE_LINK_INSET_INPUT_TEMP = exports.FILE_LINK = exports.COLUMN = exports.CODE_LINE = exports.CODE_BLOCK = exports.CHECK_LIST_ITEM = exports.CALL_OUT = exports.BLOCKQUOTE = exports.ASK_AI = void 0;
7
7
  var BLOCKQUOTE = exports.BLOCKQUOTE = 'blockquote';
8
8
  var TITLE = exports.TITLE = 'title';
9
9
  var SUBTITLE = exports.SUBTITLE = 'subtitle';
@@ -43,7 +43,6 @@ var MENTION_TEMP = exports.MENTION_TEMP = 'mention_temp';
43
43
  var FILE_LINK_INSET_INPUT_TEMP = exports.FILE_LINK_INSET_INPUT_TEMP = 'file_link_insert_input_temp';
44
44
  var QUICK_INSERT = exports.QUICK_INSERT = 'quick_insert';
45
45
  var VIDEO_LINK = exports.VIDEO_LINK = 'video_link';
46
- var WHITEBOARD = exports.WHITEBOARD = 'whiteboard';
47
46
  var ASK_AI = exports.ASK_AI = 'ask_ai';
48
47
 
49
48
  // font
@@ -474,12 +474,6 @@ Object.defineProperty(exports, "VIDEO", {
474
474
  return _elementType.VIDEO;
475
475
  }
476
476
  });
477
- Object.defineProperty(exports, "WHITEBOARD", {
478
- enumerable: true,
479
- get: function get() {
480
- return _elementType.WHITEBOARD;
481
- }
482
- });
483
477
  Object.defineProperty(exports, "WIN_HOTKEYS", {
484
478
  enumerable: true,
485
479
  get: function get() {
@@ -516,7 +510,7 @@ var LIST_TYPE_ARRAY = exports.LIST_TYPE_ARRAY = [_elementType.UNORDERED_LIST, _e
516
510
  var LIST_ITEM_CORRELATION_TYPE = exports.LIST_ITEM_CORRELATION_TYPE = [_elementType.UNORDERED_LIST, _elementType.ORDERED_LIST, _elementType.LIST_ITEM];
517
511
  var LIST_ITEM_SUPPORTED_TRANSFORMATION = exports.LIST_ITEM_SUPPORTED_TRANSFORMATION = [_elementType.UNORDERED_LIST, _elementType.ORDERED_LIST, 'left', 'center', 'right', _elementType.BLOCKQUOTE];
518
512
  var 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];
519
- var FILE_TYPE = exports.FILE_TYPE = (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, _elementType.FILE_LINK, 'file'), _elementType.SDOC_LINK, 'sdoc'), _elementType.VIDEO, 'video'), _elementType.WHITEBOARD, 'exdraw');
513
+ var FILE_TYPE = exports.FILE_TYPE = (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, _elementType.FILE_LINK, 'file'), _elementType.SDOC_LINK, 'sdoc'), _elementType.VIDEO, 'video');
520
514
  var FILEEXT_TYPE = exports.FILEEXT_TYPE = {
521
515
  VIDEO: ['mp4', 'ogv', 'webm', 'mov'],
522
516
  MUSIC: ['mp3', 'oga', 'ogg', 'wav', 'flac', 'opus'],
@@ -533,6 +527,6 @@ var FILEEXT_TYPE_MAP = exports.FILEEXT_TYPE_MAP = {
533
527
  EXCALIDRAW: 'draw',
534
528
  DOCUMENT: 'word'
535
529
  };
536
- var 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];
530
+ var 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];
537
531
  var MOUSE_ENTER_EVENT_DISABLED_MAP = exports.MOUSE_ENTER_EVENT_DISABLED_MAP = (_MOUSE_ENTER_EVENT_DI = {}, (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])(_MOUSE_ENTER_EVENT_DI, _elementType.PARAGRAPH, [_elementType.CALL_OUT]), _elementType.TITLE, [_elementType.CALL_OUT]), _elementType.SUBTITLE, [_elementType.CALL_OUT]), _elementType.CHECK_LIST_ITEM, [_elementType.CALL_OUT]), _elementType.ORDERED_LIST, [_elementType.CALL_OUT]), _elementType.UNORDERED_LIST, [_elementType.CALL_OUT]), _elementType.LIST_ITEM, [_elementType.CALL_OUT]), _elementType.BLOCKQUOTE, [_elementType.CALL_OUT]), _elementType.HEADER1, [_elementType.CALL_OUT]), _elementType.HEADER2, [_elementType.CALL_OUT]), (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])(_MOUSE_ENTER_EVENT_DI, _elementType.HEADER3, [_elementType.CALL_OUT]), _elementType.HEADER4, [_elementType.CALL_OUT]), _elementType.HEADER5, [_elementType.CALL_OUT]), _elementType.HEADER6, [_elementType.CALL_OUT]), _elementType.CALL_OUT, [_elementType.CALL_OUT]));
538
- var ROOT_ELEMENT_TYPES = exports.ROOT_ELEMENT_TYPES = [_elementType.PARAGRAPH, _elementType.TITLE, _elementType.SUBTITLE, _elementType.CHECK_LIST_ITEM, _elementType.ORDERED_LIST, _elementType.UNORDERED_LIST, _elementType.BLOCKQUOTE, _elementType.HEADER1, _elementType.HEADER2, _elementType.HEADER3, _elementType.HEADER4, _elementType.HEADER5, _elementType.HEADER6, _elementType.CALL_OUT, _elementType.TABLE, _elementType.CODE_BLOCK, _elementType.IMAGE_BLOCK, _elementType.VIDEO, _elementType.WHITEBOARD];
532
+ var ROOT_ELEMENT_TYPES = exports.ROOT_ELEMENT_TYPES = [_elementType.PARAGRAPH, _elementType.TITLE, _elementType.SUBTITLE, _elementType.CHECK_LIST_ITEM, _elementType.ORDERED_LIST, _elementType.UNORDERED_LIST, _elementType.BLOCKQUOTE, _elementType.HEADER1, _elementType.HEADER2, _elementType.HEADER3, _elementType.HEADER4, _elementType.HEADER5, _elementType.HEADER6, _elementType.CALL_OUT, _elementType.TABLE, _elementType.CODE_BLOCK, _elementType.IMAGE_BLOCK, _elementType.VIDEO];
@@ -89,15 +89,11 @@ var MENUS_CONFIG_MAP = exports.MENUS_CONFIG_MAP = (_MENUS_CONFIG_MAP = {}, (0, _
89
89
  id: "sdoc_".concat(_elementType.VIDEO),
90
90
  iconClass: 'sdocfont sdoc-video',
91
91
  text: 'Video'
92
- }), _elementType.WHITEBOARD, {
93
- id: "sdoc_".concat(_elementType.WHITEBOARD),
94
- iconClass: 'sdocfont sdoc-document',
95
- text: 'Whiteboard'
96
92
  }), _elementType.TABLE, {
97
93
  id: "sdoc_".concat(_elementType.TABLE),
98
94
  iconClass: 'sdocfont sdoc-table',
99
95
  text: 'Table'
100
- }), (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])(_MENUS_CONFIG_MAP, TEXT_STYLE, [{
96
+ }), TEXT_STYLE, [{
101
97
  id: ITALIC,
102
98
  iconClass: 'sdocfont sdoc-italic',
103
99
  text: 'Italic',
@@ -146,7 +142,7 @@ var MENUS_CONFIG_MAP = exports.MENUS_CONFIG_MAP = (_MENUS_CONFIG_MAP = {}, (0, _
146
142
  isColor: true,
147
143
  recentUsedColorsKey: _color.RECENT_USED_FONT_COLORS_KEY,
148
144
  defaultLastUsedColor: _color.DEFAULT_LAST_USED_FONT_COLOR
149
- }]), TEXT_STYLE_MORE, [
145
+ }]), (0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])((0, _defineProperty2["default"])(_MENUS_CONFIG_MAP, TEXT_STYLE_MORE, [
150
146
  //
151
147
  {
152
148
  id: STRIKETHROUGH,
@@ -143,12 +143,6 @@ Object.defineProperty(exports, "VideoPlugin", {
143
143
  return _video["default"];
144
144
  }
145
145
  });
146
- Object.defineProperty(exports, "WhiteboardPlugin", {
147
- enumerable: true,
148
- get: function get() {
149
- return _whiteboard["default"];
150
- }
151
- });
152
146
  Object.defineProperty(exports, "WikiLinkPlugin", {
153
147
  enumerable: true,
154
148
  get: function get() {
@@ -179,9 +173,8 @@ var _table = _interopRequireDefault(require("./table"));
179
173
  var _textAlign = _interopRequireDefault(require("./text-align"));
180
174
  var _textStyle = _interopRequireDefault(require("./text-style"));
181
175
  var _video = _interopRequireDefault(require("./video"));
182
- var _whiteboard = _interopRequireDefault(require("./whiteboard"));
183
176
  var _wikiLink = _interopRequireDefault(require("./wiki-link"));
184
- var Plugins = [_markdown["default"], _html["default"], _header["default"], _link["default"], _blockquote["default"], _list["default"], _checkList["default"], _codeBlock["default"], _image["default"], _video["default"], _table["default"], _multiColumn["default"], _textStyle["default"], _textAlign["default"], _font["default"], _sdocLink["default"], _paragraph["default"], _fileLink["default"], _callout["default"], _searchReplace["default"], _quickInsert["default"], _group["default"], _whiteboard["default"]];
177
+ var Plugins = [_markdown["default"], _html["default"], _header["default"], _link["default"], _blockquote["default"], _list["default"], _checkList["default"], _codeBlock["default"], _image["default"], _video["default"], _table["default"], _multiColumn["default"], _textStyle["default"], _textAlign["default"], _font["default"], _sdocLink["default"], _paragraph["default"], _fileLink["default"], _callout["default"], _searchReplace["default"], _quickInsert["default"], _group["default"]];
185
178
  var WikiPlugins = exports.WikiPlugins = [].concat(Plugins, [_wikiLink["default"]]);
186
179
  var CommentPlugins = exports.CommentPlugins = [_markdown["default"], _html["default"], _paragraph["default"], _textStyle["default"], _list["default"], _image["default"], _link["default"], _mention["default"], _blockquote["default"]];
187
180
  var _default = exports["default"] = Plugins;
@@ -229,12 +229,6 @@ var CustomRenderElement = function CustomRenderElement(props) {
229
229
  renderGroup = _GroupPlugin$renderEl[0];
230
230
  return renderGroup(props);
231
231
  }
232
- case _elementType.WHITEBOARD:
233
- {
234
- var _WhiteboardPlugin$ren = (0, _slicedToArray2["default"])(_plugins.WhiteboardPlugin.renderElements, 1),
235
- renderWhiteboard = _WhiteboardPlugin$ren[0];
236
- return renderWhiteboard((0, _objectSpread2["default"])({}, props), editor);
237
- }
238
232
  default:
239
233
  {
240
234
  var _ParagraphPlugin$rend3 = (0, _slicedToArray2["default"])(_plugins.ParagraphPlugin.renderElements, 1),
@@ -20,7 +20,6 @@ var _menu4 = _interopRequireDefault(require("../../../plugins/link/menu"));
20
20
  var _menu5 = _interopRequireDefault(require("../../../plugins/sdoc-link/menu"));
21
21
  var _tableMenu = _interopRequireDefault(require("../../../plugins/table/menu/table-menu"));
22
22
  var _menu6 = _interopRequireDefault(require("../../../plugins/video/menu"));
23
- var _menu7 = _interopRequireDefault(require("../../../plugins/whiteboard/menu"));
24
23
  require("./index.css");
25
24
  var InsertToolbar = function InsertToolbar(_ref) {
26
25
  var _ref$isRichEditor = _ref.isRichEditor,
@@ -102,7 +101,7 @@ var InsertToolbar = function InsertToolbar(_ref) {
102
101
  style: {
103
102
  maxHeight: window.innerHeight - bottom - 100
104
103
  }
105
- }, /*#__PURE__*/_react["default"].createElement(_menu3["default"], props), /*#__PURE__*/_react["default"].createElement(_tableMenu["default"], props), /*#__PURE__*/_react["default"].createElement(_menu6["default"], props), /*#__PURE__*/_react["default"].createElement(_menu7["default"], props), /*#__PURE__*/_react["default"].createElement(_menu4["default"], props), /*#__PURE__*/_react["default"].createElement(_menu["default"], props), /*#__PURE__*/_react["default"].createElement("div", {
104
+ }, /*#__PURE__*/_react["default"].createElement(_menu3["default"], props), /*#__PURE__*/_react["default"].createElement(_tableMenu["default"], props), /*#__PURE__*/_react["default"].createElement(_menu6["default"], props), /*#__PURE__*/_react["default"].createElement(_menu4["default"], props), /*#__PURE__*/_react["default"].createElement(_menu["default"], props), /*#__PURE__*/_react["default"].createElement("div", {
106
105
  className: "sdoc-dropdown-menu-divider"
107
106
  }), /*#__PURE__*/_react["default"].createElement(_menu5["default"], props), /*#__PURE__*/_react["default"].createElement(_menu2["default"], props))));
108
107
  };
@@ -249,7 +249,7 @@ var getTopValue = exports.getTopValue = function getTopValue(editor, dom, contai
249
249
  return top + offsetY - headerHeight;
250
250
  };
251
251
  var isNotSupportTransform = exports.isNotSupportTransform = function isNotSupportTransform(node) {
252
- if (node.type && [_constants2.CODE_BLOCK, _constants2.TABLE, _constants2.VIDEO, _constants2.WHITEBOARD].includes(node.type)) {
252
+ if (node.type && [_constants2.CODE_BLOCK, _constants2.TABLE, _constants2.VIDEO].includes(node.type)) {
253
253
  return true;
254
254
  }
255
255
  return false;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seafile/sdoc-editor",
3
- "version": "2.0.129-test-0.0.1",
3
+ "version": "2.0.129",
4
4
  "main": "dist/index.js",
5
5
  "scripts": {
6
6
  "test": "jest",
@@ -69,5 +69,6 @@
69
69
  },
70
70
  "publishConfig": {
71
71
  "access": "public"
72
- }
72
+ },
73
+ "gitHead": "4d4277b37800557c3a6e7004f5d81d1c9c404959"
73
74
  }
@@ -1,142 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.onCreateWhiteboardFile = exports.isInsertWhiteboardMenuDisabled = exports.insertWhiteboard = exports.generateWhiteboardNode = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
9
- var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/regeneratorRuntime"));
10
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
11
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
12
- var _slate = require("@seafile/slate");
13
- var _slugid = _interopRequireDefault(require("slugid"));
14
- var _constants = require("../../../constants");
15
- var _context2 = _interopRequireDefault(require("../../../context"));
16
- var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
17
- var _constants2 = require("../../constants");
18
- var _core = require("../../core");
19
- var isInsertWhiteboardMenuDisabled = exports.isInsertWhiteboardMenuDisabled = function isInsertWhiteboardMenuDisabled(editor, readonly) {
20
- if (readonly) return true;
21
- var selection = editor.selection;
22
- if (selection === null) return true;
23
- if (!_slate.Range.isCollapsed(selection)) return true;
24
- var _Editor$nodes = _slate.Editor.nodes(editor, {
25
- match: function match(n) {
26
- var type = (0, _core.getNodeType)(n);
27
- if (!type && (0, _core.isTextNode)(n) && n.id) {
28
- var parentNode = (0, _core.getParentNode)(editor.children, n.id);
29
- type = (0, _core.getNodeType)(parentNode);
30
- }
31
- if (type === _constants2.CODE_BLOCK) return true;
32
- if (type.startsWith('header')) return true;
33
- if (type === _constants2.TITLE) return true;
34
- if (type === _constants2.SUBTITLE) return true;
35
- if (type === _constants2.LIST_ITEM) return true;
36
- if (type === _constants2.CHECK_LIST_ITEM) return true;
37
- if (type === _constants2.MULTI_COLUMN) return true;
38
- if (type === _constants2.BLOCKQUOTE) return true;
39
- if (type === _constants2.CALL_OUT) return true;
40
- if (_slate.Editor.isVoid(editor, n)) return true;
41
- return false;
42
- },
43
- universal: true
44
- }),
45
- _Editor$nodes2 = (0, _slicedToArray2["default"])(_Editor$nodes, 1),
46
- match = _Editor$nodes2[0];
47
- if (match) return true;
48
- return false;
49
- };
50
- var generateWhiteboardNode = exports.generateWhiteboardNode = function generateWhiteboardNode(repoID) {
51
- var filename = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
52
- var filePath = arguments.length > 2 ? arguments[2] : undefined;
53
- var exdrawReadOnlyLink = arguments.length > 3 ? arguments[3] : undefined;
54
- var whiteboardNode = {
55
- id: _slugid["default"].nice(),
56
- type: _constants2.WHITEBOARD,
57
- repo_id: repoID,
58
- title: filename,
59
- file_path: filePath,
60
- link: exdrawReadOnlyLink,
61
- children: [{
62
- id: _slugid["default"].nice(),
63
- text: ''
64
- }]
65
- };
66
- return whiteboardNode;
67
- };
68
- var insertWhiteboard = exports.insertWhiteboard = /*#__PURE__*/function () {
69
- var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/(0, _regeneratorRuntime2["default"])().mark(function _callee(editor, filename, filePath) {
70
- var _editor$selection;
71
- var repoID, eventBus, exdrawReadOnlyLink, whiteboardNode, path, position, nextPath, endOfFirstNode, range;
72
- return (0, _regeneratorRuntime2["default"])().wrap(function _callee$(_context) {
73
- while (1) switch (_context.prev = _context.next) {
74
- case 0:
75
- if (!isInsertWhiteboardMenuDisabled(editor)) {
76
- _context.next = 2;
77
- break;
78
- }
79
- return _context.abrupt("return");
80
- case 2:
81
- if (!(editor.selection == null)) {
82
- _context.next = 4;
83
- break;
84
- }
85
- return _context.abrupt("return");
86
- case 4:
87
- repoID = _context2["default"].getSetting('repoID');
88
- eventBus = _eventBus["default"].getInstance();
89
- _context.next = 8;
90
- return new Promise(function (resolve) {
91
- eventBus.dispatch(_constants.INTERNAL_EVENT.GENERATE_EXDRAW_READ_ONLY_LINK, {
92
- repoID: repoID,
93
- filePath: filePath,
94
- onSuccess: function onSuccess(link) {
95
- resolve(link);
96
- }
97
- });
98
- });
99
- case 8:
100
- exdrawReadOnlyLink = _context.sent;
101
- whiteboardNode = generateWhiteboardNode(repoID, filename, filePath, exdrawReadOnlyLink);
102
- path = (_editor$selection = editor.selection) === null || _editor$selection === void 0 ? void 0 : _editor$selection.anchor.path;
103
- position = 'after';
104
- if (!(position === _constants2.INSERT_POSITION.AFTER)) {
105
- _context.next = 20;
106
- break;
107
- }
108
- _slate.Transforms.insertNodes(editor, whiteboardNode, {
109
- at: [path[0] + 1]
110
- });
111
- nextPath = _slate.Path.next([path[0] + 1]);
112
- if (!(0, _core.getNode)(editor, nextPath)) {
113
- _slate.Transforms.insertNodes(editor, (0, _core.generateDefaultParagraph)(), {
114
- at: nextPath
115
- });
116
- }
117
- endOfFirstNode = _slate.Editor.start(editor, nextPath);
118
- range = {
119
- anchor: endOfFirstNode,
120
- focus: endOfFirstNode
121
- };
122
- (0, _core.focusEditor)(editor, range);
123
- return _context.abrupt("return");
124
- case 20:
125
- case "end":
126
- return _context.stop();
127
- }
128
- }, _callee);
129
- }));
130
- return function insertWhiteboard(_x, _x2, _x3) {
131
- return _ref.apply(this, arguments);
132
- };
133
- }();
134
- var onCreateWhiteboardFile = exports.onCreateWhiteboardFile = function onCreateWhiteboardFile(editor) {
135
- var eventBus = _eventBus["default"].getInstance();
136
- var external_props = {
137
- insertWhiteboard: insertWhiteboard,
138
- fileType: 'exdraw',
139
- editor: editor
140
- };
141
- eventBus.dispatch(_constants.INTERNAL_EVENT.CREATE_WHITEBOARD_FILE, (0, _objectSpread2["default"])({}, external_props));
142
- };
@@ -1,41 +0,0 @@
1
- .sdoc-whiteboard-container {
2
- position: relative;
3
- width: 100%;
4
- height: 300px;
5
- border: 1px solid #ccc;
6
- margin: 5px 0;
7
- }
8
-
9
- .sdoc-whiteboard-container.isSelected {
10
- border: 2px solid rgb(0, 123, 255);
11
- }
12
-
13
- .sdoc-whiteboard-title {
14
- font-size: 14px;
15
- color: #333;
16
- text-align: center;
17
- margin: 5px;
18
- width: 100%;
19
- position: absolute;
20
- top: 0;
21
- left: 0%;
22
- z-index: 3;
23
- }
24
-
25
- .sdoc-whiteboard-container .iframe-overlay {
26
- position: absolute;
27
- top: 0;
28
- left: 0;
29
- width: 100%;
30
- height: 100%;
31
- cursor: pointer;
32
- z-index: 2;
33
- }
34
-
35
- .sdoc-whiteboard-container .sdoc-whiteboard-element {
36
- width: 100%;
37
- height: 100%;
38
- border: none;
39
- position: relative;
40
- z-index: 1;
41
- }
@@ -1,20 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports["default"] = void 0;
8
- var _constants = require("../../constants");
9
- var _menu = _interopRequireDefault(require("./menu"));
10
- var _plugin = _interopRequireDefault(require("./plugin"));
11
- var _renderElem = require("./render-elem");
12
- require("./index.css");
13
- var WhiteboardPlugin = {
14
- type: _constants.WHITEBOARD,
15
- nodeType: 'element',
16
- editorMenus: [_menu["default"]],
17
- editorPlugin: _plugin["default"],
18
- renderElements: [_renderElem.renderWhiteboard]
19
- };
20
- var _default = exports["default"] = WhiteboardPlugin;
@@ -1,59 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard")["default"];
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = void 0;
9
- var _react = _interopRequireWildcard(require("react"));
10
- var _reactI18next = require("react-i18next");
11
- var _reactstrap = require("reactstrap");
12
- var _constants = require("../../../../constants");
13
- var _dropdownMenuItem = _interopRequireDefault(require("../../../commons/dropdown-menu-item"));
14
- var _constants2 = require("../../../constants");
15
- var _helper = require("../helper");
16
- var WhiteboardMenu = function WhiteboardMenu(_ref) {
17
- var editor = _ref.editor,
18
- readonly = _ref.readonly,
19
- toggle = _ref.toggle,
20
- eventBus = _ref.eventBus;
21
- var disabled = (0, _helper.isInsertWhiteboardMenuDisabled)(editor, readonly);
22
- var menuConfig = _constants2.MENUS_CONFIG_MAP[_constants2.WHITEBOARD];
23
- var _useTranslation = (0, _reactI18next.useTranslation)('sdoc-editor'),
24
- t = _useTranslation.t;
25
- var onCreateFile = function onCreateFile() {
26
- (0, _helper.onCreateWhiteboardFile)(editor);
27
- };
28
- var openSelectWhiteboardFileDialog = (0, _react.useCallback)(function () {
29
- eventBus.dispatch(_constants.INTERNAL_EVENT.INSERT_ELEMENT, {
30
- type: _constants2.ELEMENT_TYPE.WHITEBOARD,
31
- insertWhiteboard: _helper.insertWhiteboard
32
- });
33
- toggle && toggle();
34
- // eslint-disable-next-line react-hooks/exhaustive-deps
35
- }, [toggle, eventBus]);
36
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_dropdownMenuItem["default"], {
37
- disabled: disabled,
38
- menuConfig: menuConfig,
39
- className: "pr-2"
40
- }, !disabled && /*#__PURE__*/_react["default"].createElement("i", {
41
- className: "sdocfont sdoc-right-slide sdoc-dropdown-item-right-icon"
42
- })), !disabled && /*#__PURE__*/_react["default"].createElement(_reactstrap.UncontrolledPopover, {
43
- target: menuConfig.id,
44
- trigger: "hover",
45
- className: "sdoc-menu-popover sdoc-dropdown-menu sdoc-sub-dropdown-menu sdoc-insert-whiteboard-menu-popover",
46
- placement: "right-start",
47
- hideArrow: true,
48
- fade: false
49
- }, /*#__PURE__*/_react["default"].createElement("div", {
50
- className: "sdoc-insert-whiteboard-menu-popover-container sdoc-dropdown-menu-container"
51
- }, /*#__PURE__*/_react["default"].createElement("div", {
52
- className: "sdoc-dropdown-menu-item",
53
- onClick: openSelectWhiteboardFileDialog
54
- }, t('Upload_local_whiteboard')), /*#__PURE__*/_react["default"].createElement("div", {
55
- className: "sdoc-dropdown-menu-item",
56
- onClick: onCreateFile
57
- }, t('Create_new_excalidraw')))));
58
- };
59
- var _default = exports["default"] = WhiteboardMenu;
@@ -1,53 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports["default"] = void 0;
8
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
9
- var _react = _interopRequireDefault(require("react"));
10
- var _slate = require("@seafile/slate");
11
- var _isHotkey = _interopRequireDefault(require("is-hotkey"));
12
- var _constants = require("../../constants");
13
- var _core = require("../../core");
14
- var _helpers = require("../../toolbar/side-toolbar/helpers");
15
- var withWhiteboard = function withWhiteboard(editor) {
16
- var isVoid = editor.isVoid,
17
- onHotKeyDown = editor.onHotKeyDown;
18
- var newEditor = editor;
19
-
20
- // Make whiteboard as void node
21
- newEditor.isVoid = function (elem) {
22
- var type = elem.type;
23
- if (type === _constants.WHITEBOARD) {
24
- return true;
25
- }
26
- return isVoid(elem);
27
- };
28
- newEditor.onHotKeyDown = function (event) {
29
- var _ref = (0, _core.getSelectedNodeEntryByType)(editor, _constants.WHITEBOARD) || [],
30
- _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
31
- whiteboardNode = _ref2[0],
32
- path = _ref2[1];
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
- var emptyParagraph = (0, _core.generateEmptyElement)(_constants.PARAGRAPH);
38
- _slate.Transforms.insertNodes(editor, emptyParagraph, {
39
- at: _slate.Path.next(path)
40
- });
41
- var 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
- };
51
- return newEditor;
52
- };
53
- var _default = exports["default"] = withWhiteboard;
@@ -1,87 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard")["default"];
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.renderWhiteboard = renderWhiteboard;
9
- var _react = _interopRequireWildcard(require("react"));
10
- var _slateReact = require("@seafile/slate-react");
11
- var _classnames = _interopRequireDefault(require("classnames"));
12
- var _constants = require("../../../constants");
13
- var _context = _interopRequireDefault(require("../../../context"));
14
- var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
15
- require("./index.css");
16
- var Whiteboard = function Whiteboard(_ref) {
17
- var editor = _ref.editor,
18
- element = _ref.element;
19
- var file_path = element.file_path,
20
- repo_id = element.repo_id,
21
- title = element.title,
22
- link = element.link;
23
- var whiteboardRef = (0, _react.useRef)();
24
- var isSelected = (0, _slateReact.useSelected)();
25
- (0, _react.useEffect)(function () {
26
- var handleMessage = function handleMessage(event) {
27
- var _event$data;
28
- if (((_event$data = event.data) === null || _event$data === void 0 ? void 0 : _event$data.type) === 'checkSdocParent') {
29
- var isSdocClass = whiteboardRef === null || whiteboardRef === void 0 ? void 0 : whiteboardRef.current.classList.contains('sdoc-whiteboard-element');
30
- whiteboardRef === null || whiteboardRef === void 0 ? void 0 : whiteboardRef.current.contentWindow.postMessage({
31
- type: 'checkSdocParentResult',
32
- isInSdoc: isSdocClass
33
- }, '*');
34
- }
35
- };
36
- var handleWindowResize = function handleWindowResize() {
37
- whiteboardRef === null || whiteboardRef === void 0 ? void 0 : whiteboardRef.current.contentWindow.postMessage({
38
- type: 'resizeWindowWidth',
39
- isResize: true
40
- }, '*');
41
- };
42
- var eventBus = _eventBus["default"].getInstance();
43
- var unsubscribeResizeArticle = eventBus.subscribe(_constants.INTERNAL_EVENT.RESIZE_ARTICLE, handleWindowResize);
44
- window.addEventListener('message', handleMessage);
45
- return function () {
46
- window.removeEventListener('message', handleMessage);
47
- unsubscribeResizeArticle();
48
- };
49
- }, []);
50
- var handleDoubleClick = function handleDoubleClick(event) {
51
- event.preventDefault();
52
- var siteRoot = _context["default"].getSetting('siteRoot');
53
- var url = "".concat(siteRoot, "lib/").concat(repo_id, "/file").concat(file_path);
54
- window.open(url, '_blank');
55
- return;
56
- };
57
- return /*#__PURE__*/_react["default"].createElement("div", {
58
- className: (0, _classnames["default"])('sdoc-whiteboard-container', {
59
- 'isSelected': isSelected
60
- }),
61
- onDoubleClick: handleDoubleClick,
62
- scrolling: "no"
63
- }, /*#__PURE__*/_react["default"].createElement("div", {
64
- className: "sdoc-whiteboard-title"
65
- }, title), /*#__PURE__*/_react["default"].createElement("iframe", {
66
- className: "sdoc-whiteboard-element",
67
- title: title,
68
- src: link,
69
- ref: whiteboardRef
70
- }), /*#__PURE__*/_react["default"].createElement("div", {
71
- className: "iframe-overlay",
72
- onDoubleClick: handleDoubleClick
73
- }));
74
- };
75
- function renderWhiteboard(props, editor) {
76
- var element = props.element,
77
- children = props.children,
78
- attributes = props.attributes;
79
- return /*#__PURE__*/_react["default"].createElement("div", Object.assign({}, attributes, {
80
- contentEditable: "false",
81
- suppressContentEditableWarning: true
82
- }), children, /*#__PURE__*/_react["default"].createElement(Whiteboard, {
83
- editor: editor,
84
- element: element,
85
- contentEditable: "false"
86
- }));
87
- }