@seafile/sdoc-editor 2.0.79 → 2.0.81

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.
@@ -138,8 +138,9 @@ const EditorComment = _ref => {
138
138
  }, 0);
139
139
  };
140
140
  const handleClickCommentedText = event => {
141
+ var _parentDom$className2;
141
142
  const parentDom = event.target.parentElement;
142
- if (parentDom.className.split(/\s+/).some(cls => cls.startsWith('sdoc_comment'))) {
143
+ if (parentDom !== null && parentDom !== void 0 && (_parentDom$className2 = parentDom.className) !== null && _parentDom$className2 !== void 0 && _parentDom$className2.split(/\s+/).some(cls => cls.startsWith('sdoc_comment'))) {
143
144
  commentedDomRef.current = parentDom;
144
145
  const matchedAttributes = parentDom.className.split(' ').filter(cls => cls.startsWith('sdoc_comment_'));
145
146
  const clickedCommmentIdArray = matchedAttributes.map(item => item.replace('sdoc_comment_', ''));
@@ -138,9 +138,11 @@ const SdocEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
138
138
  isShowFullScreen
139
139
  } = _ref2;
140
140
  if (isShowFullScreen) {
141
+ // Boundary situation
142
+ (0, _helpers.removeMarks)(validEditor);
141
143
  setShowFullScreen(true);
142
144
  }
143
- }, []);
145
+ }, [validEditor]);
144
146
  (0, _react.useEffect)(() => {
145
147
  const eventBus = _eventBus.default.getInstance();
146
148
  const unsubscribePresentationFullScreen = eventBus.subscribe(_constants.INTERNAL_EVENT.TOGGLE_PRESENTATION_MODE, handleFullScreenPresentation);
@@ -16,6 +16,12 @@ Object.defineProperty(exports, "DiffViewer", {
16
16
  return _views.DiffViewer;
17
17
  }
18
18
  });
19
+ Object.defineProperty(exports, "DropdownMenuItem", {
20
+ enumerable: true,
21
+ get: function () {
22
+ return _dropdownMenuItem.default;
23
+ }
24
+ });
19
25
  Object.defineProperty(exports, "EventBus", {
20
26
  enumerable: true,
21
27
  get: function () {
@@ -112,12 +118,36 @@ Object.defineProperty(exports, "Tooltip", {
112
118
  return _tooltip.default;
113
119
  }
114
120
  });
121
+ Object.defineProperty(exports, "WIKI_EDITOR", {
122
+ enumerable: true,
123
+ get: function () {
124
+ return _constants.WIKI_EDITOR;
125
+ }
126
+ });
127
+ Object.defineProperty(exports, "WIKI_EDITOR_EDIT_AREA_WIDTH", {
128
+ enumerable: true,
129
+ get: function () {
130
+ return _constants.WIKI_EDITOR_EDIT_AREA_WIDTH;
131
+ }
132
+ });
133
+ Object.defineProperty(exports, "WikiEditor", {
134
+ enumerable: true,
135
+ get: function () {
136
+ return _wikiEditor.default;
137
+ }
138
+ });
115
139
  Object.defineProperty(exports, "context", {
116
140
  enumerable: true,
117
141
  get: function () {
118
142
  return _context.default;
119
143
  }
120
144
  });
145
+ Object.defineProperty(exports, "createWikiEditor", {
146
+ enumerable: true,
147
+ get: function () {
148
+ return _extension.createWikiEditor;
149
+ }
150
+ });
121
151
  Object.defineProperty(exports, "deserializeHtml", {
122
152
  enumerable: true,
123
153
  get: function () {
@@ -196,6 +226,18 @@ Object.defineProperty(exports, "usePlugins", {
196
226
  return _usePlugins.usePlugins;
197
227
  }
198
228
  });
229
+ Object.defineProperty(exports, "withNodeId", {
230
+ enumerable: true,
231
+ get: function () {
232
+ return _nodeId.default;
233
+ }
234
+ });
235
+ Object.defineProperty(exports, "withSocketIO", {
236
+ enumerable: true,
237
+ get: function () {
238
+ return _socket.withSocketIO;
239
+ }
240
+ });
199
241
  var _fileLoading = _interopRequireDefault(require("./components/file-loading"));
200
242
  var _loading = _interopRequireDefault(require("./components/loading"));
201
243
  var _toast = _interopRequireDefault(require("./components/toast"));
@@ -204,11 +246,16 @@ var _constants = require("./constants");
204
246
  var _context = _interopRequireDefault(require("./context"));
205
247
  var _revisionEditor = _interopRequireDefault(require("./editor/revision-editor"));
206
248
  var _sdocEditor = _interopRequireDefault(require("./editor/sdoc-editor"));
249
+ var _wikiEditor = _interopRequireDefault(require("./editor/wiki-editor"));
250
+ var _extension = require("./extension");
251
+ var _dropdownMenuItem = _interopRequireDefault(require("./extension/commons/dropdown-menu-item"));
207
252
  var _menuShortcutIndicator = _interopRequireDefault(require("./extension/commons/menu-shortcut-indicator"));
208
253
  var _useCollaborators = require("./hooks/use-collaborators");
209
254
  var _usePlugins = require("./hooks/use-plugins");
255
+ var _nodeId = _interopRequireDefault(require("./node-id"));
210
256
  var _outline = _interopRequireDefault(require("./outline"));
211
257
  var _slateConvert = require("./slate-convert");
258
+ var _socket = require("./socket");
212
259
  var _commonUtils = require("./utils/common-utils");
213
260
  var _diff = require("./utils/diff");
214
261
  var _eventBus = _interopRequireDefault(require("./utils/event-bus"));
@@ -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 _basicSdk = require("../../basic-sdk");
11
12
  var _revisionAvatar = _interopRequireDefault(require("../../assets/images/revision-avatar.png"));
12
13
  var _sdocFreezed = _interopRequireDefault(require("../../assets/images/sdoc-freezed.png"));
13
- var _basicSdk = require("../../basic-sdk");
14
14
  var _constants = require("../../constants");
15
15
  var _utils = require("../../utils");
16
16
  var _draftDropdown = _interopRequireDefault(require("../draft-dropdown"));
@@ -1,18 +1,18 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.default = void 0;
9
- var _DTableSwitch2 = _interopRequireDefault(require("dtable-ui-component/lib/DTableSwitch"));
10
9
  var _react = _interopRequireWildcard(require("react"));
11
10
  var _reactI18next = require("react-i18next");
12
11
  var _reactstrap = require("reactstrap");
13
12
  var _printJs = _interopRequireDefault(require("@seafile/print-js"));
14
13
  var _basicSdk = require("../../basic-sdk");
15
14
  var _constants = require("../../constants");
15
+ var _switch = _interopRequireDefault(require("../switch"));
16
16
  const MoreOperations = _ref => {
17
17
  let {
18
18
  isStarred,
@@ -144,10 +144,10 @@ const MoreOperations = _ref => {
144
144
  }, t('Document_history')), !_basicSdk.isMobile && /*#__PURE__*/_react.default.createElement(_reactstrap.DropdownItem, {
145
145
  id: "sdoc-full-width-mode-wrapper",
146
146
  className: "sdoc-dropdown-menu-item"
147
- }, /*#__PURE__*/_react.default.createElement(_DTableSwitch2.default, {
147
+ }, /*#__PURE__*/_react.default.createElement(_switch.default, {
148
148
  checked: isFullWidthMode,
149
149
  placeholder: t('Full_width_mode'),
150
- switchClassName: "sdoc-full-width-mode-wrapper w-100",
150
+ className: "sdoc-full-width-mode-wrapper w-100",
151
151
  onChange: onSwitchMode
152
152
  })), parentFolderURL && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
153
153
  className: "sdoc-operator-folder-divider"
@@ -13,7 +13,15 @@ const PresentationOperation = () => {
13
13
  t
14
14
  } = (0, _reactI18next.useTranslation)('sdoc-editor');
15
15
  const id = 'sdoc_presentation';
16
+ const {
17
+ plugins,
18
+ closePlugin
19
+ } = (0, _basicSdk.usePlugins)();
16
20
  const onPresentationToggle = (0, _react.useCallback)(() => {
21
+ // Close plugins before presentation mode
22
+ if (plugins && ['sdoc-info', 'sdoc-comment'].includes(plugins[0].name)) {
23
+ closePlugin && closePlugin();
24
+ }
17
25
  const eventBus = _basicSdk.EventBus.getInstance();
18
26
  eventBus.dispatch(_basicSdk.INTERNAL_EVENT.TOGGLE_PRESENTATION_MODE, {
19
27
  isShowFullScreen: true
@@ -22,7 +30,7 @@ const PresentationOperation = () => {
22
30
  if (node !== null && node !== void 0 && node.requestFullscreen) {
23
31
  node.requestFullscreen().catch(err => console.error('Failed to enter fullscreen:', err));
24
32
  }
25
- }, []);
33
+ }, [closePlugin, plugins]);
26
34
  return /*#__PURE__*/_react.default.createElement("span", {
27
35
  className: "op-item",
28
36
  id: id,
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
3
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
@@ -8,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
8
7
  exports.default = void 0;
9
8
  var _react = _interopRequireWildcard(require("react"));
10
9
  var _reactstrap = require("reactstrap");
11
- var _dropdownMenuItem = _interopRequireDefault(require("../../../../../../basic-sdk/extension/commons/dropdown-menu-item"));
10
+ var _basicSdk = require("../../../../../../basic-sdk");
12
11
  require("./index.css");
13
12
  const RevisionOperation = _ref => {
14
13
  let {
@@ -56,7 +55,7 @@ const RevisionOperation = _ref => {
56
55
  ref: popoverRef
57
56
  }, /*#__PURE__*/_react.default.createElement("div", {
58
57
  className: "sdoc-dropdown-menu-container"
59
- }, /*#__PURE__*/_react.default.createElement(_dropdownMenuItem.default, {
58
+ }, /*#__PURE__*/_react.default.createElement(_basicSdk.DropdownMenuItem, {
60
59
  onClick: deleteRevision,
61
60
  menuConfig: {
62
61
  iconClass: 'sdocfont sdoc-delete',
@@ -79,7 +79,7 @@
79
79
  width: 8px;
80
80
  }
81
81
 
82
- .sdoc-operator-folder .sdoc-dropdown-menu .sdoc-dropdown-menu-item .sdoc-full-width-mode-wrapper .custom-switch .custom-switch-input:checked ~ .custom-switch-indicator:before {
82
+ .sdoc-operator-folder .sdoc-dropdown-menu .sdoc-dropdown-menu-item .sdoc-full-width-mode-wrapper .custom-switch .custom-switch-input:checked~.custom-switch-indicator:before {
83
83
  left: 12px;
84
84
  }
85
85
 
@@ -10,8 +10,8 @@ var _react = _interopRequireWildcard(require("react"));
10
10
  var _reactI18next = require("react-i18next");
11
11
  var _reactstrap = require("reactstrap");
12
12
  var _classnames = _interopRequireDefault(require("classnames"));
13
- var _contentReplaced = _interopRequireDefault(require("../../assets/images/content-replaced.png"));
14
13
  var _basicSdk = require("../../basic-sdk");
14
+ var _contentReplaced = _interopRequireDefault(require("../../assets/images/content-replaced.png"));
15
15
  var _constants = require("../../constants");
16
16
  var _modalHeader = _interopRequireDefault(require("../modal-header"));
17
17
  require("./index.css");
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.TIP_TYPE = exports.TIP_TITLE = exports.TIP_CONTENT = exports.NEW_REVISION = exports.EXTERNAL_EVENT = void 0;
7
- var _constants = require("../basic-sdk/constants");
7
+ var _basicSdk = require("../basic-sdk");
8
8
  const EXTERNAL_EVENT = exports.EXTERNAL_EVENT = {
9
9
  INTERNAL_LINK_CLICK: 'internal_link_click',
10
10
  TOGGLE_STAR: 'toggle_star',
@@ -14,14 +14,14 @@ const EXTERNAL_EVENT = exports.EXTERNAL_EVENT = {
14
14
  UNFREEZE: 'unfreeze',
15
15
  // change internal event to external event
16
16
  // editor
17
- REFRESH_DOCUMENT: _constants.INTERNAL_EVENT.REFRESH_DOCUMENT,
18
- NEW_NOTIFICATION: _constants.INTERNAL_EVENT.NEW_NOTIFICATION,
19
- CLEAR_NOTIFICATION: _constants.INTERNAL_EVENT.CLEAR_NOTIFICATION,
17
+ REFRESH_DOCUMENT: _basicSdk.INTERNAL_EVENT.REFRESH_DOCUMENT,
18
+ NEW_NOTIFICATION: _basicSdk.INTERNAL_EVENT.NEW_NOTIFICATION,
19
+ CLEAR_NOTIFICATION: _basicSdk.INTERNAL_EVENT.CLEAR_NOTIFICATION,
20
20
  // wiki
21
- CREATE_SDOC_FILE: _constants.INTERNAL_EVENT.CREATE_SDOC_FILE,
22
- CREATE_WIKI_PAGE: _constants.INTERNAL_EVENT.CREATE_WIKI_PAGE,
21
+ CREATE_SDOC_FILE: _basicSdk.INTERNAL_EVENT.CREATE_SDOC_FILE,
22
+ CREATE_WIKI_PAGE: _basicSdk.INTERNAL_EVENT.CREATE_WIKI_PAGE,
23
23
  // document
24
- IMAGE_COLUMN_TOGGLE: _constants.INTERNAL_EVENT.IMAGE_COLUMN_TOGGLE,
24
+ IMAGE_COLUMN_TOGGLE: _basicSdk.INTERNAL_EVENT.IMAGE_COLUMN_TOGGLE,
25
25
  COLLABORATORS_UPDATED: 'collaborators_updated',
26
26
  CHANGE_HEADER_WIDTH: 'change_header_width'
27
27
  };
@@ -9,7 +9,6 @@ exports.default = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _classnames = _interopRequireDefault(require("classnames"));
11
11
  var _basicSdk = require("../basic-sdk");
12
- var _localStorageUtils = _interopRequireDefault(require("../basic-sdk/utils/local-storage-utils"));
13
12
  const Layout = _ref => {
14
13
  let {
15
14
  children,
@@ -23,7 +22,7 @@ const Layout = _ref => {
23
22
  if (isSdocRevision) return;
24
23
  const docUuid = _basicSdk.context.getSetting('docUuid');
25
24
  const docName = _basicSdk.context.getSetting('docName');
26
- const recentFiles = _localStorageUtils.default.getItem('sdoc-recent-files', []);
25
+ const recentFiles = _basicSdk.LocalStorage.getItem('sdoc-recent-files', []);
27
26
  let arr = [];
28
27
  const newFile = {
29
28
  doc_uuid: docUuid,
@@ -42,7 +41,7 @@ const Layout = _ref => {
42
41
  } else {
43
42
  arr.push(newFile);
44
43
  }
45
- _localStorageUtils.default.setItem('sdoc-recent-files', arr);
44
+ _basicSdk.LocalStorage.setItem('sdoc-recent-files', arr);
46
45
  };
47
46
  (0, _react.useEffect)(() => {
48
47
  setTimeout(() => {
@@ -9,11 +9,6 @@ exports.default = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _reactI18next = require("react-i18next");
11
11
  var _basicSdk = require("../basic-sdk");
12
- var _constants = require("../basic-sdk/constants");
13
- var _wikiEditor = _interopRequireDefault(require("../basic-sdk/editor/wiki-editor"));
14
- var _extension = require("../basic-sdk/extension");
15
- var _nodeId = _interopRequireDefault(require("../basic-sdk/node-id"));
16
- var _socket = require("../basic-sdk/socket");
17
12
  var _errorBoundary = _interopRequireDefault(require("../components/error-boundary"));
18
13
  require("../assets/css/simple-viewer.css");
19
14
  const SdocWikiEditor = _ref => {
@@ -25,25 +20,25 @@ const SdocWikiEditor = _ref => {
25
20
  } = _ref;
26
21
  _basicSdk.context.initApi();
27
22
  const validEditor = (0, _react.useMemo)(() => {
28
- const defaultEditor = (0, _extension.createWikiEditor)();
23
+ const defaultEditor = (0, _basicSdk.createWikiEditor)();
29
24
  // getEditorConfig cashe the config, so we need to update the uuid,for wiki editor
30
25
  docUuid && _basicSdk.context.updateConfigUuid(docUuid);
31
26
  const editorConfig = _basicSdk.context.getEditorConfig();
32
27
  let newEditor = null;
33
28
  if (!isWikiReadOnly) {
34
- newEditor = (0, _nodeId.default)((0, _socket.withSocketIO)(defaultEditor, {
29
+ newEditor = (0, _basicSdk.withNodeId)((0, _basicSdk.withSocketIO)(defaultEditor, {
35
30
  document,
36
31
  config: editorConfig
37
32
  }));
38
33
  } else {
39
- newEditor = (0, _nodeId.default)(defaultEditor);
34
+ newEditor = (0, _basicSdk.withNodeId)(defaultEditor);
40
35
  }
41
36
  const {
42
37
  cursors
43
38
  } = document;
44
39
  newEditor.cursors = cursors || {};
45
- newEditor.width = _constants.WIKI_EDITOR_EDIT_AREA_WIDTH; // default width
46
- newEditor.editorType = _constants.WIKI_EDITOR;
40
+ newEditor.width = _basicSdk.WIKI_EDITOR_EDIT_AREA_WIDTH; // default width
41
+ newEditor.editorType = _basicSdk.WIKI_EDITOR;
47
42
  return newEditor;
48
43
 
49
44
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -55,7 +50,7 @@ const SdocWikiEditor = _ref => {
55
50
  validEditor.closeConnection();
56
51
  };
57
52
  }, [isWikiReadOnly, validEditor]);
58
- return /*#__PURE__*/_react.default.createElement(_errorBoundary.default, null, /*#__PURE__*/_react.default.createElement(_wikiEditor.default, {
53
+ return /*#__PURE__*/_react.default.createElement(_errorBoundary.default, null, /*#__PURE__*/_react.default.createElement(_basicSdk.WikiEditor, {
59
54
  document: document,
60
55
  docUuid: docUuid,
61
56
  editor: validEditor,
@@ -9,7 +9,6 @@ exports.default = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _reactI18next = require("react-i18next");
11
11
  var _basicSdk = require("../basic-sdk");
12
- var _views = require("../basic-sdk/views");
13
12
  var _docInfo = _interopRequireDefault(require("../components/doc-info"));
14
13
  var _docOperations = _interopRequireDefault(require("../components/doc-operations"));
15
14
  var _errorBoundary = _interopRequireDefault(require("../components/error-boundary"));
@@ -145,7 +144,7 @@ const SimpleEditor = _ref => {
145
144
  revisionContent: revisionContent,
146
145
  isShowChanges: isShowChanges,
147
146
  didMountCallback: setDiffChanges
148
- }), isSdocRevision && isPublished && /*#__PURE__*/_react.default.createElement(_views.PublishedRevisionDiffViewer, {
147
+ }), isSdocRevision && isPublished && /*#__PURE__*/_react.default.createElement(_basicSdk.PublishedRevisionDiffViewer, {
149
148
  revisionContent: revisionContent,
150
149
  isShowChanges: isShowChanges,
151
150
  didMountCallback: setDiffChanges
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seafile/sdoc-editor",
3
- "version": "2.0.79",
3
+ "version": "2.0.81",
4
4
  "private": false,
5
5
  "description": "This is a sdoc editor",
6
6
  "main": "dist/index.js",
@@ -104,7 +104,7 @@
104
104
  "css-minimizer-webpack-plugin": "5.0.1",
105
105
  "dotenv": "^10.0.0",
106
106
  "dotenv-expand": "^5.1.0",
107
- "dtable-sdk": "5.0.8",
107
+ "dtable-sdk": "5.0.10",
108
108
  "dtable-utils": "5.0.1",
109
109
  "ejs": "3.1.10",
110
110
  "eslint": "^8.3.0",
package/dist/entry.js DELETED
@@ -1,9 +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 _sdocEditor = _interopRequireDefault(require("./basic-sdk/editor/sdoc-editor"));
9
- var _default = exports.default = _sdocEditor.default;