@seafile/sdoc-editor 2.0.66 → 2.0.68

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 (158) hide show
  1. package/dist/basic-sdk/comment/components/comment-delete-popover.js +1 -1
  2. package/dist/basic-sdk/comment/utils/index.js +8 -2
  3. package/dist/basic-sdk/extension/commons/insert-element-dialog/index.js +12 -17
  4. package/dist/basic-sdk/extension/constants/element-type.js +1 -5
  5. package/dist/basic-sdk/extension/constants/index.js +2 -32
  6. package/dist/basic-sdk/extension/constants/menus-config.js +2 -34
  7. package/dist/basic-sdk/extension/plugins/image/helpers.js +1 -1
  8. package/dist/basic-sdk/extension/plugins/index.js +1 -29
  9. package/dist/basic-sdk/extension/plugins/quick-insert/render-elem.js +1 -2
  10. package/dist/basic-sdk/extension/plugins/text-style/helpers.js +2 -1
  11. package/dist/basic-sdk/extension/plugins/text-style/menu/index.js +2 -1
  12. package/dist/basic-sdk/extension/render/custom-element.js +0 -20
  13. package/dist/basic-sdk/extension/toolbar/header-toolbar/insert-toolbar/index.js +8 -13
  14. package/dist/basic-sdk/extension/toolbar/side-toolbar/helpers.js +2 -19
  15. package/dist/basic-sdk/extension/toolbar/side-toolbar/index.js +1 -1
  16. package/dist/basic-sdk/extension/toolbar/side-toolbar/insert-block-menu.js +21 -37
  17. package/dist/index.js +3 -3
  18. package/dist/plugin-module/assets/css/default.css +25 -0
  19. package/dist/plugin-module/assets/css/dropdown-menu.css +138 -0
  20. package/dist/plugin-module/assets/css/layout.css +160 -0
  21. package/dist/plugin-module/assets/css/sdoc-comment-editor-plugin.css +19 -0
  22. package/dist/plugin-module/assets/css/sdoc-editor-article.css +29 -0
  23. package/dist/plugin-module/assets/css/sdoc-editor-plugins.css +320 -0
  24. package/dist/plugin-module/assets/css/sdoc-viewer.css +14 -0
  25. package/dist/plugin-module/assets/css/sdoc-wiki-viewer.css +28 -0
  26. package/dist/plugin-module/assets/images/black-border.png +0 -0
  27. package/dist/plugin-module/assets/images/grey-border.png +0 -0
  28. package/dist/plugin-module/assets/images/image-placeholder.png +0 -0
  29. package/dist/plugin-module/assets/images/no-border.png +0 -0
  30. package/dist/plugin-module/assets/images/sdoc-ask-ai.png +0 -0
  31. package/dist/plugin-module/assets/images/sdoc-freezed.png +0 -0
  32. package/dist/plugin-module/constants/index.js +40 -0
  33. package/dist/plugin-module/editor/editable-article.js +243 -0
  34. package/dist/plugin-module/editor/plugin-editor.js +213 -0
  35. package/dist/plugin-module/error-boundary/error-page.css +16 -0
  36. package/dist/plugin-module/error-boundary/error-page.js +37 -0
  37. package/dist/plugin-module/error-boundary/index.js +33 -0
  38. package/dist/plugin-module/gloable-ui/insert-element-dialog.js +249 -0
  39. package/dist/plugin-module/index.js +112 -0
  40. package/dist/plugin-module/layout/article-container.js +39 -0
  41. package/dist/plugin-module/layout/editor-container.js +32 -0
  42. package/dist/plugin-module/layout/editor-content.js +79 -0
  43. package/dist/plugin-module/layout/index.js +27 -0
  44. package/dist/{basic-sdk/extension → plugin-module}/plugins/chart/chart-edit-dialog/index.js +1 -1
  45. package/dist/{basic-sdk/extension → plugin-module}/plugins/chart/helpers.js +5 -4
  46. package/dist/{basic-sdk/extension → plugin-module}/plugins/chart/hover-menu/index.js +2 -2
  47. package/dist/{basic-sdk/extension → plugin-module}/plugins/chart/menu/index.js +1 -1
  48. package/dist/{basic-sdk/extension → plugin-module}/plugins/chart/render-elem.js +3 -3
  49. package/dist/plugin-module/plugins/index.js +34 -0
  50. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-column/helpers.js +8 -7
  51. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-column/index.js +2 -2
  52. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-column/menu/column-list-menu.js +4 -4
  53. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-column/menu/index.js +2 -2
  54. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-column/model.js +1 -1
  55. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-column/plugin.js +3 -3
  56. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-column/render-elem.js +4 -4
  57. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/dialog/add-seatable-row-dialog/resize-handle/index.css +4 -4
  58. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/dialog/add-seatable-row-dialog/row-card-header-cell.js +2 -2
  59. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/dialog/add-seatable-row-dialog/row-card-item.js +2 -2
  60. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/helpers.js +5 -4
  61. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/index.js +2 -2
  62. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/menu/index.js +2 -2
  63. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/menu/seatable-list.js +5 -6
  64. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/plugin.js +6 -5
  65. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/draggable/index.js +1 -1
  66. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/formatter/collaborator-wrapper.js +3 -3
  67. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/helpers.js +4 -3
  68. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/menu/index.js +4 -3
  69. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/menu/seatable-list.js +1 -1
  70. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/model.js +2 -2
  71. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/op-menu/index.js +3 -3
  72. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/plugin.js +9 -8
  73. package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/render-element/seatable-table.js +3 -3
  74. package/dist/plugin-module/render/render-elements.js +58 -0
  75. package/dist/plugin-module/toolbar/header-toolbar/index.js +81 -0
  76. package/dist/plugin-module/toolbar/header-toolbar/insert-toolbar/index.css +28 -0
  77. package/dist/plugin-module/toolbar/header-toolbar/insert-toolbar/index.js +104 -0
  78. package/dist/plugin-module/views/plugin-viewer.js +55 -0
  79. package/dist/plugin-module/views/readonly-article.js +41 -0
  80. package/dist/slate-convert/html-to-slate/constants.js +1 -2
  81. package/dist/slate-convert/slate-to-md/transform.js +4 -0
  82. package/package.json +2 -1
  83. /package/dist/{basic-sdk/extension → plugin-module}/plugins/chart/chart-edit-dialog/index.css +0 -0
  84. /package/dist/{basic-sdk/extension → plugin-module}/plugins/chart/hover-menu/index.css +0 -0
  85. /package/dist/{basic-sdk/extension → plugin-module}/plugins/chart/index.js +0 -0
  86. /package/dist/{basic-sdk/extension → plugin-module}/plugins/chart/plugin.js +0 -0
  87. /package/dist/{basic-sdk/extension → plugin-module}/plugins/chart/render-elem.css +0 -0
  88. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-column/constants/cell-types.js +0 -0
  89. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-column/constants/column.js +0 -0
  90. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-column/menu/column-list-item.js +0 -0
  91. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-column/menu/column-list-menu.css +0 -0
  92. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-column/render-elem.css +0 -0
  93. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/dialog/add-seatable-row-dialog/index.css +0 -0
  94. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/dialog/add-seatable-row-dialog/index.js +0 -0
  95. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/dialog/add-seatable-row-dialog/record-content.js +0 -0
  96. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/dialog/add-seatable-row-dialog/resize-handle/ResizeHandle.js +0 -0
  97. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/dialog/add-seatable-row-dialog/row-card-header.js +0 -0
  98. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/dialog/add-seatable-row-dialog/seatable-table-record.js +0 -0
  99. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/menu/index.css +0 -0
  100. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/model.js +0 -0
  101. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/render-elem/index.css +0 -0
  102. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/render-elem/index.js +0 -0
  103. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/render-elem/record-header.js +0 -0
  104. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-row/render-elem/record-item.js +0 -0
  105. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/draggable/index.css +0 -0
  106. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/formatter/index.js +0 -0
  107. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/formatter/link-formatter/index.css +0 -0
  108. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/formatter/link-formatter/index.js +0 -0
  109. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/formatter/link-formatter/utils.js +0 -0
  110. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/index.js +0 -0
  111. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/menu/index.css +0 -0
  112. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/op-menu/index.css +0 -0
  113. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/render-element/index.css +0 -0
  114. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/render-element/index.js +0 -0
  115. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/render-element/record-header.js +0 -0
  116. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/render-element/record-item.js +0 -0
  117. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/render-element/record-list.js +0 -0
  118. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/common-add-tool/index.css +0 -0
  119. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/common-add-tool/index.js +0 -0
  120. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/custom-switch/index.css +0 -0
  121. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/custom-switch/index.js +0 -0
  122. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/dtable-search-input/index.js +0 -0
  123. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/calendar-filter/date-translate.js +0 -0
  124. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/calendar-filter/dayjs.js +0 -0
  125. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/calendar-filter/index.js +0 -0
  126. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/collaborator-filter/index.js +0 -0
  127. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/_department-select.css +0 -0
  128. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/_department-utils.js +0 -0
  129. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/department-multiple-select-filter.js +0 -0
  130. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/department-multiple-select.js +0 -0
  131. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/department-single-select-filter.js +0 -0
  132. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/department-single-select.js +0 -0
  133. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/index.js +0 -0
  134. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/selected-departments.js +0 -0
  135. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/department-filter/use-click-outside.js +0 -0
  136. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/filter-item-utils.js +0 -0
  137. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/filter-item.js +0 -0
  138. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/filters-list.css +0 -0
  139. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/filters-list.js +0 -0
  140. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/number-editor/index.js +0 -0
  141. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover-widgets/rate-item/index.js +0 -0
  142. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover.css +0 -0
  143. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filter-popover.js +0 -0
  144. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/filters-utils.js +0 -0
  145. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/index.css +0 -0
  146. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/filter-setter/index.js +0 -0
  147. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/hide-column-setter/hide-column-item.js +0 -0
  148. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/hide-column-setter/hide-column-popover.js +0 -0
  149. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/hide-column-setter/index.css +0 -0
  150. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/hide-column-setter/index.js +0 -0
  151. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/index.css +0 -0
  152. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/index.js +0 -0
  153. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/sort-setter/index.css +0 -0
  154. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/sort-setter/index.js +0 -0
  155. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/sort-setter/sort-popover.js +0 -0
  156. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/sort-setter/sort-utils.js +0 -0
  157. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/table-setting/index.js +0 -0
  158. /package/dist/{basic-sdk/extension → plugin-module}/plugins/seatable-tables/seatable-settings/utils/utils.js +0 -0
