@seafile/seafile-editor 3.0.5 → 3.0.7-alpha.1

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 (63) hide show
  1. package/dist/components/browser-tip/index.js +1 -1
  2. package/dist/components/longtext-modal.js +1 -1
  3. package/dist/constants/event-types.js +1 -0
  4. package/dist/containers/article-info/index.js +6 -7
  5. package/dist/containers/comment-panel/index.js +92 -0
  6. package/dist/containers/comment-panel/style.css +22 -0
  7. package/dist/containers/hotkeys-helper/index.js +1 -1
  8. package/dist/editors/inline-editor/index.js +1 -1
  9. package/dist/editors/simple-slate-editor/index.js +1 -1
  10. package/dist/editors/slate-editor/editor-help/index.js +35 -9
  11. package/dist/editors/slate-editor/index.js +2 -2
  12. package/dist/editors/slate-viewer/index.js +7 -7
  13. package/dist/extension/commons/insert-element-dialog/index.js +4 -4
  14. package/dist/extension/commons/menu/menu-drop-down.js +4 -4
  15. package/dist/extension/commons/menu-shortcut-indicator/index.js +1 -1
  16. package/dist/extension/commons/select/_option.js +2 -2
  17. package/dist/extension/commons/select/field-setting.js +6 -7
  18. package/dist/extension/commons/select/index.js +3 -3
  19. package/dist/extension/commons/select/menu/item.js +2 -2
  20. package/dist/extension/constants/element-types.js +6 -6
  21. package/dist/extension/constants/menus-config.js +21 -21
  22. package/dist/extension/core/queries/index.js +22 -23
  23. package/dist/extension/core/transforms/remove-node-children.js +4 -3
  24. package/dist/extension/core/transforms/replace-node-children.js +4 -3
  25. package/dist/extension/core/utils/index.js +4 -4
  26. package/dist/extension/highlight/set-node-decorations.js +4 -4
  27. package/dist/extension/plugins/clear-format/menu/index.js +6 -4
  28. package/dist/extension/plugins/code-block/plugin.js +7 -9
  29. package/dist/extension/plugins/code-block/render-elem/language-selector.js +1 -1
  30. package/dist/extension/plugins/column/helpers.js +2 -3
  31. package/dist/extension/plugins/column/render-elem.js +13 -17
  32. package/dist/extension/plugins/definition/render-elem/index.js +1 -1
  33. package/dist/extension/plugins/header/menu/index.js +2 -2
  34. package/dist/extension/plugins/header/render-elem.js +1 -1
  35. package/dist/extension/plugins/image/helper.js +11 -12
  36. package/dist/extension/plugins/image/render-element/index.js +5 -5
  37. package/dist/extension/plugins/link/helper.js +3 -3
  38. package/dist/extension/plugins/link/menu/index.js +7 -8
  39. package/dist/extension/plugins/link/menu/link-modal.js +8 -10
  40. package/dist/extension/plugins/link/render-elem/link-popover.js +1 -1
  41. package/dist/extension/plugins/link-reference/render-elem/index.js +2 -2
  42. package/dist/extension/plugins/list/plugin/on-tab-handle.js +3 -6
  43. package/dist/extension/plugins/list/transforms/insert-list-item.js +3 -4
  44. package/dist/extension/plugins/list/transforms/transforms-to-list.js +4 -3
  45. package/dist/extension/plugins/markdown/plugin.js +6 -12
  46. package/dist/extension/plugins/node-id/helpers.js +5 -6
  47. package/dist/extension/plugins/table/context-menu/index.js +1 -1
  48. package/dist/extension/plugins/table/helper.js +2 -3
  49. package/dist/extension/plugins/table/menu/table-operator.js +12 -18
  50. package/dist/extension/plugins/table/menu/table-size-selector.js +4 -4
  51. package/dist/extension/plugins/text-style/render-elem.js +6 -4
  52. package/dist/extension/render/render-element.js +10 -8
  53. package/dist/extension/toolbar/header-toolbar/insert-toolbar/index.js +1 -1
  54. package/dist/pages/email-editor-dialog/index.js +1 -1
  55. package/dist/pages/longtext-editor-dialog/index.js +1 -1
  56. package/dist/pages/simple-editor.js +17 -15
  57. package/dist/slate-convert/html-to-slate/constants.js +6 -6
  58. package/dist/slate-convert/html-to-slate/index.js +2 -2
  59. package/dist/slate-convert/md-to-slate/transform.js +28 -43
  60. package/dist/slate-convert/slate-to-md/transform.js +5 -5
  61. package/dist/utils/object-utils.js +3 -5
  62. package/dist/utils/replace-slate-nodes.js +5 -6
  63. package/package.json +4 -4
