@seafile/sdoc-editor 0.1.31 → 0.1.33
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/basic-sdk/extension/plugins/image/dialogs/image-previewer.js +3 -1
- package/dist/basic-sdk/extension/plugins/image/helpers.js +8 -0
- package/dist/basic-sdk/extension/plugins/image/render-elem.js +3 -12
- package/dist/context.js +4 -1
- package/dist/pages/diff-viewer/diff-viewer.js +2 -0
- package/dist/pages/diff-viewer/index.js +6 -2
- package/dist/pages/simple-editor.js +10 -12
- package/dist/pages/simple-viewer.js +10 -12
- package/package.json +1 -1
|
@@ -5,6 +5,7 @@ import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
|
5
5
|
import _createSuper from "@babel/runtime/helpers/esm/createSuper";
|
|
6
6
|
import React from 'react';
|
|
7
7
|
import Lightbox from '@seafile/react-image-lightbox';
|
|
8
|
+
import { getImageURL } from '../helpers';
|
|
8
9
|
import '@seafile/react-image-lightbox/style.css';
|
|
9
10
|
var ImagePreviewer = /*#__PURE__*/function (_React$Component) {
|
|
10
11
|
_inherits(ImagePreviewer, _React$Component);
|
|
@@ -19,7 +20,8 @@ var ImagePreviewer = /*#__PURE__*/function (_React$Component) {
|
|
|
19
20
|
while (nodes && nodeIndex <= nodes.length - 1) {
|
|
20
21
|
var currentNode = nodes[nodeIndex];
|
|
21
22
|
if (currentNode.type === 'image') {
|
|
22
|
-
|
|
23
|
+
var url = getImageURL(currentNode.data.src);
|
|
24
|
+
url && list.push(url);
|
|
23
25
|
} else {
|
|
24
26
|
list.push.apply(list, _toConsumableArray(_this.getImageNodes(currentNode.children)));
|
|
25
27
|
}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
2
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
|
+
import urlJoin from 'url-join';
|
|
3
4
|
import { Editor, Range, Transforms } from '@seafile/slate';
|
|
4
5
|
import { BLOCKQUOTE, CODE_BLOCK, IMAGE, ORDERED_LIST, UNORDERED_LIST } from '../../constants';
|
|
5
6
|
import { generateEmptyElement, getNodeType } from '../../core';
|
|
7
|
+
import context from '../../../../context';
|
|
6
8
|
export var isInsertImageMenuDisabled = function isInsertImageMenuDisabled(editor) {
|
|
7
9
|
var selection = editor.selection;
|
|
8
10
|
if (selection === null) return true;
|
|
@@ -51,4 +53,10 @@ export var updateImage = function updateImage(editor, data) {
|
|
|
51
53
|
at: editor.selection,
|
|
52
54
|
voids: true
|
|
53
55
|
});
|
|
56
|
+
};
|
|
57
|
+
export var getImageURL = function getImageURL(url) {
|
|
58
|
+
if (url && url.startsWith('http')) return url;
|
|
59
|
+
var serviceUrl = context.getSetting('serviceUrl');
|
|
60
|
+
var assetsUrl = context.getSetting('assetsUrl');
|
|
61
|
+
return urlJoin(serviceUrl, assetsUrl, url);
|
|
54
62
|
};
|
|
@@ -7,10 +7,8 @@ import { useSelected } from '@seafile/slate-react';
|
|
|
7
7
|
import React from 'react';
|
|
8
8
|
import classNames from 'classnames';
|
|
9
9
|
import { withTranslation } from 'react-i18next';
|
|
10
|
-
import
|
|
11
|
-
import { updateImage } from './helpers';
|
|
10
|
+
import { getImageURL, updateImage } from './helpers';
|
|
12
11
|
import ImagePreviewer from './dialogs/image-previewer';
|
|
13
|
-
import context from '../../../../context';
|
|
14
12
|
var Image = /*#__PURE__*/function (_React$Component) {
|
|
15
13
|
_inherits(Image, _React$Component);
|
|
16
14
|
var _super = _createSuper(Image);
|
|
@@ -89,13 +87,6 @@ var Image = /*#__PURE__*/function (_React$Component) {
|
|
|
89
87
|
return _this;
|
|
90
88
|
}
|
|
91
89
|
_createClass(Image, [{
|
|
92
|
-
key: "getImageURL",
|
|
93
|
-
value: function getImageURL(url) {
|
|
94
|
-
var serviceUrl = context.getSetting('serviceUrl');
|
|
95
|
-
var assetsUrl = context.getSetting('assetsUrl');
|
|
96
|
-
return urlJoin(serviceUrl, assetsUrl, url);
|
|
97
|
-
}
|
|
98
|
-
}, {
|
|
99
90
|
key: "render",
|
|
100
91
|
value: function render() {
|
|
101
92
|
var _this$props2 = this.props,
|
|
@@ -116,7 +107,7 @@ var Image = /*#__PURE__*/function (_React$Component) {
|
|
|
116
107
|
}, attributes), /*#__PURE__*/React.createElement("img", {
|
|
117
108
|
className: imageClassName,
|
|
118
109
|
ref: this.setImageRef,
|
|
119
|
-
src:
|
|
110
|
+
src: getImageURL(data.src),
|
|
120
111
|
style: imageStyle,
|
|
121
112
|
draggable: false,
|
|
122
113
|
alt: ""
|
|
@@ -135,7 +126,7 @@ var Image = /*#__PURE__*/function (_React$Component) {
|
|
|
135
126
|
className: "image-size",
|
|
136
127
|
contentEditable: false
|
|
137
128
|
}, /*#__PURE__*/React.createElement("span", null, t('width'), ':', parseInt(this.state.width || this.image.clientWidth)), /*#__PURE__*/React.createElement("span", null, "\xA0\xA0"), /*#__PURE__*/React.createElement("span", null, t('height'), ':', this.image.clientHeight)), children), isShowImagePreview && /*#__PURE__*/React.createElement(ImagePreviewer, {
|
|
138
|
-
imageUrl: data.src,
|
|
129
|
+
imageUrl: getImageURL(data.src),
|
|
139
130
|
editor: this.props.editor,
|
|
140
131
|
toggleImagePreviewer: this.setFullScreen
|
|
141
132
|
}));
|
package/dist/context.js
CHANGED
|
@@ -29,7 +29,10 @@ var Context = /*#__PURE__*/function () {
|
|
|
29
29
|
var server = this.getSetting('serviceUrl');
|
|
30
30
|
var token = this.getSetting('accessToken');
|
|
31
31
|
this.api = new SeafileAPI(server, token);
|
|
32
|
-
|
|
32
|
+
var isOpenSocket = this.getSetting('isOpenSocket');
|
|
33
|
+
if (isOpenSocket) {
|
|
34
|
+
this.sdocServerApi = new SDocServerApi(this.settings);
|
|
35
|
+
}
|
|
33
36
|
}
|
|
34
37
|
}, {
|
|
35
38
|
key: "getSettings",
|
|
@@ -9,6 +9,7 @@ import editor, { renderLeaf, renderElement } from '../../basic-sdk/extension';
|
|
|
9
9
|
import withNodeId from '../../basic-sdk/node-id';
|
|
10
10
|
import { getDiff } from '../../basic-sdk/utils/diff';
|
|
11
11
|
import { DIFF_TYPE, ELEMENT_TYPE } from '../../basic-sdk/extension/constants';
|
|
12
|
+
import context from '../../context';
|
|
12
13
|
import '../../assets/css/diff-viewer.css';
|
|
13
14
|
var DiffViewer = /*#__PURE__*/function (_Component) {
|
|
14
15
|
_inherits(DiffViewer, _Component);
|
|
@@ -81,6 +82,7 @@ var DiffViewer = /*#__PURE__*/function (_Component) {
|
|
|
81
82
|
changes: []
|
|
82
83
|
};
|
|
83
84
|
_this.editor = withNodeId(editor);
|
|
85
|
+
context.initSettings();
|
|
84
86
|
return _this;
|
|
85
87
|
}
|
|
86
88
|
_createClass(DiffViewer, [{
|
|
@@ -5,12 +5,16 @@ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
|
|
|
5
5
|
import React, { Component } from 'react';
|
|
6
6
|
import HistoryVersionViewer from './history-version-viewer';
|
|
7
7
|
import DiffViewer from './diff-viewer';
|
|
8
|
+
import context from '../../context';
|
|
8
9
|
var Index = /*#__PURE__*/function (_Component) {
|
|
9
10
|
_inherits(Index, _Component);
|
|
10
11
|
var _super = _createSuper(Index);
|
|
11
|
-
function Index() {
|
|
12
|
+
function Index(props) {
|
|
13
|
+
var _this;
|
|
12
14
|
_classCallCheck(this, Index);
|
|
13
|
-
|
|
15
|
+
_this = _super.call(this, props);
|
|
16
|
+
context.initSettings();
|
|
17
|
+
return _this;
|
|
14
18
|
}
|
|
15
19
|
_createClass(Index, [{
|
|
16
20
|
key: "render",
|
|
@@ -58,13 +58,11 @@ var SimpleEditor = /*#__PURE__*/function (_React$Component) {
|
|
|
58
58
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
59
59
|
while (1) switch (_context.prev = _context.next) {
|
|
60
60
|
case 0:
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
_context.prev = 2;
|
|
65
|
-
_context.next = 5;
|
|
61
|
+
context.initApi();
|
|
62
|
+
_context.prev = 1;
|
|
63
|
+
_context.next = 4;
|
|
66
64
|
return context.getFileContent();
|
|
67
|
-
case
|
|
65
|
+
case 4:
|
|
68
66
|
contentRes = _context.sent;
|
|
69
67
|
result = contentRes.data || generateDefaultDocContent();
|
|
70
68
|
if (result && !result.children) {
|
|
@@ -77,11 +75,11 @@ var SimpleEditor = /*#__PURE__*/function (_React$Component) {
|
|
|
77
75
|
isContextInit: true,
|
|
78
76
|
document: result
|
|
79
77
|
});
|
|
80
|
-
_context.next =
|
|
78
|
+
_context.next = 14;
|
|
81
79
|
break;
|
|
82
|
-
case
|
|
83
|
-
_context.prev =
|
|
84
|
-
_context.t0 = _context["catch"](
|
|
80
|
+
case 10:
|
|
81
|
+
_context.prev = 10;
|
|
82
|
+
_context.t0 = _context["catch"](1);
|
|
85
83
|
// eslint-disable-next-line
|
|
86
84
|
console.log(_context.t0);
|
|
87
85
|
this.setState({
|
|
@@ -89,11 +87,11 @@ var SimpleEditor = /*#__PURE__*/function (_React$Component) {
|
|
|
89
87
|
errorMessage: 'load doc content error',
|
|
90
88
|
document: null
|
|
91
89
|
});
|
|
92
|
-
case
|
|
90
|
+
case 14:
|
|
93
91
|
case "end":
|
|
94
92
|
return _context.stop();
|
|
95
93
|
}
|
|
96
|
-
}, _callee, this, [[
|
|
94
|
+
}, _callee, this, [[1, 10]]);
|
|
97
95
|
}));
|
|
98
96
|
function componentDidMount() {
|
|
99
97
|
return _componentDidMount.apply(this, arguments);
|
|
@@ -37,13 +37,11 @@ var SimpleViewer = /*#__PURE__*/function (_React$Component) {
|
|
|
37
37
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
38
38
|
while (1) switch (_context.prev = _context.next) {
|
|
39
39
|
case 0:
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
_context.prev = 2;
|
|
44
|
-
_context.next = 5;
|
|
40
|
+
context.initApi();
|
|
41
|
+
_context.prev = 1;
|
|
42
|
+
_context.next = 4;
|
|
45
43
|
return context.getFileContent();
|
|
46
|
-
case
|
|
44
|
+
case 4:
|
|
47
45
|
contentRes = _context.sent;
|
|
48
46
|
result = contentRes.data || generateDefaultDocContent();
|
|
49
47
|
if (result && !result.children) {
|
|
@@ -56,11 +54,11 @@ var SimpleViewer = /*#__PURE__*/function (_React$Component) {
|
|
|
56
54
|
isContextInit: true,
|
|
57
55
|
document: result
|
|
58
56
|
});
|
|
59
|
-
_context.next =
|
|
57
|
+
_context.next = 14;
|
|
60
58
|
break;
|
|
61
|
-
case
|
|
62
|
-
_context.prev =
|
|
63
|
-
_context.t0 = _context["catch"](
|
|
59
|
+
case 10:
|
|
60
|
+
_context.prev = 10;
|
|
61
|
+
_context.t0 = _context["catch"](1);
|
|
64
62
|
// eslint-disable-next-line
|
|
65
63
|
console.log(_context.t0);
|
|
66
64
|
this.setState({
|
|
@@ -68,11 +66,11 @@ var SimpleViewer = /*#__PURE__*/function (_React$Component) {
|
|
|
68
66
|
errorMessage: 'load doc content error',
|
|
69
67
|
document: null
|
|
70
68
|
});
|
|
71
|
-
case
|
|
69
|
+
case 14:
|
|
72
70
|
case "end":
|
|
73
71
|
return _context.stop();
|
|
74
72
|
}
|
|
75
|
-
}, _callee, this, [[
|
|
73
|
+
}, _callee, this, [[1, 10]]);
|
|
76
74
|
}));
|
|
77
75
|
function componentDidMount() {
|
|
78
76
|
return _componentDidMount.apply(this, arguments);
|