@@ -0,0 +1,81 @@
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 _react = _interopRequireDefault(require("react"));
9
+ var _commons = require("../../../basic-sdk/extension/commons");
10
+ var _constants = require("../../../basic-sdk/extension/constants");
11
+ var _core = require("../../../basic-sdk/extension/core");
12
+ var _menu = _interopRequireDefault(require("../../../basic-sdk/extension/plugins/blockquote/menu"));
13
+ var _menu2 = _interopRequireDefault(require("../../../basic-sdk/extension/plugins/callout/menu"));
14
+ var _menu3 = _interopRequireDefault(require("../../../basic-sdk/extension/plugins/check-list/menu"));
15
+ var _menu4 = _interopRequireDefault(require("../../../basic-sdk/extension/plugins/clear-format/menu"));
16
+ var _menu5 = _interopRequireDefault(require("../../../basic-sdk/extension/plugins/font/menu"));
17
+ var _menu6 = _interopRequireDefault(require("../../../basic-sdk/extension/plugins/header/menu"));
18
+ var _historyMenu = _interopRequireDefault(require("../../../basic-sdk/extension/plugins/history/history-menu"));
19
+ var _menu7 = _interopRequireDefault(require("../../../basic-sdk/extension/plugins/list/menu"));
20
+ var _menu8 = _interopRequireDefault(require("../../../basic-sdk/extension/plugins/search-replace/menu"));
21
+ var _menu9 = _interopRequireDefault(require("../../../basic-sdk/extension/plugins/text-align/menu"));
22
+ var _menu10 = _interopRequireDefault(require("../../../basic-sdk/extension/plugins/text-style/menu"));
23
+ var _useSelectionUpdate = _interopRequireDefault(require("../../../basic-sdk/hooks/use-selection-update"));
24
+ var _insertToolbar = _interopRequireDefault(require("./insert-toolbar"));
25
+ const HeaderToolbar = _ref => {
26
+ let {
27
+ editor,
28
+ readonly = false
29
+ } = _ref;
30
+ (0, _useSelectionUpdate.default)();
31
+ const isSelectTableCell = (0, _core.getSelectedNodeByType)(editor, _constants.TABLE_CELL);
32
+ return /*#__PURE__*/_react.default.createElement("div", {
33
+ className: "sdoc-editor-toolbar"
34
+ }, /*#__PURE__*/_react.default.createElement(_commons.MenuGroup, null, /*#__PURE__*/_react.default.createElement(_historyMenu.default, {
35
+ editor: editor,
36
+ readonly: readonly
37
+ }), /*#__PURE__*/_react.default.createElement(_menu4.default, {
38
+ editor: editor,
39
+ readonly: readonly
40
+ })), /*#__PURE__*/_react.default.createElement(_commons.MenuGroup, null, /*#__PURE__*/_react.default.createElement(_insertToolbar.default, {
41
+ editor: editor,
42
+ readonly: readonly
43
+ })), /*#__PURE__*/_react.default.createElement(_menu6.default, {
44
+ editor: editor,
45
+ readonly: readonly
46
+ }), /*#__PURE__*/_react.default.createElement(_commons.MenuGroup, null, /*#__PURE__*/_react.default.createElement(_menu5.default, {
47
+ editor: editor,
48
+ readonly: readonly
49
+ }), /*#__PURE__*/_react.default.createElement(_menu10.default, {
50
+ editor: editor,
51
+ readonly: readonly
52
+ })), !isSelectTableCell && /*#__PURE__*/_react.default.createElement(_commons.MenuGroup, null, /*#__PURE__*/_react.default.createElement(_menu.default, {
53
+ editor: editor,
54
+ readonly: readonly
55
+ }), /*#__PURE__*/_react.default.createElement(_menu7.default, {
56
+ editor: editor,
57
+ type: _constants.UNORDERED_LIST,
58
+ readonly: readonly,
59
+ ariaLabel: "unordered list"
60
+ }), /*#__PURE__*/_react.default.createElement(_menu7.default, {
61
+ editor: editor,
62
+ type: _constants.ORDERED_LIST,
63
+ readonly: readonly,
64
+ ariaLabel: "ordered list"
65
+ }), /*#__PURE__*/_react.default.createElement(_menu3.default, {
66
+ editor: editor,
67
+ readonly: readonly
68
+ }), /*#__PURE__*/_react.default.createElement(_menu9.default, {
69
+ editor: editor,
70
+ readonly: readonly
71
+ }), /*#__PURE__*/_react.default.createElement(_menu2.default, {
72
+ editor: editor,
73
+ readonly: readonly
74
+ })), /*#__PURE__*/_react.default.createElement(_commons.MenuGroup, {
75
+ className: "menu-group sdoc-editor-toolbar-right-menu"
76
+ }, /*#__PURE__*/_react.default.createElement(_menu8.default, {
77
+ editor: editor,
78
+ readonly: readonly
79
+ })));
80
+ };
81
+ var _default = exports.default = HeaderToolbar;
@@ -0,0 +1,28 @@
1
+ .menu-group .menu-group-item.sdoc-insert-toolbar-btn {
2
+ width: 76px;
3
+ display: flex;
4
+ align-items: center;
5
+ justify-content: space-between;
6
+ }
7
+
8
+ .menu-group .menu-group-item.sdoc-insert-toolbar-btn.disabled {
9
+ /* 64: 76 - 12 */
10
+ width: 64px !important;
11
+ color: #BDBDBD;
12
+ }
13
+
14
+ .menu-group .sdoc-insert-toolbar-btn .sdoc-menu-with-dropdown-icon {
15
+ flex: 1;
16
+ justify-content: flex-start;
17
+ padding-left: 6px;
18
+ padding-right: 2px;
19
+ font-size: 14px;
20
+ }
21
+
22
+ .sdoc-insert-menu-popover .popover {
23
+ min-width: 200px;
24
+ }
25
+
26
+ .sdoc-insert-menu-popover .sdoc-insert-menu-container {
27
+ padding: 8px 0;
28
+ }
@@ -0,0 +1,104 @@
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 _classnames = _interopRequireDefault(require("classnames"));
13
+ var _menu = _interopRequireDefault(require("../../../../basic-sdk/extension/plugins/code-block/menu"));
14
+ var _menu2 = _interopRequireDefault(require("../../../../basic-sdk/extension/plugins/image/menu"));
15
+ var _menu3 = _interopRequireDefault(require("../../../../basic-sdk/extension/plugins/link/menu"));
16
+ var _tableMenu = _interopRequireDefault(require("../../../../basic-sdk/extension/plugins/table/menu/table-menu"));
17
+ var _eventBus = _interopRequireDefault(require("../../../../basic-sdk/utils/event-bus"));
18
+ var _menu4 = _interopRequireDefault(require("../../../plugins/chart/menu"));
19
+ var _menu5 = _interopRequireDefault(require("../../../plugins/seatable-column/menu"));
20
+ var _menu6 = _interopRequireDefault(require("../../../plugins/seatable-row/menu"));
21
+ var _menu7 = _interopRequireDefault(require("../../../plugins/seatable-tables/menu"));
22
+ require("./index.css");
23
+ const InsertToolbar = _ref => {
24
+ let {
25
+ isRichEditor = true,
26
+ className = 'menu-group-item',
27
+ editor,
28
+ readonly
29
+ } = _ref;
30
+ const [isShowMenu, setMenuShow] = (0, _react.useState)(false);
31
+ const {
32
+ t
33
+ } = (0, _reactI18next.useTranslation)('sdoc-editor');
34
+ const popoverRef = (0, _react.useRef)(null);
35
+ const disabled = readonly;
36
+ const insertButtonRef = (0, _react.useRef)(null);
37
+ const insertToolbarId = 'sdoc-insert-toolbar-btn';
38
+ const eventBus = (0, _react.useMemo)(() => {
39
+ return _eventBus.default.getInstance();
40
+ }, []);
41
+ const toggle = (0, _react.useCallback)(event => {
42
+ var _event$target;
43
+ if (event !== null && event !== void 0 && event.target && (event === null || event === void 0 ? void 0 : (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.tagName) === 'INPUT') {
44
+ return;
45
+ }
46
+ popoverRef.current && popoverRef.current.toggle();
47
+ setMenuShow(!isShowMenu);
48
+ // eslint-disable-next-line react-hooks/exhaustive-deps
49
+ }, [isShowMenu]);
50
+ const validClassName = (0, _classnames.default)(className, 'sdoc-menu-with-dropdown sdoc-insert-toolbar-btn', {
51
+ 'menu-show': isShowMenu,
52
+ 'disabled': disabled,
53
+ 'rich-icon-btn d-flex': isRichEditor,
54
+ 'rich-icon-btn-disabled': isRichEditor && disabled,
55
+ 'rich-icon-btn-hover': isRichEditor && !disabled,
56
+ 'btn btn-icon btn-secondary btn-active d-flex': !isRichEditor
57
+ });
58
+ const caretIconClass = `sdoc-menu-with-dropdown-triangle-icon sdocfont sdoc-${isShowMenu ? 'caret-up' : 'drop-down'}`;
59
+ const {
60
+ bottom
61
+ } = insertButtonRef.current ? insertButtonRef.current.getBoundingClientRect() : {
62
+ bottom: 92.5
63
+ };
64
+ const props = {
65
+ eventBus,
66
+ editor,
67
+ readonly,
68
+ toggle
69
+ };
70
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("button", {
71
+ type: "button",
72
+ className: validClassName,
73
+ id: insertToolbarId,
74
+ disabled: disabled,
75
+ ref: insertButtonRef
76
+ }, /*#__PURE__*/_react.default.createElement("div", {
77
+ className: "sdoc-menu-with-dropdown-icon"
78
+ }, /*#__PURE__*/_react.default.createElement("i", {
79
+ className: "sdocfont sdoc-insert mr-1"
80
+ }), /*#__PURE__*/_react.default.createElement("span", {
81
+ className: "text-truncate"
82
+ }, t('Insert'))), /*#__PURE__*/_react.default.createElement("div", {
83
+ className: "sdoc-menu-with-dropdown-triangle"
84
+ }, /*#__PURE__*/_react.default.createElement("span", {
85
+ className: caretIconClass
86
+ }))), !disabled && /*#__PURE__*/_react.default.createElement(_reactstrap.UncontrolledPopover, {
87
+ target: insertToolbarId,
88
+ className: "sdoc-menu-popover sdoc-dropdown-menu sdoc-insert-menu-popover",
89
+ trigger: "legacy",
90
+ placement: "bottom-start",
91
+ hideArrow: true,
92
+ toggle: toggle,
93
+ fade: false,
94
+ ref: popoverRef
95
+ }, /*#__PURE__*/_react.default.createElement("div", {
96
+ className: "sdoc-insert-menu-container sdoc-dropdown-menu-container",
97
+ style: {
98
+ maxHeight: window.innerHeight - bottom - 100
99
+ }
100
+ }, /*#__PURE__*/_react.default.createElement(_menu2.default, props), /*#__PURE__*/_react.default.createElement(_tableMenu.default, props), /*#__PURE__*/_react.default.createElement(_menu3.default, props), /*#__PURE__*/_react.default.createElement(_menu4.default, props), /*#__PURE__*/_react.default.createElement(_menu.default, props), /*#__PURE__*/_react.default.createElement("div", {
101
+ className: "sdoc-dropdown-menu-divider"
102
+ }), /*#__PURE__*/_react.default.createElement(_menu6.default, props), /*#__PURE__*/_react.default.createElement(_menu5.default, props), /*#__PURE__*/_react.default.createElement(_menu7.default, props))));
103
+ };
104
+ var _default = exports.default = InsertToolbar;
@@ -0,0 +1,55 @@
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 _extension = require("../../basic-sdk/extension");
11
+ var _useColorContext = require("../../basic-sdk/hooks/use-color-context");
12
+ var _nodeId = _interopRequireDefault(require("../../basic-sdk/node-id"));
13
+ var _context = _interopRequireDefault(require("../../context"));
14
+ var _hooks = require("../../hooks");
15
+ var _utils = require("../../utils");
16
+ var _layout = require("../layout");
17
+ var _headerToolbar = _interopRequireDefault(require("../toolbar/header-toolbar"));
18
+ var _readonlyArticle = _interopRequireDefault(require("./readonly-article"));
19
+ require("../assets/css/sdoc-viewer.css");
20
+ const PluginViewer = _ref => {
21
+ let {
22
+ editor,
23
+ document,
24
+ showToolbar = false,
25
+ showOutline = false,
26
+ showComment = false,
27
+ plugins = []
28
+ } = _ref;
29
+ if (!_context.default.api) {
30
+ _context.default.initApi();
31
+ }
32
+ const validEditor = editor || (0, _nodeId.default)((0, _extension.createDefaultEditor)());
33
+ const slateValue = (document || (0, _utils.generateDefaultDocContent)()).elements;
34
+ const Provider = showComment ? _hooks.CollaboratorsProvider : _react.Fragment;
35
+ return /*#__PURE__*/_react.default.createElement(Provider, null, /*#__PURE__*/_react.default.createElement(_hooks.PluginsProvider, {
36
+ plugins: plugins,
37
+ showComment: showComment
38
+ }, /*#__PURE__*/_react.default.createElement(_layout.EditorContainer, {
39
+ editor: validEditor,
40
+ readonly: true
41
+ }, /*#__PURE__*/_react.default.createElement(_useColorContext.ColorProvider, null, showToolbar && /*#__PURE__*/_react.default.createElement(_headerToolbar.default, {
42
+ editor: validEditor,
43
+ readonly: true
44
+ }), /*#__PURE__*/_react.default.createElement(_layout.EditorContent, {
45
+ docValue: slateValue,
46
+ readonly: true,
47
+ showOutline: showOutline,
48
+ editor: validEditor,
49
+ showComment: showComment
50
+ }, /*#__PURE__*/_react.default.createElement(_readonlyArticle.default, {
51
+ editor: validEditor,
52
+ slateValue: slateValue
53
+ }))))));
54
+ };
55
+ var _default = exports.default = PluginViewer;
@@ -0,0 +1,41 @@
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 _slateReact = require("@seafile/slate-react");
11
+ var _comment = _interopRequireDefault(require("../../basic-sdk/comment"));
12
+ var _decorates = require("../../basic-sdk/decorates");
13
+ var _extension = require("../../basic-sdk/extension");
14
+ var _highlight = require("../../basic-sdk/highlight");
15
+ var _layout = require("../layout");
16
+ var _renderElements = _interopRequireDefault(require("../render/render-elements"));
17
+ const ReadOnlyArticle = _ref => {
18
+ let {
19
+ editor,
20
+ slateValue,
21
+ showComment = false
22
+ } = _ref;
23
+ const decorate = (0, _decorates.usePipDecorate)(editor);
24
+ return /*#__PURE__*/_react.default.createElement(_slateReact.Slate, {
25
+ editor: editor,
26
+ value: slateValue
27
+ }, /*#__PURE__*/_react.default.createElement(_layout.ArticleContainer, {
28
+ editor: editor
29
+ }, /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_highlight.SetNodeToDecorations, null), /*#__PURE__*/_react.default.createElement(_slateReact.Editable, {
30
+ id: "sdoc-editor",
31
+ readOnly: true,
32
+ placeholder: "",
33
+ renderElement: _renderElements.default,
34
+ renderLeaf: _extension.renderLeaf,
35
+ decorate: decorate
36
+ })), showComment && /*#__PURE__*/_react.default.createElement(_comment.default, {
37
+ editor: editor,
38
+ type: "editor"
39
+ })));
40
+ };
41
+ var _default = exports.default = ReadOnlyArticle;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.UNORDERED_LIST = exports.TOP_LEVEL_TYPES = exports.TABLE_ROW = exports.TABLE_CELL = exports.TABLE = exports.SEATABLE_COLUMN = exports.PARAGRAPH = exports.ORDERED_LIST = exports.LIST_ITEM = exports.LINK = exports.INLINE_LEVEL_TYPES = exports.IMAGE = exports.HEADER_TYPE_MAP = exports.HEADER_LIST = exports.HEADER6 = exports.HEADER5 = exports.HEADER4 = exports.HEADER3 = exports.HEADER2 = exports.HEADER1 = exports.HEADER = exports.FORMULA = exports.CODE_LINE = exports.CODE_BLOCK = exports.CHECK_LIST_ITEM = exports.BLOCKQUOTE = void 0;
6
+ exports.UNORDERED_LIST = exports.TOP_LEVEL_TYPES = exports.TABLE_ROW = exports.TABLE_CELL = exports.TABLE = exports.PARAGRAPH = exports.ORDERED_LIST = exports.LIST_ITEM = exports.LINK = exports.INLINE_LEVEL_TYPES = exports.IMAGE = exports.HEADER_TYPE_MAP = exports.HEADER_LIST = exports.HEADER6 = exports.HEADER5 = exports.HEADER4 = exports.HEADER3 = exports.HEADER2 = exports.HEADER1 = exports.HEADER = exports.FORMULA = exports.CODE_LINE = exports.CODE_BLOCK = exports.CHECK_LIST_ITEM = exports.BLOCKQUOTE = void 0;
7
7
  const BLOCKQUOTE = exports.BLOCKQUOTE = 'blockquote';
