@seafile/seafile-editor 1.0.45 → 1.0.47

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.
@@ -28,8 +28,7 @@ const HeaderMenu = _ref => {
28
28
  t
29
29
  } = (0, _reactI18next.useTranslation)(_constants2.TRANSLATE_NAMESPACE);
30
30
  const currentHeaderType = (0, _helper.getHeaderType)(editor);
31
- // eslint-disable-next-line react-hooks/exhaustive-deps
32
- const isDisabled = (0, _react.useMemo)(() => (0, _helper.isMenuDisabled)(editor, readonly), [editor.selection, readonly]);
31
+ const isDisabled = (0, _helper.isMenuDisabled)(editor, readonly);
33
32
  const onHideHeaderMenu = (0, _react.useCallback)(e => {
34
33
  setIsShowHeaderPopover(false);
35
34
  unregisterEventHandler();
@@ -0,0 +1,13 @@
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 _plugin = _interopRequireDefault(require("./plugin"));
9
+ const HtmlPlugin = {
10
+ type: 'html',
11
+ editorPlugin: _plugin.default
12
+ };
13
+ var _default = exports.default = HtmlPlugin;
@@ -0,0 +1,50 @@
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 _slugid = _interopRequireDefault(require("slugid"));
9
+ var _slateConvert = require("../../../slate-convert");
10
+ var _core = require("../../core");
11
+ var _elementTypes = require("../../constants/element-types");
12
+ const withHtml = editor => {
13
+ const {
14
+ insertData
15
+ } = editor;
16
+ const newEditor = editor;
17
+ newEditor.insertData = data => {
18
+ if (!newEditor.insertFragmentData(data)) {
19
+ // Other document paste content into code block
20
+ if (!data.types.includes('text/code-block') && (0, _core.getSelectedNodeByType)(editor, _elementTypes.CODE_BLOCK)) {
21
+ const plaintext = data.getData('text/plain') || '';
22
+ if (plaintext) {
23
+ let fragmentData = [];
24
+ plaintext.split('\n').forEach(item => {
25
+ const codeLine = {
26
+ id: _slugid.default.nice(),
27
+ type: _elementTypes.CODE_LINE,
28
+ children: [{
29
+ text: item,
30
+ id: _slugid.default.nice()
31
+ }]
32
+ };
33
+ fragmentData.push(codeLine);
34
+ });
35
+ newEditor.insertFragment(fragmentData);
36
+ }
37
+ return;
38
+ }
39
+ const htmlContent = data.getData('text/html') || '';
40
+ if (htmlContent) {
41
+ const content = (0, _slateConvert.deserializeHtml)(htmlContent);
42
+ editor.insertFragment(content);
43
+ return;
44
+ }
45
+ insertData(data);
46
+ }
47
+ };
48
+ return newEditor;
49
+ };
50
+ var _default = exports.default = withHtml;
@@ -40,6 +40,12 @@ Object.defineProperty(exports, "HeaderPlugin", {
40
40
  return _header.default;
41
41
  }
42
42
  });
43
+ Object.defineProperty(exports, "HtmlPlugin", {
44
+ enumerable: true,
45
+ get: function () {
46
+ return _html.default;
47
+ }
48
+ });
43
49
  Object.defineProperty(exports, "ImagePlugin", {
44
50
  enumerable: true,
45
51
  get: function () {
@@ -103,7 +109,8 @@ var _table = _interopRequireDefault(require("./table"));
103
109
  var _formula = _interopRequireDefault(require("./formula"));
104
110
  var _column = _interopRequireDefault(require("./column"));
105
111
  var _markdown = _interopRequireDefault(require("./markdown"));
106
- const Plugins = [_paragraph.default, _textStyle.default, _header.default, _image.default, _link.default, _codeBlock.default, _checkList.default, _list.default, _table.default, _blockquote.default, _formula.default, _markdown.default, _column.default,
112
+ var _html = _interopRequireDefault(require("./html"));
113
+ const Plugins = [_paragraph.default, _textStyle.default, _header.default, _image.default, _link.default, _codeBlock.default, _checkList.default, _list.default, _table.default, _blockquote.default, _formula.default, _markdown.default, _html.default, _column.default,
107
114
  // put at the end
108
115
  _nodeId.default];
109
116
  var _default = exports.default = Plugins;
@@ -73,12 +73,12 @@ const withLink = editor => {
73
73
  const isDeletingLinkNode = (0, _helper.isLinkType)(editor);
74
74
  if (isDeletingLinkNode) {
75
75
  const linkNodeInfo = (0, _helper.getLinkInfo)(editor);
76
- const next = _slate.Editor.next(editor);
77
- const nextPath = _slate.Path.next(linkNodeInfo.path);
78
- const nextNode = _slate.Editor.node(editor, nextPath);
79
- (0, _focusEditor.focusEditor)(editor, next[1]);
80
- _slate.Transforms.select(editor, nextNode[1]);
81
76
  if (linkNodeInfo && linkNodeInfo.linkTitle.length === 1) {
77
+ const next = _slate.Editor.next(editor);
78
+ const nextPath = _slate.Path.next(linkNodeInfo.path);
79
+ const nextNode = _slate.Editor.node(editor, nextPath);
80
+ (0, _focusEditor.focusEditor)(editor, next[1]);
81
+ _slate.Transforms.select(editor, nextNode[1]);
82
82
  _slate.Transforms.delete(newEditor, {
83
83
  at: linkNodeInfo.path
84
84
  });
@@ -22,8 +22,6 @@ const ListMenu = _ref => {
22
22
  className
23
23
  } = _ref;
24
24
  const isActive = (0, _helpers.getActiveListType)(editor, type) === type;
25
- // eslint-disable-next-line react-hooks/exhaustive-deps
26
- const isDisabled = (0, _react.useMemo)(() => (0, _helpers.isMenuDisabled)(editor, readonly), [editor.selection, readonly]);
27
25
 
28
26
  // eslint-disable-next-line react-hooks/exhaustive-deps
29
27
  const menuConfig = (0, _react.useMemo)(() => _constants.MENUS_CONFIG_MAP[type], []);
@@ -36,7 +34,7 @@ const ListMenu = _ref => {
36
34
  return /*#__PURE__*/_react.default.createElement(_menuItem.default, Object.assign({
37
35
  isRichEditor: isRichEditor,
38
36
  isActive: isActive,
39
- disabled: isDisabled,
37
+ disabled: (0, _helpers.isMenuDisabled)(editor, readonly),
40
38
  className: className,
41
39
  onMouseDown: onMouseDown
42
40
  }, menuConfig));
@@ -16,7 +16,7 @@ const isDisabled = (editor, readonly) => {
16
16
  selection
17
17
  } = editor;
18
18
  if (readonly || !selection) return true;
19
- const disableTypes = [_elementTypes.TABLE, _elementTypes.TABLE_ROW, _elementTypes.TABLE_CELL, _elementTypes.FORMULA, _elementTypes.CODE_BLOCK, _elementTypes.COLUMN, _elementTypes.BLOCKQUOTE];
19
+ const disableTypes = [_elementTypes.TABLE, _elementTypes.TABLE_ROW, _elementTypes.TABLE_CELL, _elementTypes.FORMULA, _elementTypes.CODE_BLOCK, _elementTypes.COLUMN, _elementTypes.BLOCKQUOTE, _elementTypes.UNORDERED_LIST, _elementTypes.ORDERED_LIST, _elementTypes.LIST_ITEM];
20
20
  const [nodeEntry] = _slate.Editor.nodes(editor, {
21
21
  match: n => disableTypes.includes(n.type),
22
22
  mode: 'highest'
@@ -6,9 +6,9 @@
6
6
  position: absolute;
7
7
  z-index: 1;
8
8
  top: 30px;
9
- padding: 12px;
9
+ padding: 5px 12px;
10
10
  background-color: #fff;
11
-
11
+ border: 1px solid #0028641f;
12
12
  }
13
13
 
14
14
  .sf-table-size-selector-card .sf-table-grid-info {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seafile/seafile-editor",
3
- "version": "1.0.45",
3
+ "version": "1.0.47",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {