@seafile/sdoc-editor 2.0.75 → 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.
Files changed (45) hide show
  1. package/dist/basic-sdk/comment/components/comment-context-menu/index.css +1 -1
  2. package/dist/basic-sdk/comment/components/comment-participants-editor/index.js +2 -2
  3. package/dist/basic-sdk/comment/components/global-comment/global-comment-header.js +4 -5
  4. package/dist/basic-sdk/comment/components/global-comment/index.js +2 -2
  5. package/dist/basic-sdk/comment/hooks/comment-hooks/use-comment-mount.js +2 -2
  6. package/dist/basic-sdk/comment/hooks/notification-hooks/use-notification-mount.js +9 -10
  7. package/dist/basic-sdk/comment/provider/participants-content-provider.js +4 -4
  8. package/dist/basic-sdk/comment/reducer/notification-reducer.js +10 -11
  9. package/dist/basic-sdk/constants/index.js +16 -1
  10. package/dist/basic-sdk/editor/sdoc-comment-editor.js +4 -15
  11. package/dist/basic-sdk/editor/sdoc-editor.js +5 -6
  12. package/dist/basic-sdk/editor/wiki-editor.js +4 -5
  13. package/dist/basic-sdk/extension/commons/file-insert-dialog/index.js +6 -7
  14. package/dist/basic-sdk/extension/commons/insert-element-dialog/index.js +1 -1
  15. package/dist/basic-sdk/extension/plugins/ai/ai-menu/style.css +1 -1
  16. package/dist/basic-sdk/extension/plugins/image/helpers.js +17 -4
  17. package/dist/basic-sdk/extension/plugins/image/render-elem.js +9 -10
  18. package/dist/basic-sdk/extension/plugins/mention/render-elem/participant-popover.js +2 -2
  19. package/dist/basic-sdk/extension/plugins/text-style/menu/index.js +1 -1
  20. package/dist/basic-sdk/extension/plugins/text-style/render-elem.js +1 -1
  21. package/dist/{hooks → basic-sdk/hooks}/use-collaborators.js +1 -1
  22. package/dist/{hooks → basic-sdk/hooks}/use-plugins.js +3 -3
  23. package/dist/basic-sdk/index.js +26 -0
  24. package/dist/basic-sdk/layout/editor-content.js +2 -2
  25. package/dist/basic-sdk/model/index.js +20 -0
  26. package/dist/{model → basic-sdk/model}/notification.js +1 -1
  27. package/dist/basic-sdk/right-panel/index.js +2 -2
  28. package/dist/basic-sdk/socket/socket-manager.js +10 -10
  29. package/dist/basic-sdk/views/sdoc-viewer.js +4 -3
  30. package/dist/components/doc-operations/plugins-operations.js +1 -2
  31. package/dist/components/doc-operations/revision-operations/index.js +21 -20
  32. package/dist/components/doc-operations/revision-operations/more-revision-operations/index.js +1 -1
  33. package/dist/components/doc-operations/revision-operations/revisions/index.js +1 -1
  34. package/dist/constants/index.js +12 -21
  35. package/dist/context.js +1 -1
  36. package/dist/hooks/index.js +1 -27
  37. package/dist/model/index.js +1 -15
  38. package/dist/pages/simple-editor.js +2 -2
  39. package/dist/plugin-module/editor/plugin-editor.js +2 -3
  40. package/dist/plugin-module/index.js +2 -2
  41. package/dist/plugin-module/plugins/seatable-column/helpers.js +1 -9
  42. package/dist/plugin-module/views/plugin-viewer.js +3 -3
  43. package/package.json +1 -1
  44. package/dist/pages/document-plugin-editor.js +0 -111
  45. /package/dist/{model → basic-sdk/model}/user.js +0 -0
@@ -1,5 +1,5 @@
1
1
  .menu-group-item.sdoc-comment-menu-container {
2
- width: 90px;
2
+ width: auto;
3
3
  color: #212529;
4
4
  font-size: 14px;
5
5
  }
@@ -9,7 +9,7 @@ exports.default = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _reactI18next = require("react-i18next");
11
11
  var _reactstrap = require("reactstrap");
12
- var _hooks = require("../../../../hooks");
12
+ var _useCollaborators = require("../../../hooks/use-collaborators");
13
13
  var _mouseEvent = require("../../../utils/mouse-event");
14
14
  var _utils = require("../../utils");
15
15
  var _searchedCollaborators = _interopRequireDefault(require("./searched-collaborators"));
@@ -23,7 +23,7 @@ const CommentParticipantsEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref
23
23
  const popoverRef = (0, _react.useRef)();
24
24
  const {
25
25
  collaborators
26
- } = (0, _hooks.useCollaborators)();
26
+ } = (0, _useCollaborators.useCollaborators)();
27
27
  const {
28
28
  t
29
29
  } = (0, _reactI18next.useTranslation)('sdoc-editor');
@@ -10,8 +10,7 @@ var _react = _interopRequireWildcard(require("react"));
10
10
  var _reactI18next = require("react-i18next");
11
11
  var _context = _interopRequireDefault(require("../../../../context"));
12
12
  var _tooltip = _interopRequireDefault(require("../../../components/tooltip"));
13
- var _constants = require("../../../../constants");
14
- var _constants2 = require("../../../constants");
13
+ var _constants = require("../../../constants");
15
14
  var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
16
15
  var _mouseEvent = require("../../../utils/mouse-event");