@@ -5,6 +5,7 @@ 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.transformDefinition = 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
9
  var _slugid = _interopRequireDefault(require("slugid"));
9
10
  var _core = require("../../extension/core");
10
11
  var _elementTypes = require("../../extension/constants/element-types");
@@ -42,21 +43,17 @@ const applyMarkForInlineItem = function (result, item) {
42
43
  return result;
43
44
  }
44
45
  if (type === _elementTypes.IMAGE) {
45
- const data = {
46
- src: item.url,
47
- ...(item.title && {
48
- title: item.title
49
- }),
50
- ...(item.alt && {
51
- alt: item.alt
52
- }),
53
- ...(item.width && {
54
- width: item.width
55
- }),
56
- ...(item.height && {
57
- height: item.height
58
- })
59
- };
46
+ const data = (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({
47
+ src: item.url
48
+ }, item.title && {
49
+ title: item.title
50
+ }), item.alt && {
51
+ alt: item.alt
52
+ }), item.width && {
53
+ width: item.width
54
+ }), item.height && {
55
+ height: item.height
56
+ });
60
57
  const image = {
61
58
  id: _slugid.default.nice(),
62
59
  data: data,
@@ -80,9 +77,7 @@ const applyMarkForInlineItem = function (result, item) {
80
77
  // https://symbl.cc/en/200B/
81
78
  const formatValue = value && value !== '​' ? value : '';
82
79
  textNode['text'] = formatValue;
83
- result.push({
84
- ...textNode
85
- });
80
+ result.push((0, _objectSpread2.default)({}, textNode));
86
81
 
87
82
  // reset testNode
88
83
  textNode = {};
@@ -91,9 +86,7 @@ const applyMarkForInlineItem = function (result, item) {
91
86
  if (type === 'inlineCode') {
92
87
  textNode['code'] = true;
93
88
  textNode['text'] = value || '';
94
- result.push({
95
- ...textNode
96
- });
89
+ result.push((0, _objectSpread2.default)({}, textNode));
97
90
 
98
91
  // reset testNode
99
92
  textNode = {};
@@ -109,17 +102,13 @@ const applyMarkForInlineItem = function (result, item) {
109
102
  id: textNode.id,
110
103
  text: ''
111
104
  }];
112
- result.push({
113
- ...textNode
114
- });
105
+ result.push((0, _objectSpread2.default)({}, textNode));
115
106
  return;
116
107
  }
117
108
  const attr_key = INLINE_KEY_MAP[type];
118
109
  if (!Array.isArray(children) || children.length === 0 || !attr_key) {
119
110
  textNode['text'] = value || '';
120
- result.push({
121
- ...textNode
122
- });
111
+ result.push((0, _objectSpread2.default)({}, textNode));
123
112
 
124
113
  // reset testNode
125
114
  textNode = {};
@@ -146,7 +135,7 @@ const transformHeader = node => {
146
135
  const {
147
136
  depth
148
137
  } = node;
149
- const type = `${_elementTypes.HEADER}${depth}`;
138
+ const type = "".concat(_elementTypes.HEADER).concat(depth);
150
139
  return {
151
140
  id: _slugid.default.nice(),
152
141
  type: type,
@@ -401,21 +390,17 @@ const transformHtml = node => {
401
390
  const title = img.getAttribute('title');
402
391
  const width = img.getAttribute('width');
403
392
  const height = img.getAttribute('height');
404
- const data = {
405
- src: src,
406
- ...(alt && {
407
- alt
408
- }),
409
- ...(title && {
410
- title
411
- }),
412
- ...(!isNaN(width) && width > 0 && {
413
- width
414
- }),
415
- ...(!isNaN(height) && height > 0 && {
416
- height
417
- })
418
- };
393
+ const data = (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({
394
+ src: src
395
+ }, alt && {
396
+ alt
397
+ }), title && {
398
+ title
399
+ }), !isNaN(width) && width > 0 && {
400
+ width
401
+ }), !isNaN(height) && height > 0 && {
402
+ height
403
+ });
419
404
  const image = {
420
405
  id: _slugid.default.nice(),
421
406
  data: data,
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.formatSlateToMd = void 0;
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
8
9
  var _slate = require("slate");
9
10
  var _isPunctuationMark = _interopRequireDefault(require("../../utils/is-punctuation-mark"));
10
11
  const formatInlineChildren = children => {
@@ -59,10 +60,9 @@ const transformTextNode = textNode => {
59
60
 
60
61
  // code = true, override text type
61
62
  if (textNode['code']) {
62
- mdNode = {
63
- ...mdNode,
63
+ mdNode = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, mdNode), {}, {
64
64
  type: 'inlineCode'
65
- };
65
+ });
66
66
  }
67
67
 
68
68
  // blob = true, add strong parent
@@ -112,7 +112,7 @@ const transformInlineChildren = (result, item) => {
112
112
  if (data.height || data.width) {
113
113
  image = {
114
114
  type: 'html',
115
- value: `<img src="${data.src}" alt="${data.alt}" title="${data.title}" width="${data.width}" height="${data.height}" />`
115
+ value: "<img src=\"".concat(data.src, "\" alt=\"").concat(data.alt, "\" title=\"").concat(data.title, "\" width=\"").concat(data.width, "\" height=\"").concat(data.height, "\" />")
116
116
  };
117
117
  }
118
118
  result.push(image);
@@ -133,7 +133,7 @@ const transformInlineChildren = (result, item) => {
133
133
  if (item.type && item.type === 'column') {
134
134
  const data = item.data;
135
135
  const newNode = {
136
- text: `{${data.name}}`
136
+ text: "{".concat(data.name, "}")
137
137
  };
138
138
  const column = transformTextNode(newNode);
139
139
  result.push(column);
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
8
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
9
10
  var _ObjectUtils;
10
11
  class ObjectUtils {
@@ -20,16 +21,13 @@ class ObjectUtils {
20
21
  }
21
22
  static isObjectChanged(source, comparison, notIncludeKeys) {
22
23
  if (!this.iterable(source)) {
23
- throw new Error(`source should be a Object or Array , but got ${this.getDataType(source)}`);
24
+ throw new Error("source should be a Object or Array , but got ".concat(this.getDataType(source)));
24
25
  }
25
26
  if (this.getDataType(source) !== this.getDataType(comparison)) {
26
27
  return true;
27
28
  }
28
29
  const sourceKeys = Object.keys(source);
29
- const comparisonKeys = Object.keys({
30
- ...source,
31
- ...comparison
32
- }).filter(key => !notIncludeKeys.includes(key));
30
+ const comparisonKeys = Object.keys((0, _objectSpread2.default)((0, _objectSpread2.default)({}, source), comparison)).filter(key => !notIncludeKeys.includes(key));
33
31
  if (sourceKeys.length !== comparisonKeys.length) {
34
32
  return true;
35
33
  }
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports.replaceColumnData = void 0;
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
7
9
  // root -> paragraph ->
8
10
  const replaceColumnData = (mdNodes, columns, getCellValue, updateImgUrl) => {
9
11
  for (let i = 0; i < mdNodes.length; i++) {
@@ -34,12 +36,9 @@ const replaceColumnData = (mdNodes, columns, getCellValue, updateImgUrl) => {
34
36
  };
35
37
  if (updateImgUrl && typeof updateImgUrl === 'function') {
36
38
  const src = updateImgUrl(data.src);
37
- const newData = {
38
- ...data,
39
- ...{
40
- src
41
- }
42
- };
39
+ const newData = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {
40
+ src
41
+ });
43
42
  node.data = newData;
44
43
  }
45
44
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seafile/seafile-editor",
3
- "version": "3.0.5",
3
+ "version": "3.0.7-alpha.1",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -30,7 +30,7 @@
30
30
  "@babel/plugin-transform-class-properties": "7.23.3",
31
31
  "@babel/plugin-transform-private-methods": "7.23.3",
32
32
  "@babel/runtime": "7.26.10",
33
- "axios": "^1.7.3",
33
+ "axios": "^1.13.2",
34
34
  "babel-jest": "29.7.0",
35
35
  "babel-loader": "9.1.3",
36
36
  "babel-plugin-import": "^1.13.6",
@@ -69,7 +69,7 @@
69
69
  "terser-webpack-plugin": "5.3.9",
70
70
  "url-loader": "4.1.1",
71
71
  "webpack": "5.98.0",
72
- "webpack-dev-server": "^5.2.0",
72
+ "webpack-dev-server": "5.2.2",
73
73
  "webpack-merge": "5.9.0"
74
74
  },
75
75
  "browserslist": {
@@ -85,7 +85,7 @@
85
85
  ]
86
86
  },
87
87
  "dependencies": {
88
- "@seafile/react-image-lightbox": "^5.0.2",
88
+ "@seafile/react-image-lightbox": "^5.0.4",
89
89
  "classnames": "2.3.2",
90
90
  "copy-to-clipboard": "3.3.1",
91
91
  "deep-copy": "1.4.2",