8
8
  const HEADER = exports.HEADER = 'header';
9
9
  // each header type should be start with HEADER, all of justices should based on HEADER
@@ -26,7 +26,6 @@ const TABLE_CELL = exports.TABLE_CELL = 'table_cell';
26
26
  const IMAGE = exports.IMAGE = 'image';
27
27
  const LINK = exports.LINK = 'link';
28
28
  const FORMULA = exports.FORMULA = 'formula';
29
- const SEATABLE_COLUMN = exports.SEATABLE_COLUMN = 'seatable_column';
30
29
  const TOP_LEVEL_TYPES = exports.TOP_LEVEL_TYPES = [BLOCKQUOTE, HEADER1, HEADER2, HEADER3, HEADER4, HEADER5, HEADER6, ORDERED_LIST, UNORDERED_LIST, CHECK_LIST_ITEM, PARAGRAPH, CODE_BLOCK, TABLE];
31
30
  const INLINE_LEVEL_TYPES = exports.INLINE_LEVEL_TYPES = [IMAGE, LINK];
32
31
  const HEADER_LIST = exports.HEADER_LIST = ['H1', 'H2', 'H3', 'H4', 'H5', 'H6'];
@@ -101,6 +101,8 @@ const transformInlineChildren = (result, item) => {
101
101
  });
