@seafile/seafile-editor 2.0.33 → 2.0.34-beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/editors/inline-editor/index.js +3 -0
- package/dist/extension/constants/element-types.js +4 -2
- package/dist/extension/core/queries/index.js +17 -1
- package/dist/extension/plugins/definition/index.js +17 -0
- package/dist/extension/plugins/definition/render-elem/index.css +1 -0
- package/dist/extension/plugins/definition/render-elem/index.js +36 -0
- package/dist/extension/plugins/index.js +15 -1
- package/dist/extension/plugins/link-reference/index.js +17 -0
- package/dist/extension/plugins/link-reference/render-elem/index.css +1 -0
- package/dist/extension/plugins/link-reference/render-elem/index.js +34 -0
- package/dist/extension/plugins/text-style/render-elem.js +1 -0
- package/dist/extension/render/render-element.js +10 -0
- package/dist/pages/longtext-inline-editor/index.js +2 -0
- package/dist/pages/longtext-inline-editor/normal-editor.js +2 -0
- package/dist/pages/simple-editor.js +2 -0
- package/dist/slate-convert/md-to-slate/index.js +1 -0
- package/dist/slate-convert/md-to-slate/transform.js +33 -2
- package/package.json +1 -1
|
@@ -24,6 +24,7 @@ const isMacOS = (0, _common.isMac)();
|
|
|
24
24
|
const InlineEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
25
25
|
let {
|
|
26
26
|
enableEdit,
|
|
27
|
+
autoFocus,
|
|
27
28
|
value,
|
|
28
29
|
editorApi,
|
|
29
30
|
onSave,
|
|
@@ -101,6 +102,7 @@ const InlineEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
101
102
|
const timer = setTimeout(() => {
|
|
102
103
|
editor.forceNormalize = false;
|
|
103
104
|
if (!enableEdit) return;
|
|
105
|
+
if (!autoFocus) return;
|
|
104
106
|
focusNode(editor);
|
|
105
107
|
}, 300);
|
|
106
108
|
return () => {
|
|
@@ -114,6 +116,7 @@ const InlineEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
114
116
|
editor.hasMovedSelection = false;
|
|
115
117
|
return;
|
|
116
118
|
}
|
|
119
|
+
if (!autoFocus) return;
|
|
117
120
|
focusNode(editor, focusRangeRef.current);
|
|
118
121
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
119
122
|
}, [enableEdit]);
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.UNORDERED_LIST = exports.TABLE_ROW = exports.TABLE_CELL = exports.TABLE = exports.PARAGRAPH = exports.ORDERED_LIST = exports.LIST_ITEM = exports.LINK = exports.IMAGE = exports.HEADER6 = exports.HEADER5 = exports.HEADER4 = exports.HEADER3 = exports.HEADER2 = exports.HEADER1 = exports.HEADER = exports.FORMULA = exports.COLUMN = exports.CODE_LINE = exports.CODE_BLOCK = exports.CHECK_LIST_ITEM = exports.BLOCKQUOTE = void 0;
|
|
6
|
+
exports.UNORDERED_LIST = exports.TABLE_ROW = exports.TABLE_CELL = exports.TABLE = exports.PARAGRAPH = exports.ORDERED_LIST = exports.LIST_ITEM = exports.LINK_REFERENCE = exports.LINK = exports.IMAGE = exports.HEADER6 = exports.HEADER5 = exports.HEADER4 = exports.HEADER3 = exports.HEADER2 = exports.HEADER1 = exports.HEADER = exports.FORMULA = exports.DEFINITION = exports.COLUMN = 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,4 +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 COLUMN = exports.COLUMN = 'column';
|
|
29
|
+
const COLUMN = exports.COLUMN = 'column';
|
|
30
|
+
const LINK_REFERENCE = exports.LINK_REFERENCE = 'link-reference';
|
|
31
|
+
const DEFINITION = exports.DEFINITION = 'definition';
|
|
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.isTextNode = exports.isStartPoint = exports.isSelectionAtBlockStart = exports.isSelectionAtBlockEnd = exports.isRangeAcrossBlocks = exports.isLastNode = exports.isLastChild = exports.isFirstNode = exports.isFirstChild = exports.isEndPoint = exports.isBlockTextEmptyAfterSelection = exports.isBlockAboveEmpty = exports.isAncestorEmpty = exports.getSelectedNodeEntryByTypes = exports.getSelectedNodeEntryByType = exports.getSelectedNodeByTypes = exports.getSelectedNodeByType = exports.getSelectedElems = exports.getQueryOptions = exports.getPreviousPath = exports.getPrevNode = exports.getParentNode = exports.getNodes = exports.getNodeType = exports.getNodePathById = exports.getNodeEntries = exports.getNode = exports.getNextSiblingNodes = exports.getNextNode = exports.getLastChildPath = exports.getLastChild = exports.getInlineNodes = exports.getEditorString = exports.getDeepInlineChildren = exports.getCommonNode = exports.getChildren = exports.getAboveNode = exports.getAboveBlockNode = exports.findPath = exports.findNode = exports.findDescendant = void 0;
|
|
7
|
+
exports.isTextNode = exports.isStartPoint = exports.isSelectionAtBlockStart = exports.isSelectionAtBlockEnd = exports.isRangeAcrossBlocks = exports.isLastNode = exports.isLastChild = exports.isFirstNode = exports.isFirstChild = exports.isEndPoint = exports.isBlockTextEmptyAfterSelection = exports.isBlockAboveEmpty = exports.isAncestorEmpty = exports.getSelectedNodeEntryByTypes = exports.getSelectedNodeEntryByType = exports.getSelectedNodeByTypes = exports.getSelectedNodeByType = exports.getSelectedElems = exports.getQueryOptions = exports.getPreviousPath = exports.getPrevNode = exports.getParentNode = exports.getNodesByType = exports.getNodes = exports.getNodeType = exports.getNodePathById = exports.getNodeEntries = exports.getNode = exports.getNextSiblingNodes = exports.getNextNode = exports.getLastChildPath = exports.getLastChild = exports.getInlineNodes = exports.getEditorString = exports.getDeepInlineChildren = exports.getCommonNode = exports.getChildren = exports.getAboveNode = exports.getAboveBlockNode = exports.findPath = exports.findNode = exports.findDescendant = void 0;
|
|
8
8
|
var _slate = require("slate");
|
|
9
9
|
var _slateReact = require("slate-react");
|
|
10
10
|
var _slugid = _interopRequireDefault(require("slugid"));
|
|
@@ -46,6 +46,22 @@ const getNode = (editor, path) => {
|
|
|
46
46
|
return node;
|
|
47
47
|
};
|
|
48
48
|
exports.getNode = getNode;
|
|
49
|
+
const getNodesByType = function () {
|
|
50
|
+
let target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
51
|
+
let type = arguments.length > 1 ? arguments[1] : undefined;
|
|
52
|
+
let nodes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
53
|
+
Array.isArray(target) && target.forEach(n => {
|
|
54
|
+
if (n.type === type) {
|
|
55
|
+
nodes.push(n);
|
|
56
|
+
} else {
|
|
57
|
+
if (Array.isArray(n.children) && n.children.length > 0) {
|
|
58
|
+
getNodesByType(n, type, nodes);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
return nodes;
|
|
63
|
+
};
|
|
64
|
+
exports.getNodesByType = getNodesByType;
|
|
49
65
|
const getNodeType = node => {
|
|
50
66
|
return _slate.Element.isElement(node) ? node.type : '';
|
|
51
67
|
};
|
|
@@ -0,0 +1,17 @@
|
|
|
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 _elementTypes = require("../../constants/element-types");
|
|
9
|
+
var _renderElem = _interopRequireDefault(require("./render-elem"));
|
|
10
|
+
const DefinitionPlugin = {
|
|
11
|
+
type: _elementTypes.DEFINITION,
|
|
12
|
+
nodeType: 'element',
|
|
13
|
+
// editorMenus: [],
|
|
14
|
+
// editorPlugin: withLink,
|
|
15
|
+
renderElements: [_renderElem.default]
|
|
16
|
+
};
|
|
17
|
+
var _default = exports.default = DefinitionPlugin;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,36 @@
|
|
|
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 _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
+
var _slateReact = require("slate-react");
|
|
12
|
+
require("./index.css");
|
|
13
|
+
/* eslint-disable react-hooks/rules-of-hooks */
|
|
14
|
+
|
|
15
|
+
const renderDefinition = (_ref, editor) => {
|
|
16
|
+
let {
|
|
17
|
+
attributes,
|
|
18
|
+
children,
|
|
19
|
+
element
|
|
20
|
+
} = _ref;
|
|
21
|
+
const [isShowPopover, setShowPopover] = (0, _react.useState)(false);
|
|
22
|
+
const onHrefClick = (0, _react.useCallback)(event => {
|
|
23
|
+
event.preventDefault();
|
|
24
|
+
setShowPopover(true);
|
|
25
|
+
}, []);
|
|
26
|
+
console.log(element);
|
|
27
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("span", Object.assign({
|
|
28
|
+
"data-url": element.url,
|
|
29
|
+
"data-id": element.id,
|
|
30
|
+
className: "sf-virtual-definition"
|
|
31
|
+
}, attributes), /*#__PURE__*/_react.default.createElement("span", null, element.identifier + '. '), /*#__PURE__*/_react.default.createElement("a", {
|
|
32
|
+
href: element.url,
|
|
33
|
+
onClick: onHrefClick
|
|
34
|
+
}, children)));
|
|
35
|
+
};
|
|
36
|
+
var _default = exports.default = renderDefinition;
|
|
@@ -28,6 +28,12 @@ Object.defineProperty(exports, "ColumnPlugin", {
|
|
|
28
28
|
return _column.default;
|
|
29
29
|
}
|
|
30
30
|
});
|
|
31
|
+
Object.defineProperty(exports, "DefinitionPlugin", {
|
|
32
|
+
enumerable: true,
|
|
33
|
+
get: function () {
|
|
34
|
+
return _definition.default;
|
|
35
|
+
}
|
|
36
|
+
});
|
|
31
37
|
Object.defineProperty(exports, "FormulaPlugin", {
|
|
32
38
|
enumerable: true,
|
|
33
39
|
get: function () {
|
|
@@ -58,6 +64,12 @@ Object.defineProperty(exports, "LinkPlugin", {
|
|
|
58
64
|
return _link.default;
|
|
59
65
|
}
|
|
60
66
|
});
|
|
67
|
+
Object.defineProperty(exports, "LinkReferencePlugin", {
|
|
68
|
+
enumerable: true,
|
|
69
|
+
get: function () {
|
|
70
|
+
return _linkReference.default;
|
|
71
|
+
}
|
|
72
|
+
});
|
|
61
73
|
Object.defineProperty(exports, "ListPlugin", {
|
|
62
74
|
enumerable: true,
|
|
63
75
|
get: function () {
|
|
@@ -110,7 +122,9 @@ var _formula = _interopRequireDefault(require("./formula"));
|
|
|
110
122
|
var _column = _interopRequireDefault(require("./column"));
|
|
111
123
|
var _markdown = _interopRequireDefault(require("./markdown"));
|
|
112
124
|
var _html = _interopRequireDefault(require("./html"));
|
|
125
|
+
var _linkReference = _interopRequireDefault(require("./link-reference"));
|
|
126
|
+
var _definition = _interopRequireDefault(require("./definition"));
|
|
113
127
|
const Plugins = [_paragraph.default, _textStyle.default, _header.default, _image.default, _checkList.default, _list.default, _codeBlock.default, _table.default, _blockquote.default, _link.default, _formula.default, _markdown.default, _html.default, _column.default,
|
|
114
128
|
// put at the end
|
|
115
|
-
_nodeId.default];
|
|
129
|
+
_nodeId.default, _linkReference.default, _definition.default];
|
|
116
130
|
var _default = exports.default = Plugins;
|
|
@@ -0,0 +1,17 @@
|
|
|
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 _elementTypes = require("../../constants/element-types");
|
|
9
|
+
var _renderElem = _interopRequireDefault(require("./render-elem"));
|
|
10
|
+
const LinkReferencePlugin = {
|
|
11
|
+
type: _elementTypes.LINK_REFERENCE,
|
|
12
|
+
nodeType: 'element',
|
|
13
|
+
// editorMenus: [],
|
|
14
|
+
// editorPlugin: withLink,
|
|
15
|
+
renderElements: [_renderElem.default]
|
|
16
|
+
};
|
|
17
|
+
var _default = exports.default = LinkReferencePlugin;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _core = require("../../../core");
|
|
10
|
+
var _elementTypes = require("../../../constants/element-types");
|
|
11
|
+
require("./index.css");
|
|
12
|
+
/* eslint-disable react-hooks/rules-of-hooks */
|
|
13
|
+
|
|
14
|
+
const renderLinkReference = (_ref, editor) => {
|
|
15
|
+
let {
|
|
16
|
+
attributes,
|
|
17
|
+
children,
|
|
18
|
+
element
|
|
19
|
+
} = _ref;
|
|
20
|
+
const onClick = (0, _react.useCallback)(() => {
|
|
21
|
+
const doms = (0, _core.getNodesByType)(editor.children, _elementTypes.DEFINITION);
|
|
22
|
+
const dom = doms.find(d => d.identifier === element.identifier);
|
|
23
|
+
if (!dom) return;
|
|
24
|
+
console.log(dom);
|
|
25
|
+
}, [element, editor]);
|
|
26
|
+
return /*#__PURE__*/_react.default.createElement("sup", Object.assign({
|
|
27
|
+
onClick: onClick,
|
|
28
|
+
className: "sf-virtual-link-reference",
|
|
29
|
+
"data-id": element.id
|
|
30
|
+
}, attributes, {
|
|
31
|
+
title: element.label
|
|
32
|
+
}), `[${element.identifier}]`);
|
|
33
|
+
};
|
|
34
|
+
var _default = exports.default = renderLinkReference;
|
|
@@ -17,6 +17,7 @@ const renderText = (props, editor) => {
|
|
|
17
17
|
text,
|
|
18
18
|
...rest
|
|
19
19
|
} = leaf;
|
|
20
|
+
console.log(leaf);
|
|
20
21
|
let markedChildren = /*#__PURE__*/_react.default.cloneElement(children);
|
|
21
22
|
if (leaf[_constants.TEXT_STYLE_MAP.BOLD]) {
|
|
22
23
|
markedChildren = /*#__PURE__*/_react.default.createElement("strong", null, markedChildren);
|
|
@@ -41,6 +41,16 @@ const SlateElement = props => {
|
|
|
41
41
|
const [renderLink] = _plugins.LinkPlugin.renderElements;
|
|
42
42
|
return renderLink(props, editor);
|
|
43
43
|
}
|
|
44
|
+
case ElementType.LINK_REFERENCE:
|
|
45
|
+
{
|
|
46
|
+
const [renderLinkReferencePlugin] = _plugins.LinkReferencePlugin.renderElements;
|
|
47
|
+
return renderLinkReferencePlugin(props, editor);
|
|
48
|
+
}
|
|
49
|
+
case ElementType.DEFINITION:
|
|
50
|
+
{
|
|
51
|
+
const [renderDefinition] = _plugins.DefinitionPlugin.renderElements;
|
|
52
|
+
return renderDefinition(props, editor);
|
|
53
|
+
}
|
|
44
54
|
case ElementType.CODE_BLOCK:
|
|
45
55
|
{
|
|
46
56
|
const [renderCodeBlock] = _plugins.CodeBlockPlugin.renderElements;
|
|
@@ -17,6 +17,7 @@ require("./index.css");
|
|
|
17
17
|
const LongTextInlineEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
18
18
|
let {
|
|
19
19
|
isAlwaysEnableEdit = false,
|
|
20
|
+
autoFocus = true,
|
|
20
21
|
autoSave,
|
|
21
22
|
isCheckBrowser,
|
|
22
23
|
saveDelay,
|
|
@@ -106,6 +107,7 @@ const LongTextInlineEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) =>
|
|
|
106
107
|
isCheckBrowser: isCheckBrowser,
|
|
107
108
|
isImageUploadOnly: isImageUploadOnly,
|
|
108
109
|
isSupportMultipleFiles: isSupportMultipleFiles,
|
|
110
|
+
autoFocus: autoFocus,
|
|
109
111
|
editorApi: editorApi,
|
|
110
112
|
onSaveEditorValue: onSaveEditorValue,
|
|
111
113
|
onEditorValueChanged: onEditorValueChanged
|
|
@@ -25,6 +25,7 @@ const NormalEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
25
25
|
isCheckBrowser = false,
|
|
26
26
|
isImageUploadOnly = true,
|
|
27
27
|
isSupportMultipleFiles = false,
|
|
28
|
+
autoFocus,
|
|
28
29
|
editorApi,
|
|
29
30
|
onSaveEditorValue,
|
|
30
31
|
onEditorValueChanged
|
|
@@ -121,6 +122,7 @@ const NormalEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
121
122
|
ref: editorRef,
|
|
122
123
|
enableEdit: enableEdit,
|
|
123
124
|
isInline: true,
|
|
125
|
+
autoFocus: autoFocus,
|
|
124
126
|
isImageUploadOnly: isImageUploadOnly,
|
|
125
127
|
isSupportMultipleFiles: isSupportMultipleFiles,
|
|
126
128
|
value: valueRef.current.text,
|
|
@@ -16,6 +16,7 @@ const SimpleEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
16
16
|
let {
|
|
17
17
|
isInline,
|
|
18
18
|
isFetching,
|
|
19
|
+
autoFocus,
|
|
19
20
|
value,
|
|
20
21
|
focusEnd = false,
|
|
21
22
|
editorApi,
|
|
@@ -59,6 +60,7 @@ const SimpleEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
59
60
|
isSupportFormula: !!mathJaxSource,
|
|
60
61
|
value: richValue,
|
|
61
62
|
focusEnd,
|
|
63
|
+
autoFocus,
|
|
62
64
|
editorApi: editorApi,
|
|
63
65
|
onSave: propsOnSave,
|
|
64
66
|
onContentChanged: onContentChanged,
|
|
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.transformUnorderedList = exports.transformTableRow = exports.transformTableCell = exports.transformTable = exports.transformParagraph = exports.transformOrderedList = exports.transformMath = exports.transformListItem = exports.transformListContent = exports.transformList = exports.transformHtml = exports.transformHr = exports.transformHeader = exports.transformCodeLine = exports.transformCodeBlock = exports.transformCheckListItem = exports.transformCheckList = exports.transformBlockquote = exports.transformBlockHtml = exports.formatMdToSlate = void 0;
|
|
7
|
+
exports.transformUnorderedList = exports.transformTableRow = exports.transformTableCell = exports.transformTable = exports.transformParagraph = exports.transformOrderedList = exports.transformMath = exports.transformListItem = exports.transformListContent = exports.transformList = exports.transformHtml = exports.transformHr = exports.transformHeader = exports.transformDefinition = exports.transformCodeLine = exports.transformCodeBlock = exports.transformCheckListItem = exports.transformCheckList = exports.transformBlockquote = exports.transformBlockHtml = exports.formatMdToSlate = void 0;
|
|
8
8
|
var _slugid = _interopRequireDefault(require("slugid"));
|
|
9
9
|
var _core = require("../../extension/core");
|
|
10
10
|
var _elementTypes = require("../../extension/constants/element-types");
|
|
@@ -99,6 +99,22 @@ const applyMarkForInlineItem = function (result, item) {
|
|
|
99
99
|
textNode = {};
|
|
100
100
|
return;
|
|
101
101
|
}
|
|
102
|
+
if (type === 'linkReference') {
|
|
103
|
+
var _item$children$;
|
|
104
|
+
console.log('linkReference: ', item);
|
|
105
|
+
textNode['type'] = _elementTypes.LINK_REFERENCE;
|
|
106
|
+
textNode['identifier'] = item.identifier;
|
|
107
|
+
textNode['referenceType'] = item.referenceType;
|
|
108
|
+
textNode['label'] = (_item$children$ = item.children[0]) === null || _item$children$ === void 0 ? void 0 : _item$children$.value;
|
|
109
|
+
textNode['children'] = [{
|
|
110
|
+
id: textNode.id,
|
|
111
|
+
text: ''
|
|
112
|
+
}];
|
|
113
|
+
result.push({
|
|
114
|
+
...textNode
|
|
115
|
+
});
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
102
118
|
const attr_key = INLINE_KEY_MAP[type];
|
|
103
119
|
if (!Array.isArray(children) || children.length === 0 || !attr_key) {
|
|
104
120
|
textNode['text'] = value || '';
|
|
@@ -351,6 +367,20 @@ const transformCodeBlock = node => {
|
|
|
351
367
|
};
|
|
352
368
|
};
|
|
353
369
|
exports.transformCodeBlock = transformCodeBlock;
|
|
370
|
+
const transformDefinition = node => {
|
|
371
|
+
return {
|
|
372
|
+
id: _slugid.default.nice(),
|
|
373
|
+
type: _elementTypes.DEFINITION,
|
|
374
|
+
identifier: node.identifier,
|
|
375
|
+
url: node === null || node === void 0 ? void 0 : node.url,
|
|
376
|
+
title: node === null || node === void 0 ? void 0 : node.title,
|
|
377
|
+
children: [{
|
|
378
|
+
id: _slugid.default.nice(),
|
|
379
|
+
text: node === null || node === void 0 ? void 0 : node.title
|
|
380
|
+
}]
|
|
381
|
+
};
|
|
382
|
+
};
|
|
383
|
+
exports.transformDefinition = transformDefinition;
|
|
354
384
|
const transformHr = node => {
|
|
355
385
|
return {
|
|
356
386
|
id: _slugid.default.nice(),
|
|
@@ -430,7 +460,8 @@ const elementHandlers = {
|
|
|
430
460
|
'code': transformCodeBlock,
|
|
431
461
|
'thematicBreak': transformHr,
|
|
432
462
|
'math': transformMath,
|
|
433
|
-
'html': transformBlockHtml
|
|
463
|
+
'html': transformBlockHtml,
|
|
464
|
+
'definition': transformDefinition
|
|
434
465
|
};
|
|
435
466
|
const formatMdToSlate = children => {
|
|
436
467
|
const validChildren = children.filter(child => elementHandlers[child.type]);
|