17
16
  const GlobalCommentHeader = _ref => {
@@ -41,9 +40,9 @@ const GlobalCommentHeader = _ref => {
41
40
  const res = await _context.default.listUnseenNotifications();
42
41
  const notifications = res.data.notifications;
43
42
  const eventBus = _eventBus.default.getInstance();
44
- eventBus.dispatch(_constants2.INTERNAL_EVENT.UNSEEN_NOTIFICATIONS_COUNT, notifications === null || notifications === void 0 ? void 0 : notifications.length);
45
- eventBus.dispatch(_constants.EXTERNAL_EVENT.NEW_NOTIFICATION);
46
- eventBus.dispatch(_constants.EXTERNAL_EVENT.CLEAR_NOTIFICATION);
43
+ eventBus.dispatch(_constants.INTERNAL_EVENT.UNSEEN_NOTIFICATIONS_COUNT, notifications === null || notifications === void 0 ? void 0 : notifications.length);
44
+ eventBus.dispatch(_constants.INTERNAL_EVENT.NEW_NOTIFICATION);
45
+ eventBus.dispatch(_constants.INTERNAL_EVENT.CLEAR_NOTIFICATION);
47
46
  } catch (error) {
48
47
  //
49
48
  }
@@ -12,8 +12,8 @@ var _reactstrap = require("reactstrap");
12
12
  var _classnames = _interopRequireDefault(require("classnames"));
13
13
  var _dayjs = _interopRequireDefault(require("dayjs"));
14
14
  var _context = _interopRequireDefault(require("../../../../context"));
15
- var _hooks = require("../../../../hooks");
16
15
  var _core = require("../../../extension/core");
16
+ var _usePlugins = require("../../../hooks/use-plugins");
17
17
  var _constants = require("../../constants");
18
18
  var _useCommentList = _interopRequireDefault(require("../../hooks/comment-hooks/use-comment-list"));
19
19
  var _commentItemCollapseWrapper = _interopRequireDefault(require("../comment-item-collapse-wrapper"));
@@ -32,7 +32,7 @@ const GlobalComment = _ref => {
32
32
  const commentDetailRef = (0, _react.useRef)(null);
33
33
  const {
34
34
  closePlugin
35
- } = (0, _hooks.usePlugins)();
35
+ } = (0, _usePlugins.usePlugins)();
36
36
  const [activeCommentGroup, setActiveCommentGroup] = (0, _react.useState)(null);
37
37
  const [showEditor, setShowEditor] = (0, _react.useState)(false);
38
38
  const [isScrollDisplayed, setIsScrollDisplayed] = (0, _react.useState)(false);
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.useCommentsMount = void 0;
8
8
  var _react = require("react");
9
- var _constants = require("../../../../constants");
10
9
  var _context = _interopRequireDefault(require("../../../../context"));
10
+ var _constants = require("../../../constants");
11
11
  var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
12
12
  const useCommentsMount = dispatch => {
13
13
  const request = (0, _react.useCallback)(async () => {
@@ -49,7 +49,7 @@ const useCommentsMount = dispatch => {
49
49
  (0, _react.useEffect)(() => {
50
50
  request();
51
51
  const eventBus = _eventBus.default.getInstance();
52
- const unsubscribeNewNotification = eventBus.subscribe(_constants.EXTERNAL_EVENT.NEW_NOTIFICATION, reRequest);
52
+ const unsubscribeNewNotification = eventBus.subscribe(_constants.INTERNAL_EVENT.NEW_NOTIFICATION, reRequest);
53
53
  return () => {
54
54
  unsubscribeNewNotification();
55
55
  };
@@ -7,12 +7,11 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.useNotificationsMount = void 0;
8
8
  var _react = require("react");
9
9
  var _reactI18next = require("react-i18next");
10
- var _constants = require("../../../../constants");
11
10
  var _context = _interopRequireDefault(require("../../../../context"));
12
- var _hooks = require("../../../../hooks");
13
- var _constants2 = require("../../../constants");
11
+ var _constants = require("../../../constants");
12
+ var _useCollaborators = require("../../../hooks/use-collaborators");
14
13
  var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
15
- var _constants3 = require("../../constants");
14
+ var _constants2 = require("../../constants");
16
15
  var _utils = require("../../utils");
17
16
  const useNotificationsMount = dispatch => {
18
17
  const {
@@ -20,7 +19,7 @@ const useNotificationsMount = dispatch => {
20
19
  } = (0, _reactI18next.useTranslation)('sdoc-editor');
21
20
  const {
22
21
  collaborators
23
- } = (0, _hooks.useCollaborators)();
22
+ } = (0, _useCollaborators.useCollaborators)();
24
23
  const popupBrowserCommentNotification = (0, _react.useCallback)(notification => {
25
24
  if (!notification) return;
26
25
  const {
@@ -44,20 +43,20 @@ const useNotificationsMount = dispatch => {
44
43
  popupBrowserCommentNotification(notification);
45
44
  const eventBus = _eventBus.default.getInstance();
46
45
  dispatch({
47
- type: _constants3.DOC_NOTIFICATION_REDUCER_TYPE.FETCHING
46
+ type: _constants2.DOC_NOTIFICATION_REDUCER_TYPE.FETCHING
48
47
  });
49
48
  try {
50
49
  const res = await _context.default.listUnseenNotifications();
51
50
  const notifications = res.data.notifications;
52
51
  dispatch({
53
- type: _constants3.DOC_NOTIFICATION_REDUCER_TYPE.FETCHED,
52
+ type: _constants2.DOC_NOTIFICATION_REDUCER_TYPE.FETCHED,
54
53
  payload: notifications
55
54
  });
56
- eventBus.dispatch(_constants2.INTERNAL_EVENT.UNSEEN_NOTIFICATIONS_COUNT, notifications === null || notifications === void 0 ? void 0 : notifications.length);
55
+ eventBus.dispatch(_constants.INTERNAL_EVENT.UNSEEN_NOTIFICATIONS_COUNT, notifications === null || notifications === void 0 ? void 0 : notifications.length);
57
56
  } catch (error) {
58
57
  console.log(error);
59
58
  dispatch({
60
- type: _constants3.DOC_NOTIFICATION_REDUCER_TYPE.FETCH_ERROR
59
+ type: _constants2.DOC_NOTIFICATION_REDUCER_TYPE.FETCH_ERROR
61
60
  });
62
61
  }
63
62
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -65,7 +64,7 @@ const useNotificationsMount = dispatch => {
65
64
  (0, _react.useEffect)(() => {
66
65
  request();
67
66
  const eventBus = _eventBus.default.getInstance();
68
- const unsubscribeNewNotification = eventBus.subscribe(_constants.EXTERNAL_EVENT.NEW_NOTIFICATION, request);
67
+ const unsubscribeNewNotification = eventBus.subscribe(_constants.INTERNAL_EVENT.NEW_NOTIFICATION, request);
69
68
  return () => {
70
69
  unsubscribeNewNotification();
71
70
  };
@@ -8,10 +8,10 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.default = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _reactI18next = require("react-i18next");
11
- var _constants = require("../../../constants");
12
11
  var _context = _interopRequireDefault(require("../../../context"));
13
- var _model = require("../../../model");
14
12
  var _toast = _interopRequireDefault(require("../../components/toast"));
13
+ var _constants = require("../../constants");
14
+ var _model = require("../../model");
15
15
  var _commonUtils = require("../../utils/common-utils");
16
16
  var _eventBus = _interopRequireDefault(require("../../utils/event-bus"));
17
17
  var _useParticipants = require("../hooks/use-participants");
@@ -78,8 +78,8 @@ const ParticipantsProvider = _ref => {
78
78
  }, []);
79
79
  (0, _react.useEffect)(() => {
80
80
  const eventBus = _eventBus.default.getInstance();
81
- const unsubscribeParticipantAdded = eventBus.subscribe(_constants.EXTERNAL_EVENT.PARTICIPANT_ADDED, updateLocalParticipants);
82
- const unsubscribeParticipantRemoved = eventBus.subscribe(_constants.EXTERNAL_EVENT.PARTICIPANT_REMOVED, deleteLocalParticipant);
81
+ const unsubscribeParticipantAdded = eventBus.subscribe(_constants.INTERNAL_EVENT.PARTICIPANT_ADDED, updateLocalParticipants);
82
+ const unsubscribeParticipantRemoved = eventBus.subscribe(_constants.INTERNAL_EVENT.PARTICIPANT_REMOVED, deleteLocalParticipant);
83
83
  return () => {
84
84
  unsubscribeParticipantAdded();
85
85
  unsubscribeParticipantRemoved();
@@ -5,11 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.notificationReducer = exports.initNotificationsInfo = void 0;
8
- var _constants = require("../../../constants");
9
- var _model = require("../../../model");
10
- var _constants2 = require("../../constants");
8
+ var _constants = require("../../constants");
9
+ var _model = require("../../model");
11
10
  var _eventBus = _interopRequireDefault(require("../../utils/event-bus"));
12
- var _constants3 = require("../constants");
11
+ var _constants2 = require("../constants");
13
12
  const initNotificationsInfo = exports.initNotificationsInfo = {
14
13
  isFetching: true,
15
14
  notifications_map: {},
@@ -17,11 +16,11 @@ const initNotificationsInfo = exports.initNotificationsInfo = {
17
16
  };
18
17
  const notificationReducer = (state, action) => {
19
18
  switch (action.type) {
20
- case _constants3.DOC_NOTIFICATION_REDUCER_TYPE.FETCHING:
19
+ case _constants2.DOC_NOTIFICATION_REDUCER_TYPE.FETCHING:
21
20
  {
22
21
  return initNotificationsInfo;
23
22
  }
24
- case _constants3.DOC_NOTIFICATION_REDUCER_TYPE.FETCHED:
23
+ case _constants2.DOC_NOTIFICATION_REDUCER_TYPE.FETCHED:
25
24
  {
26
25
  const notifications = action.payload;
27
26
  let notificationsMap = {};
@@ -35,7 +34,7 @@ const notificationReducer = (state, action) => {
35
34
  error: false
36
35
  };
37
36
  }
38
- case _constants3.DOC_NOTIFICATION_REDUCER_TYPE.FETCH_ERROR:
37
+ case _constants2.DOC_NOTIFICATION_REDUCER_TYPE.FETCH_ERROR:
39
38
  {
40
39
  return {
41
40
  isFetching: false,
@@ -43,7 +42,7 @@ const notificationReducer = (state, action) => {
43
42
  error: true
44
43
  };
45
44
  }
46
- case _constants3.DOC_NOTIFICATION_REDUCER_TYPE.ADD:
45
+ case _constants2.DOC_NOTIFICATION_REDUCER_TYPE.ADD:
47
46
  {
48
47
  const {
49
48
  notification
@@ -57,7 +56,7 @@ const notificationReducer = (state, action) => {
57
56
  }
58
57
  };
59
58
  }
60
- case _constants3.DOC_NOTIFICATION_REDUCER_TYPE.DEL:
59
+ case _constants2.DOC_NOTIFICATION_REDUCER_TYPE.DEL:
61
60
  {
62
61
  const notificationKeys = action.payload;
63
62
  const {
@@ -71,10 +70,10 @@ const notificationReducer = (state, action) => {
71
70
  });
72
71
  }
73
72
  const eventBus = _eventBus.default.getInstance();
74
- eventBus.dispatch(_constants2.INTERNAL_EVENT.UNSEEN_NOTIFICATIONS_COUNT, Object.keys(notifications_map).length);
73
+ eventBus.dispatch(_constants.INTERNAL_EVENT.UNSEEN_NOTIFICATIONS_COUNT, Object.keys(notifications_map).length);
75
74
  // No unread messages, clearly marked
76
75
  if (Object.keys(notifications_map).length === 0) {
77
- eventBus.dispatch(_constants.EXTERNAL_EVENT.CLEAR_NOTIFICATION);
76
+ eventBus.dispatch(_constants.INTERNAL_EVENT.CLEAR_NOTIFICATION);
78
77
  }
79
78
  return {
80
79
  ...state,
@@ -59,7 +59,22 @@ const INTERNAL_EVENT = exports.INTERNAL_EVENT = {
59
59
  ON_VIDEO_FILES_UPLOADED: 'on_video_files_uploaded',
60
60
  RELOAD_COMMENT: 'reload_comment',
61
61
  ASK_AI: 'ask_ai',
62
- ADD_CONTEXT_COMMENT: 'add_context_comment'
62
+ ADD_CONTEXT_COMMENT: 'add_context_comment',
63
+ REFRESH_DOCUMENT: 'refresh_document',
64
+ PUBLISH_DOCUMENT: 'publish_document',
65
+ PUBLISH_DOCUMENT_ERROR: 'publish_document_error',
66
+ DOCUMENT_REPLACED: 'document_replaced',
67
+ DOCUMENT_REPLACED_ERROR: 'document_replaced_error',
68
+ REMOVE_DOCUMENT: 'remove_document',
69
+ REMOVE_DOCUMENT_ERROR: 'remove_document_error',
70
+ NEW_NOTIFICATION: 'new_notification',
71
+ CLEAR_NOTIFICATION: 'clear_notification',
72
+ PARTICIPANT_ADDED: 'participant-added',
73
+ PARTICIPANT_REMOVED: 'participant-removed',
74
+ TOGGLE_PRESENTATION_MODE: 'toggle_presentation_mode',
75
+ CREATE_SDOC_FILE: 'create_sdoc_file',
76
+ CREATE_WIKI_PAGE: 'create_wiki_page',
77
+ IMAGE_COLUMN_TOGGLE: 'Image_column_toggle'
63
78
  };
64
79
  const REVISION_DIFF_KEY = exports.REVISION_DIFF_KEY = 'diff';
65
80
  const REVISION_DIFF_VALUE = exports.REVISION_DIFF_VALUE = '1';
@@ -9,19 +9,17 @@ exports.default = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _slate = require("@seafile/slate");
11
11
  var _deepCopy = _interopRequireDefault(require("deep-copy"));
12
- var _constants = require("../../constants");
13
12
  var _context = _interopRequireDefault(require("../../context"));
14
- var _hooks = require("../../hooks");
15
13
  var _fileLoading = _interopRequireDefault(require("../components/file-loading"));
16
- var _constants2 = require("../constants");
14
+ var _constants = require("../constants");
17
15
  var _extension = require("../extension");
18
16
  var _core = require("../extension/core");
19
17
  var _commentEditorToolbar = _interopRequireDefault(require("../extension/toolbar/comment-editor-toolbar"));
18
+ var _useCollaborators = require("../hooks/use-collaborators");
20
19
  var _useScrollContext = require("../hooks/use-scroll-context");
21
20
  var _layout = require("../layout");
22
21
  var _nodeId = _interopRequireDefault(require("../node-id"));
23
22
  var _socket = require("../socket");
24
- var _eventBus = _interopRequireDefault(require("../utils/event-bus"));
25
23
  var _commentArticle = _interopRequireDefault(require("./comment-article"));
26
24
  const SdocCommentEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
27
25
  let {
@@ -47,7 +45,7 @@ const SdocCommentEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
47
45
  cursors
48
46
  } = document;
49
47
  newEditor.cursors = cursors || {};
50
- newEditor.width = _constants2.COMMENT_EDITOR_EDIT_AREA_WIDTH; // default width
48
+ newEditor.width = _constants.COMMENT_EDITOR_EDIT_AREA_WIDTH; // default width
51
49
 
52
50
  return newEditor;
53
51
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -71,15 +69,6 @@ const SdocCommentEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
71
69
  }
72
70
  // eslint-disable-next-line react-hooks/exhaustive-deps
73
71
  }, []);
74
- const onRefreshDocument = (0, _react.useCallback)(() => {
75
- window.location.reload();
76
- }, []);
77
-
78
- // useMount: refresh document
79
- (0, _react.useEffect)(() => {
80
- const eventBus = _eventBus.default.getInstance();
81
- eventBus.subscribe(_constants.EXTERNAL_EVENT.REFRESH_DOCUMENT, onRefreshDocument);
82
- }, [onRefreshDocument]);
83
72
 
84
73
  // The parent component can call the method of this component through ref
85
74
  (0, _react.useImperativeHandle)(ref, () => ({
@@ -114,7 +103,7 @@ const SdocCommentEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
114
103
  };
115
104
  return /*#__PURE__*/_react.default.createElement(_layout.EditorContainer, {
116
105
  editor: validEditor
117
- }, /*#__PURE__*/_react.default.createElement(_hooks.CollaboratorsProvider, null, /*#__PURE__*/_react.default.createElement("div", {
106
+ }, /*#__PURE__*/_react.default.createElement(_useCollaborators.CollaboratorsProvider, null, /*#__PURE__*/_react.default.createElement("div", {
118
107
  className: "sdoc-comment-editor-wrapper"
119
108
  }, /*#__PURE__*/_react.default.createElement("div", {
120
109
  ref: commentEditorContainerRef,
@@ -10,12 +10,11 @@ var _react = _interopRequireWildcard(require("react"));
10
10
  var _slate = require("@seafile/slate");
11
11
  var _deepCopy = _interopRequireDefault(require("deep-copy"));
12
12
  var _isHotkey = _interopRequireDefault(require("is-hotkey"));
13
- var _constants = require("../../constants");
14
13
  var _context = _interopRequireDefault(require("../../context"));
15
14
  var _jsBridge = _interopRequireDefault(require("../android/js-bridge"));
16
15
  var _outlineModule = require("../android/outline-module");
17
16
  var _fileLoading = _interopRequireDefault(require("../components/file-loading"));
18
- var _constants2 = require("../constants");
17
+ var _constants = require("../constants");
19
18
  var _extension = require("../extension");
20
19
  var _insertElementDialog = _interopRequireDefault(require("../extension/commons/insert-element-dialog"));
21
20
  var _core = require("../extension/core");
@@ -50,7 +49,7 @@ const SdocEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
50
49
  cursors
51
50
  } = document;
52
51
  newEditor.cursors = cursors || {};
53
- newEditor.width = _constants2.PAGE_EDIT_AREA_WIDTH; // default width
52
+ newEditor.width = _constants.PAGE_EDIT_AREA_WIDTH; // default width
54
53
  return newEditor;
55
54
 
56
55
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -120,7 +119,7 @@ const SdocEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
120
119
  // useMount: refresh document
121
120
  (0, _react.useEffect)(() => {
122
121
  const eventBus = _eventBus.default.getInstance();
123
- eventBus.subscribe(_constants.EXTERNAL_EVENT.REFRESH_DOCUMENT, onRefreshDocument);
122
+ eventBus.subscribe(_constants.INTERNAL_EVENT.REFRESH_DOCUMENT, onRefreshDocument);
124
123
 
125
124
  // Remove Marks on special conditions like unexpected exit or refresh page using AI or context comment
126
125
  const hasSpecialMark = !_slate.Editor.nodes(validEditor, {
@@ -144,7 +143,7 @@ const SdocEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
144
143
  }, []);
145
144
  (0, _react.useEffect)(() => {
146
145
  const eventBus = _eventBus.default.getInstance();
147
- const unsubscribePresentationFullScreen = eventBus.subscribe(_constants.EXTERNAL_EVENT.TOGGLE_PRESENTATION_MODE, handleFullScreenPresentation);
146
+ const unsubscribePresentationFullScreen = eventBus.subscribe(_constants.INTERNAL_EVENT.TOGGLE_PRESENTATION_MODE, handleFullScreenPresentation);
148
147
  return () => {
149
148
  unsubscribePresentationFullScreen();
150
149
  };
@@ -197,7 +196,7 @@ const SdocEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
197
196
  setSlateValue(value);
198
197
  // After the content is updated, update the search content
199
198
  setTimeout(() => {
200
- eventBus.dispatch(_constants2.INTERNAL_EVENT.UPDATE_SEARCH_REPLACE_HIGHLIGHT, value);
199
+ eventBus.dispatch(_constants.INTERNAL_EVENT.UPDATE_SEARCH_REPLACE_HIGHLIGHT, value);
201
200
  }, 0);
202
201
  if (_commonUtils.isMobile) {
203
202
  (0, _outlineModule.updateOutlineValue)(value);
@@ -10,10 +10,9 @@ var _react = _interopRequireWildcard(require("react"));
10
10
  var _slate = require("@seafile/slate");
11
11
  var _classnames = _interopRequireDefault(require("classnames"));
12
12
  var _deepCopy = _interopRequireDefault(require("deep-copy"));
13
- var _constants = require("../../constants");
14
13
  var _context = _interopRequireDefault(require("../../context"));
15
14
  var _fileLoading = _interopRequireDefault(require("../components/file-loading"));
16
- var _constants2 = require("../constants");
15
+ var _constants = require("../constants");
17
16
  var _extension = require("../extension");
18
17
  var _insertElementDialog = _interopRequireDefault(require("../extension/commons/insert-element-dialog"));
19
18
  var _core = require("../extension/core");
@@ -47,7 +46,7 @@ const WikiEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
47
46
  cursors
48
47
  } = document;
49
48
  newEditor.cursors = cursors || {};
50
- newEditor.width = _constants2.WIKI_EDITOR_EDIT_AREA_WIDTH; // default width
49
+ newEditor.width = _constants.WIKI_EDITOR_EDIT_AREA_WIDTH; // default width
51
50
  return newEditor;
52
51
 
53
52
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -110,7 +109,7 @@ const WikiEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
110
109
  // useMount: refresh document
111
110
  (0, _react.useEffect)(() => {
112
111
  const eventBus = _eventBus.default.getInstance();
113
- eventBus.subscribe(_constants.EXTERNAL_EVENT.REFRESH_DOCUMENT, onRefreshDocument);
112
+ eventBus.subscribe(_constants.INTERNAL_EVENT.REFRESH_DOCUMENT, onRefreshDocument);
114
113
  }, [onRefreshDocument]);
115
114
 
116
115
  // The parent component can call the method of this component through ref
@@ -137,7 +136,7 @@ const WikiEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
137
136
  const eventBus = _eventBus.default.getInstance();
138
137
  // After the content is updated, update the search content
139
138
  setTimeout(() => {
140
- eventBus.dispatch(_constants2.INTERNAL_EVENT.UPDATE_SEARCH_REPLACE_HIGHLIGHT, value);
139
+ eventBus.dispatch(_constants.INTERNAL_EVENT.UPDATE_SEARCH_REPLACE_HIGHLIGHT, value);
141
140
  }, 0);
142
141
  setSlateValue(value);
143
142
  };
@@ -11,15 +11,14 @@ var _reactI18next = require("react-i18next");
11
11
  var _slate = require("@seafile/slate");
12
12
  var _slateReact = require("@seafile/slate-react");
13
13
  var _classnames = _interopRequireDefault(require("classnames"));
14
- var _constants = require("../../../../constants");
15
14
  var _context = _interopRequireDefault(require("../../../../context"));
16
15
  var _toast = _interopRequireDefault(require("../../../components/toast"));
17
- var _constants2 = require("../../../constants");
16
+ var _constants = require("../../../constants");
18
17
  var _commonUtils = require("../../../utils/common-utils");
19
18
  var _debounce = _interopRequireDefault(require("../../../utils/debounce"));
20
19
  var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
21
20
  var _localStorageUtils = _interopRequireDefault(require("../../../utils/local-storage-utils"));
22
- var _constants3 = require("../../constants");
21
+ var _constants2 = require("../../constants");
23
22
  var _helpers = require("../../plugins/sdoc-link/helpers");
24
23
  var _helpers2 = require("../select-file-dialog/helpers");
25
24
  require("./style.css");
@@ -144,7 +143,7 @@ const FileLinkInsertDialog = _ref => {
144
143
  document.addEventListener('click', onClick);
145
144
  document.addEventListener('keydown', onKeydown);
146
145
  sdocScrollContainer.addEventListener('scroll', onScroll);
147
- const unsubscribeCloseDialog = eventBus.subscribe(_constants2.INTERNAL_EVENT.CLOSE_FILE_INSET_DIALOG, closeDialog);
146
+ const unsubscribeCloseDialog = eventBus.subscribe(_constants.INTERNAL_EVENT.CLOSE_FILE_INSET_DIALOG, closeDialog);
148
147
  return () => {
149
148
  sdocScrollContainer.removeEventListener('scroll', onScroll);
150
149
  document.removeEventListener('click', onClick);
@@ -207,8 +206,8 @@ const FileLinkInsertDialog = _ref => {
207
206
  (0, _helpers.insertSdocFileLink)(editor, name, doc_uuid);
208
207
  }, [closeDialog, editor, element]);
209
208
  const onShowMore = (0, _react.useCallback)(() => {
210
- eventBus.dispatch(_constants2.INTERNAL_EVENT.INSERT_ELEMENT, {
211
- type: _constants3.SDOC_LINK,
209
+ eventBus.dispatch(_constants.INTERNAL_EVENT.INSERT_ELEMENT, {
210
+ type: _constants2.SDOC_LINK,
212
211
  insertSdocFileLinkCallback: _helpers.insertSdocFileLink
213
212
  });
214
213
  (0, _helpers.removeTempInput)(editor, element);
@@ -223,7 +222,7 @@ const FileLinkInsertDialog = _ref => {
223
222
  editor,
224
223
  noShowDialog: true
225
224
  };
226
- eventBus.dispatch(_constants.EXTERNAL_EVENT.CREATE_SDOC_FILE, {
225
+ eventBus.dispatch(_constants.INTERNAL_EVENT.CREATE_SDOC_FILE, {
227
226
  newFileName: createName,
228
227
  ...external_props
229
228
  });
@@ -8,9 +8,9 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.default = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _reactI18next = require("react-i18next");
11
- var _constants = require("../../../constants");
12
11
  var _context = _interopRequireDefault(require("../../../../context"));
13
12
  var _toast = _interopRequireDefault(require("../../../components/toast"));
13
+ var _constants = require("../../../constants");
14
14
  var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
15
15
  var _constants2 = require("../../constants");
16
16
  var _index = _interopRequireDefault(require("../../plugins/ai/ai-module/index.js"));
@@ -1,5 +1,5 @@
1
1
  .menu-group-item.sdoc-ask-ai-menu-container {
2
- width: 80px;
2
+ width: auto;
3
3
  color: #212529;
4
4
  font-size: 14px;
5
5
  }
@@ -4,20 +4,33 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.updateImage = exports.selectImageWhenSelectPartial = exports.resetCursor = exports.removeImageBlockNode = exports.queryCopyMoveProgressView = exports.isInsertImageMenuDisabled = exports.isImageUrlIsFromUpload = exports.isImageUrlIsFromCopy = exports.insertImageFiles = exports.insertImage = exports.hasSdocImages = exports.handleBase64Image = exports.getSingleImageFromFragment = exports.getImageURL = exports.getImageData = exports.generateImageNode = exports.generateImageInfos = void 0;
7
+ exports.updateImage = exports.selectImageWhenSelectPartial = exports.resetCursor = exports.removeImageBlockNode = exports.queryCopyMoveProgressView = exports.isInsertImageMenuDisabled = exports.isImageUrlIsFromUpload = exports.isImageUrlIsFromCopy = exports.insertImageFiles = exports.insertImage = exports.hasSdocImages = exports.handleBase64Image = exports.getSingleImageFromFragment = exports.getImageURL = exports.getImageData = exports.getDigitalSignImgUrl = exports.getColumnByKey = exports.generateImageNode = exports.generateImageInfos = void 0;
8
8
  var _slate = require("@seafile/slate");
9
9
  var _slateReact = require("@seafile/slate-react");
10
10
  var _dtableUtils = require("dtable-utils");
11
11
  var _slugid = _interopRequireDefault(require("slugid"));
12
12
  var _urlJoin = _interopRequireDefault(require("url-join"));
13
13
  var _context = _interopRequireDefault(require("../../../../context"));
14
- var _helpers = require("../../../../plugin-module/plugins/seatable-column/helpers");
15
14
  var _constants = require("../../../constants");
16
15
  var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
17
16
  var _constants2 = require("../../constants");
18
17
  var _core = require("../../core");
19
18
  var _base64ToUnit8array = _interopRequireDefault(require("./base64-to-unit8array"));
20
19
  var _imageCache = _interopRequireDefault(require("./image-cache"));
20
+ // TODO: seatable_column
21
+ const getDigitalSignImgUrl = partUrl => {
22
+ const server = _context.default.getSetting('serviceUrl');
23
+ const workspaceID = _context.default.getSetting('workspaceID');
24
+ const dtableUuid = _context.default.getSetting('dtableUuid');
25
+ if (!partUrl || typeof partUrl !== 'string') return '';
26
+ return `${server}/workspace/${workspaceID}/asset/${dtableUuid}${partUrl}`;
27
+ };
28
+ exports.getDigitalSignImgUrl = getDigitalSignImgUrl;
29
+ const getColumnByKey = (columns, key) => {
30
+ const column = columns.find(item => item.key === key);
31
+ return column || null;
32
+ };
33
+ exports.getColumnByKey = getColumnByKey;
21
34
  const isInsertImageMenuDisabled = (editor, readonly) => {
22
35
  if (readonly) return true;
23
36
  const {
@@ -148,7 +161,7 @@ const getImageURL = (data, editor) => {
148
161
  column_key
149
162
  } = data;
150
163
  if (column_key) {
151
- const column = (0, _helpers.getColumnByKey)(editor.columns || [], column_key);
164
+ const column = getColumnByKey(editor.columns || [], column_key);
152
165
  const {
153
166
  type
154
167
  } = column || {};
@@ -158,7 +171,7 @@ const getImageURL = (data, editor) => {
158
171
  return firstSrc;
159
172
  } else if (type === _dtableUtils.CellType.DIGITAL_SIGN) {
160
173
  const partUrl = editor.getColumnCellValue(column_key) || '';
161
- const imgUrl = (0, _helpers.getDigitalSignImgUrl)(partUrl);
174
+ const imgUrl = getDigitalSignImgUrl(partUrl);
162
175
  return imgUrl;
163
176
  }
164
177
  }
@@ -12,13 +12,12 @@ var _reactI18next = require("react-i18next");
12
12
  var _slate = require("@seafile/slate");
13
13
  var _slateReact = require("@seafile/slate-react");
14
14
  var _classnames = _interopRequireDefault(require("classnames"));
15
- var _constants = require("../../../../constants");
16
15
  var _imagePlaceholder = _interopRequireDefault(require("../../../assets/images/image-placeholder.png"));
17
- var _constants2 = require("../../../constants");
16
+ var _constants = require("../../../constants");
18
17
  var _useScrollContext = require("../../../hooks/use-scroll-context");
19
18
  var _eventBus = _interopRequireDefault(require("../../../utils/event-bus"));
20
- var _constants3 = require("../../constants");
21
- var _constants4 = require("./constants");
19
+ var _constants2 = require("../../constants");
20
+ var _constants3 = require("./constants");
22
21
  var _copyImageErrorSvg = _interopRequireDefault(require("./copy-image-error-svg"));
23
22
  var _helpers = require("./helpers");
24
23
  var _hoverMenu = _interopRequireDefault(require("./hover-menu"));
@@ -39,7 +38,7 @@ const Image = _ref => {
39
38
  } = _ref;
40
39
  const {
41
40
  data,
42
- border_type = _constants4.IMAGE_BORDER_TYPE[0].type
41
+ border_type = _constants3.IMAGE_BORDER_TYPE[0].type
43
42
  } = element;
44
43
  const {
45
44
  show_caption = false,
@@ -48,7 +47,7 @@ const Image = _ref => {
48
47
  const path = _slateReact.ReactEditor.findPath(editor, element);
49
48
  const nodeEntry = _slate.Editor.node(editor, [path[0]]);
50
49
  const imageStyle = {
51
- border: _constants4.IMAGE_BORDER_TYPE.find(item => item.type === border_type).value
50
+ border: _constants3.IMAGE_BORDER_TYPE.find(item => item.type === border_type).value
52
51
  };
53
52
  const readOnly = (0, _slateReact.useReadOnly)();
54
53
  const imageRef = (0, _react.useRef)(null);
@@ -187,7 +186,7 @@ const Image = _ref => {
187
186
  let unsubscribeImageColumnToggle = null;
188
187
  if (column_key) {
189
188
  const eventBus = _eventBus.default.getInstance();
190
- unsubscribeImageColumnToggle = eventBus.subscribe(_constants.EXTERNAL_EVENT.IMAGE_COLUMN_TOGGLE, onImageColumnToggle);
189
+ unsubscribeImageColumnToggle = eventBus.subscribe(_constants.INTERNAL_EVENT.IMAGE_COLUMN_TOGGLE, onImageColumnToggle);
191
190
  }
192
191
  return () => {
193
192
  unsubscribeImageColumnToggle && unsubscribeImageColumnToggle();
@@ -230,7 +229,7 @@ const Image = _ref => {
230
229
  // External network images do not reload after failure to load
231
230
  if (!data.src.startsWith('http')) {
232
231
  const eventBus = _eventBus.default.getInstance();
233
- eventBus.subscribe(_constants2.INTERNAL_EVENT.RELOAD_IMAGE, reloadImage);
232
+ eventBus.subscribe(_constants.INTERNAL_EVENT.RELOAD_IMAGE, reloadImage);
234
233
  }
235
234
  // eslint-disable-next-line react-hooks/exhaustive-deps
236
235
  }, []);
@@ -319,7 +318,7 @@ const Image = _ref => {
319
318
  onMouseDown: onResizeStart
320
319
  }), isResizing && /*#__PURE__*/_react.default.createElement("span", {
321
320
  className: "image-size"
322
- }, /*#__PURE__*/_react.default.createElement("span", null, t('Width'), ':', parseInt(movingWidth || ((_imageRef$current = imageRef.current) === null || _imageRef$current === void 0 ? void 0 : _imageRef$current.clientWidth))), /*#__PURE__*/_react.default.createElement("span", null, "\xA0\xA0"), /*#__PURE__*/_react.default.createElement("span", null, t('Height'), ':', imageRef.current.clientHeight))), nodeEntry[0].type === _constants3.IMAGE_BLOCK && show_caption && /*#__PURE__*/_react.default.createElement("input", {
321
+ }, /*#__PURE__*/_react.default.createElement("span", null, t('Width'), ':', parseInt(movingWidth || ((_imageRef$current = imageRef.current) === null || _imageRef$current === void 0 ? void 0 : _imageRef$current.clientWidth))), /*#__PURE__*/_react.default.createElement("span", null, "\xA0\xA0"), /*#__PURE__*/_react.default.createElement("span", null, t('Height'), ':', imageRef.current.clientHeight))), nodeEntry[0].type === _constants2.IMAGE_BLOCK && show_caption && /*#__PURE__*/_react.default.createElement("input", {
323
322
  id: "sdoc-image-caption-input",
324
323
  ref: imageCaptionInputRef,
325
324
  className: "sdoc-image-caption-input-wrapper",
@@ -366,7 +365,7 @@ function renderImage(props, editor) {
366
365
  style['backgroundColor'] = leaf.computed_background_color;
367
366
  }
368
367
  if (element.add || element.delete) {
369
- style = Object.assign({}, style, element.add ? _constants3.ADDED_STYLE : _constants3.DELETED_STYLE);
368
+ style = Object.assign({}, style, element.add ? _constants2.ADDED_STYLE : _constants2.DELETED_STYLE);
370
369
  if (style.computed_background_color) {
371
370
  style['backgroundColor'] = style.computed_background_color;
372
371
  }
@@ -8,11 +8,11 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.default = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _slate = require("@seafile/slate");
11
- var _hooks = require("../../../../../hooks");
12
11
  var _constants = require("../../../../comment/constants");
13
12
  var _useParticipants = require("../../../../comment/hooks/use-participants");
14
13
  var _utils = require("../../../../comment/utils");
15
14
  var _constants2 = require("../../../../constants");
15
+ var _useCollaborators = require("../../../../hooks/use-collaborators");
16
16
  var _eventBus = _interopRequireDefault(require("../../../../utils/event-bus"));
17
17
  var _mouseEvent = require("../../../../utils/mouse-event");
18
18
  var _commons = require("../../../commons");
@@ -28,7 +28,7 @@ const ParticipantPopover = _ref => {
28
28
  const collaboratorsPopoverRef = (0, _react.useRef)(null);
29
29
  const {
30
30
  collaborators
31
- } = (0, _hooks.useCollaborators)();
31
+ } = (0, _useCollaborators.useCollaborators)();
32
32
  const {
33
33
  addParticipants,
34
34
  participants
@@ -156,7 +156,7 @@ const TextStyleMenuList = _ref => {
156
156
  tipMessage: t('Reduce_font_size')
157
157
  }, /*#__PURE__*/_react.default.createElement("i", {
158
158
  className: "sdocfont sdoc-reduce-font-size"
159
- }))), idPrefix && /*#__PURE__*/_react.default.createElement(_commentContextMenu.default, null), idPrefix && enableSeafileAI && /*#__PURE__*/_react.default.createElement(_aiMenu.AIContextMenu, {
159
+ }))), idPrefix && ![_constants.DOCUMENT_PLUGIN_EDITOR, _constants.WIKI_EDITOR].includes(editor.editorType) && /*#__PURE__*/_react.default.createElement(_commentContextMenu.default, null), idPrefix && enableSeafileAI && /*#__PURE__*/_react.default.createElement(_aiMenu.AIContextMenu, {
160
160
  isRichEditor: isRichEditor
161
161
  }));
162
162
  };