@seafile/sdoc-editor 3.0.237 → 3.0.239

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.
@@ -30,6 +30,10 @@
30
30
  text-decoration: none;
31
31
  }
32
32
 
33
+ .sdoc-code-block-hover-menu-container .hover-menu-container .op-item.active .sdoc-auto-linefeed {
34
+ color: #ff8000;
35
+ }
36
+
33
37
  .sdoc-code-block-hover-menu-container .hover-menu-container .op-item {
34
38
  position: relative;
35
39
  height: 100%;
@@ -14,6 +14,7 @@ var Placeholder = function Placeholder(props) {
14
14
  var _useTranslation = (0, _reactI18next.useTranslation)('sdoc-editor'),
15
15
  t = _useTranslation.t;
16
16
  return /*#__PURE__*/_react["default"].createElement("span", {
17
+ className: "d-print-none",
17
18
  contentEditable: "false",
18
19
  suppressContentEditableWarning: true,
19
20
  style: {
@@ -47,7 +47,7 @@ var AddLinkDialog = function AddLinkDialog(_ref) {
47
47
  linked_id = _ref2.linked_id,
48
48
  linked_wiki_page_id = _ref2.linked_wiki_page_id;
49
49
  var oldURL = (0, _helpers.getElementHref)(element);
50
- var oldTitle = (element === null || element === void 0 ? void 0 : element.children[0].text) || linkTitle || '';
50
+ var oldTitle = element && _slate.Node.string(element) || linkTitle || '';
51
51
  var initTitle = (0, _react.useMemo)(function () {
52
52
  return oldTitle ? oldTitle : (0, _core.getEditorString)(editor, editor.selection);
53
53
  }, [editor, oldTitle]);
@@ -160,7 +160,6 @@ var Link = /*#__PURE__*/function (_React$Component) {
160
160
  }, {
161
161
  key: "render",
162
162
  value: function render() {
163
- var _element$children$2;
164
163
  var _this$props2 = this.props,
165
164
  attributes = _this$props2.attributes,
166
165
  children = _this$props2.children,
@@ -171,13 +170,13 @@ var Link = /*#__PURE__*/function (_React$Component) {
171
170
  isShowLinkMenu = _this$state.isShowLinkMenu,
172
171
  menuPosition = _this$state.menuPosition;
173
172
  var className = isShowLinkMenu ? 'seafile-ed-hovermenu-mouseclick' : null;
173
+ var linkText = _slate.Node.string(element);
174
174
  if (readonly) {
175
- var _element$children$;
176
175
  return /*#__PURE__*/_react["default"].createElement("span", Object.assign({
177
176
  className: (0, _classnames["default"])(className, 'virtual-link')
178
177
  }, attributes), /*#__PURE__*/_react["default"].createElement("a", {
179
178
  href: (0, _helpers.getElementHref)(element),
180
- title: (_element$children$ = element.children[0]) === null || _element$children$ === void 0 ? void 0 : _element$children$.text,
179
+ title: linkText,
181
180
  onClick: this.onOpenLink,
182
181
  target: "_blank",
183
182
  rel: "noreferrer"
@@ -190,7 +189,7 @@ var Link = /*#__PURE__*/function (_React$Component) {
190
189
  }), /*#__PURE__*/_react["default"].createElement("span", {
191
190
  ref: this.setRef,
192
191
  className: "virtual-link",
193
- title: (_element$children$2 = element.children[0]) === null || _element$children$2 === void 0 ? void 0 : _element$children$2.text
192
+ title: linkText
194
193
  }, /*#__PURE__*/_react["default"].createElement(_InlineBugFixWrapper["default"], null), children, /*#__PURE__*/_react["default"].createElement(_InlineBugFixWrapper["default"], null))), isShowLinkMenu && (this.props.readonly || _slate.Range.isCollapsed(editor.selection)) && /*#__PURE__*/_react["default"].createElement(_hover["default"], {
195
194
  editor: editor,
196
195
  menuPosition: menuPosition,
@@ -5,7 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
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;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
8
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/toConsumableArray"));
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
10
+ var _objectSpread3 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
9
11
  var _slugid = _interopRequireDefault(require("slugid"));
10
12
  var _elementType = require("../../extension/constants/element-type");
11
13
  var _core = require("../../extension/core");
@@ -15,6 +17,27 @@ var INLINE_KEY_MAP = {
15
17
  strong: 'bold',
16
18
  emphasis: 'italic'
17
19
  };
20
+ var _transformLinkTextNodes = function transformLinkTextNodes(nodes) {
21
+ var marks = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
22
+ if (!Array.isArray(nodes)) return null;
23
+ var textNodes = [];
24
+ for (var i = 0; i < nodes.length; i++) {
25
+ var node = nodes[i];
26
+ if (node.type === 'text') {
27
+ textNodes.push((0, _objectSpread3["default"])({
28
+ id: _slugid["default"].nice(),
29
+ text: node.value || ''
30
+ }, marks));
31
+ continue;
32
+ }
33
+ var mark = INLINE_KEY_MAP[node.type];
34
+ if (!mark) return null;
35
+ var children = _transformLinkTextNodes(node.children, (0, _objectSpread3["default"])((0, _objectSpread3["default"])({}, marks), {}, (0, _defineProperty2["default"])({}, mark, true)));
36
+ if (!children) return null;
37
+ textNodes.push.apply(textNodes, (0, _toConsumableArray2["default"])(children));
38
+ }
39
+ return textNodes;
40
+ };
18
41
 
19
42
  // <strong><em>aa<em>bb<em></strong>
20
43
  var _applyMarkForInlineItem = function applyMarkForInlineItem(result, item) {
@@ -33,7 +56,7 @@ var _applyMarkForInlineItem = function applyMarkForInlineItem(result, item) {
33
56
  var image = {
34
57
  id: _slugid["default"].nice(),
35
58
  type: _elementType.IMAGE,
36
- data: (0, _objectSpread2["default"])((0, _objectSpread2["default"])((0, _objectSpread2["default"])({
59
+ data: (0, _objectSpread3["default"])((0, _objectSpread3["default"])((0, _objectSpread3["default"])({
37
60
  src: child.url
38
61
  }, child.title && {
39
62
  title: child.title
@@ -63,7 +86,8 @@ var _applyMarkForInlineItem = function applyMarkForInlineItem(result, item) {
63
86
  result.push(mention);
64
87
  return result;
65
88
  }
66
- var linkChildren = [{
89
+ var textNodes = _transformLinkTextNodes(children);
90
+ var linkChildren = textNodes !== null && textNodes !== void 0 && textNodes.length ? textNodes : [{
67
91
  id: _slugid["default"].nice(),
68
92
  text: child.value || ''
69
93
  }];
@@ -78,7 +102,7 @@ var _applyMarkForInlineItem = function applyMarkForInlineItem(result, item) {
78
102
  return result;
79
103
  }
80
104
  if (type === _elementType.IMAGE) {
81
- var data = (0, _objectSpread2["default"])((0, _objectSpread2["default"])((0, _objectSpread2["default"])((0, _objectSpread2["default"])({
105
+ var data = (0, _objectSpread3["default"])((0, _objectSpread3["default"])((0, _objectSpread3["default"])((0, _objectSpread3["default"])({
82
106
  src: item.url
83
107
  }, item.title && {
84
108
  title: item.title
@@ -335,7 +359,7 @@ var transformHtml = exports.transformHtml = function transformHtml(node) {
335
359
  var title = img.getAttribute('title');
336
360
  var width = img.getAttribute('width');
337
361
  var height = img.getAttribute('height');
338
- var data = (0, _objectSpread2["default"])((0, _objectSpread2["default"])((0, _objectSpread2["default"])((0, _objectSpread2["default"])({
362
+ var data = (0, _objectSpread3["default"])((0, _objectSpread3["default"])((0, _objectSpread3["default"])((0, _objectSpread3["default"])({
339
363
  src: src
340
364
  }, alt && {
341
365
  alt: alt
@@ -100,9 +100,9 @@ var transformInlineChildren = function transformInlineChildren(result, item) {
100
100
  if (item.type && item.type === 'link') {
101
101
  var link = {
102
102
  type: 'link',
103
- url: item.href,
103
+ url: item.href || item.url,
104
104
  title: item.title || null,
105
- children: [transformTextNode(item.children[0])]
105
+ children: item.children.map(transformTextNode)
106
106
  };
107
107
  result.push(link);
108
108
  return result;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seafile/sdoc-editor",
3
- "version": "3.0.237",
3
+ "version": "3.0.239",
4
4
  "main": "dist/index.js",
5
5
  "scripts": {
6
6
  "test": "jest",
@@ -71,5 +71,5 @@
71
71
  "publishConfig": {
72
72
  "access": "public"
73
73
  },
74
- "gitHead": "7bb584e44dc55525a20509bb1693217e78bebccc"
74
+ "gitHead": "f57f6cb18f7799b387af204086c1c09f9ac01931"
75
75
  }