102
102
  return result;
103
103
  }
104
+
105
+ // TODO: seatable
104
106
  if (item.type && item.type === 'seatable_column') {
105
107
  const data = item.data;
106
108
  const newNode = {
@@ -146,6 +148,8 @@ const transformParagraph = node => {
146
148
  children: transformNodeWithInlineChildren(node)
147
149
  };
148
150
  }
151
+
152
+ // TODO: seatable
149
153
  const voidNodeTypes = ['image', 'seatable_column', 'formula'];
150
154
  const hasBlock = children.some(item => voidNodeTypes.includes(item.type));
151
155
  if (!hasBlock && _slate.Node.string(node).length === 0) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seafile/sdoc-editor",
3
- "version": "2.0.66",
3
+ "version": "2.0.68",
4
4
  "private": false,
5
5
  "description": "This is a sdoc editor",
6
6
  "main": "dist/index.js",
@@ -88,6 +88,7 @@
88
88
  "@svgr/webpack": "8.1.0",
89
89
  "babel-loader": "9.1.3",
90
90
  "babel-plugin-import": "^1.13.8",
91
+ "babel-plugin-module-resolver": "5.0.2",
91
92
  "babel-plugin-named-asset-import": "^0.3.4",
92
93
  "babel-plugin-transform-goober": "1.2.0",
93
94
  "babel-preset-react-app": "^10.0.1",