@seafile/sdoc-editor 1.0.206-test0.3.9 → 1.0.206-test0.4.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.
|
@@ -68,7 +68,6 @@ const InsertElementDialog = _ref => {
|
|
|
68
68
|
return;
|
|
69
69
|
}
|
|
70
70
|
_context.default.uploadLocalVideo(files).then(fileUrl => {
|
|
71
|
-
console.log(files, files[0]);
|
|
72
71
|
(0, _helpers2.insertVideo)(validEditor, files, fileUrl, validEditor.selection, insertPosition);
|
|
73
72
|
if (uploadLocalVideoInputRef.current) {
|
|
74
73
|
uploadLocalVideoInputRef.current.value = '';
|
|
@@ -43,15 +43,15 @@ const isInsertVideoMenuDisabled = (editor, readonly) => {
|
|
|
43
43
|
return false;
|
|
44
44
|
};
|
|
45
45
|
exports.isInsertVideoMenuDisabled = isInsertVideoMenuDisabled;
|
|
46
|
-
const generateVideoNode = (src,
|
|
46
|
+
const generateVideoNode = (src, videoInfo) => {
|
|
47
47
|
const element = (0, _core.generateEmptyElement)(_constants.VIDEO);
|
|
48
|
-
return {
|
|
48
|
+
return [{
|
|
49
49
|
...element,
|
|
50
50
|
data: {
|
|
51
51
|
src,
|
|
52
|
-
|
|
52
|
+
videoInfo
|
|
53
53
|
}
|
|
54
|
-
};
|
|
54
|
+
}];
|
|
55
55
|
};
|
|
56
56
|
exports.generateVideoNode = generateVideoNode;
|
|
57
57
|
const parseVideoLink = url => {
|
|
@@ -90,25 +90,26 @@ const parseVideoLink = url => {
|
|
|
90
90
|
};
|
|
91
91
|
exports.parseVideoLink = parseVideoLink;
|
|
92
92
|
const insertVideo = function (editor, videoFiles, srcList, selection) {
|
|
93
|
-
var _videoFiles$;
|
|
94
93
|
let position = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : _constants.INSERT_POSITION.CURRENT;
|
|
95
94
|
if (!srcList) return;
|
|
96
95
|
if (position !== _constants.INSERT_POSITION.AFTER) {
|
|
97
96
|
if (isInsertVideoMenuDisabled(editor)) return;
|
|
98
97
|
}
|
|
99
98
|
console.log(videoFiles[0]);
|
|
99
|
+
const videoInfo = {
|
|
100
|
+
name: videoFiles[0].name || null,
|
|
101
|
+
size: videoFiles[0].size || null,
|
|
102
|
+
isEmbeddableLink: videoFiles[0].isEmbeddableLink || false
|
|
103
|
+
};
|
|
104
|
+
console.log(videoInfo);
|
|
100
105
|
let videoNodes;
|
|
101
|
-
//
|
|
102
|
-
if (
|
|
106
|
+
// Return when embedding invalid youtube, tencent or bilibili video url
|
|
107
|
+
if (videoInfo.isEmbeddableLink) {
|
|
103
108
|
const parsedSrc = parseVideoLink(srcList[0]);
|
|
104
109
|
if (!parsedSrc) return;
|
|
105
|
-
videoNodes =
|
|
106
|
-
return generateVideoNode(src, videoFiles);
|
|
107
|
-
});
|
|
110
|
+
videoNodes = generateVideoNode(parsedSrc, videoInfo);
|
|
108
111
|
} else {
|
|
109
|
-
videoNodes = srcList
|
|
110
|
-
return generateVideoNode(src, videoFiles);
|
|
111
|
-
});
|
|
112
|
+
videoNodes = generateVideoNode(srcList[0], videoInfo);
|
|
112
113
|
}
|
|
113
114
|
const validSelection = selection || editor.selection;
|
|
114
115
|
let path = _slate.Editor.path(editor, validSelection);
|
|
@@ -12,7 +12,7 @@ var _reactI18next = require("react-i18next");
|
|
|
12
12
|
var _helpers = require("./helpers");
|
|
13
13
|
require("./index.css");
|
|
14
14
|
const Video = _ref => {
|
|
15
|
-
var _data$
|
|
15
|
+
var _data$videoInfo, _data$videoInfo2, _data$videoInfo3, _videoStates$element$;
|
|
16
16
|
let {
|
|
17
17
|
element,
|
|
18
18
|
editor
|
|
@@ -24,9 +24,9 @@ const Video = _ref => {
|
|
|
24
24
|
const [isLoaded, setIsLoaded] = (0, _react.useState)(false);
|
|
25
25
|
const [isSelected, setIsSelected] = (0, _react.useState)(false);
|
|
26
26
|
const [videoStates, setVideoStates] = (0, _react.useState)({});
|
|
27
|
-
const
|
|
28
|
-
const
|
|
29
|
-
const isEmbeddableLink =
|
|
27
|
+
const videoName = ((_data$videoInfo = data.videoInfo) === null || _data$videoInfo === void 0 ? void 0 : _data$videoInfo.name) || data.src || null;
|
|
28
|
+
const videoSize = ((_data$videoInfo2 = data.videoInfo) === null || _data$videoInfo2 === void 0 ? void 0 : _data$videoInfo2.size) || null;
|
|
29
|
+
const isEmbeddableLink = ((_data$videoInfo3 = data.videoInfo) === null || _data$videoInfo3 === void 0 ? void 0 : _data$videoInfo3.isEmbeddableLink) || false;
|
|
30
30
|
const handlePlay = () => {
|
|
31
31
|
setVideoStates(prev => ({
|
|
32
32
|
...prev,
|
|
@@ -76,9 +76,9 @@ const Video = _ref => {
|
|
|
76
76
|
alt: ""
|
|
77
77
|
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
78
78
|
className: "video-file-info"
|
|
79
|
-
}, /*#__PURE__*/_react.default.createElement("div", null,
|
|
79
|
+
}, /*#__PURE__*/_react.default.createElement("div", null, videoName), /*#__PURE__*/_react.default.createElement("div", {
|
|
80
80
|
className: "file-size"
|
|
81
|
-
}, /*#__PURE__*/_react.default.createElement("span", null, (0, _helpers.formatFileSize)(
|
|
81
|
+
}, /*#__PURE__*/_react.default.createElement("span", null, (0, _helpers.formatFileSize)(videoSize), " \u2014 "), /*#__PURE__*/_react.default.createElement("div", {
|
|
82
82
|
className: "loading-spinner"
|
|
83
83
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
84
84
|
className: "spinner"
|