@seafile/comment-editor 0.0.1-alpha.6 → 0.0.1-alpha.61
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/_i18n/index.js +37 -0
- package/dist/basic-sdk/context.js +8 -21
- package/dist/basic-sdk/editor/comment-editor.js +19 -64
- package/dist/basic-sdk/extension/commons/color-menu/color-item.js +4 -2
- package/dist/basic-sdk/extension/commons/color-menu/index.js +4 -2
- package/dist/basic-sdk/extension/commons/insert-element-dialog/index.js +54 -96
- package/dist/basic-sdk/extension/commons/select/field-setting.js +3 -2
- package/dist/basic-sdk/extension/commons/select-file-dialog/local-files/index.js +4 -2
- package/dist/basic-sdk/extension/plugins/code-block/hover-menu/index.js +5 -3
- package/dist/basic-sdk/extension/plugins/file-link/hover-menu/index.js +5 -3
- package/dist/basic-sdk/extension/plugins/header/menu/index.js +3 -2
- package/dist/basic-sdk/extension/plugins/image/helpers.js +1 -1
- package/dist/basic-sdk/extension/plugins/image/hover-menu/index.js +4 -2
- package/dist/basic-sdk/extension/plugins/image/render-elem.js +5 -3
- package/dist/basic-sdk/extension/plugins/image/use-copy-image.js +1 -1
- package/dist/basic-sdk/extension/plugins/image/use-upload-image.js +1 -1
- package/dist/basic-sdk/extension/plugins/sdoc-link/hover-menu/index.js +4 -2
- package/dist/basic-sdk/extension/plugins/table/menu/color-selector-popover/color-item.js +4 -2
- package/dist/basic-sdk/extension/plugins/table/menu/table-context-menu/index.js +3 -2
- package/dist/basic-sdk/extension/plugins/table/menu/table-context-menu/insert-table-element.js +3 -2
- package/dist/basic-sdk/extension/plugins/table/menu/table-menu/index.js +1 -2
- package/dist/basic-sdk/extension/plugins/text-align/menu/index.js +1 -1
- package/dist/basic-sdk/extension/plugins/text-style/menu/comemnt-editor-menu.js +1 -2
- package/dist/basic-sdk/extension/plugins/text-style/menu/index.js +4 -2
- package/dist/basic-sdk/extension/plugins/video/render-elem.js +1 -2
- package/dist/basic-sdk/extension/toolbar/comment-editor-toolbar/index.js +13 -9
- package/dist/basic-sdk/hooks/use-comment.js +22 -12
- package/dist/basic-sdk/model/index.js +1 -8
- package/dist/basic-sdk/socket/helpers.js +312 -0
- package/dist/components/error-boundary/error-page.js +4 -4
- package/dist/pages/seafile-comment-editor.js +35 -17
- package/package.json +6 -6
- package/dist/basic-sdk/layout/comment-layout/index.css +0 -15
- package/dist/basic-sdk/layout/comment-layout/index.js +0 -87
- package/dist/basic-sdk/layout/comment-layout/resize-width/index.css +0 -38
- package/dist/basic-sdk/layout/comment-layout/resize-width/index.js +0 -132
- package/dist/basic-sdk/layout/editor-container.js +0 -32
- package/dist/basic-sdk/layout/index.js +0 -13
- package/dist/basic-sdk/model/notification.js +0 -18
- package/dist/components/tip-message/index.js +0 -194
- package/dist/components/tip-message/style.css +0 -15
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.getI18n = void 0;
|
|
8
|
+
var _reactI18next = require("react-i18next");
|
|
9
|
+
var _i18next = _interopRequireDefault(require("i18next"));
|
|
10
|
+
var _i18nextBrowserLanguagedetector = _interopRequireDefault(require("i18next-browser-languagedetector"));
|
|
11
|
+
var _i18nextHttpBackend = _interopRequireDefault(require("i18next-http-backend"));
|
|
12
|
+
const getI18n = _ref => {
|
|
13
|
+
let {
|
|
14
|
+
lang
|
|
15
|
+
} = _ref;
|
|
16
|
+
_i18next.default.use(_i18nextHttpBackend.default).use(_i18nextBrowserLanguagedetector.default).use(_reactI18next.initReactI18next).init({
|
|
17
|
+
lng: lang,
|
|
18
|
+
fallbackLng: 'en',
|
|
19
|
+
ns: ['sdoc-editor'],
|
|
20
|
+
defaultNS: 'sdoc-editor',
|
|
21
|
+
debug: false,
|
|
22
|
+
// console log if debug: true
|
|
23
|
+
|
|
24
|
+
whitelist: ['en', 'zh_CN', 'fr', 'de', 'cs', 'es', 'es-AR', 'es-MX', 'ru'],
|
|
25
|
+
backend: {
|
|
26
|
+
loadPath: '/public/locales/{{ lng }}/{{ ns }}.json'
|
|
27
|
+
},
|
|
28
|
+
interpolation: {
|
|
29
|
+
escapeValue: false // not needed for react!!
|
|
30
|
+
},
|
|
31
|
+
react: {
|
|
32
|
+
wait: true
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
return _i18next.default;
|
|
36
|
+
};
|
|
37
|
+
exports.getI18n = getI18n;
|
|
@@ -11,12 +11,12 @@ var _sdocServerApi = _interopRequireDefault(require("./api/sdoc-server-api"));
|
|
|
11
11
|
var _seafileApi = _interopRequireDefault(require("./api/seafile-api"));
|
|
12
12
|
class Context {
|
|
13
13
|
constructor() {
|
|
14
|
-
(0, _defineProperty2.default)(this, "initSettings",
|
|
15
|
-
this.settings = window.seafile ? window.seafile : window.seafileConfig;
|
|
14
|
+
(0, _defineProperty2.default)(this, "initSettings", settings => {
|
|
15
|
+
this.settings = settings ? settings : window.seafile ? window.seafile : window.seafileConfig;
|
|
16
16
|
const {
|
|
17
|
-
name,
|
|
18
|
-
username,
|
|
19
|
-
avatarURL
|
|
17
|
+
name = '',
|
|
18
|
+
username = '',
|
|
19
|
+
avatarURL = ''
|
|
20
20
|
} = this.settings;
|
|
21
21
|
const userInfo = {
|
|
22
22
|
name,
|
|
@@ -24,13 +24,6 @@ class Context {
|
|
|
24
24
|
avatar_url: avatarURL
|
|
25
25
|
};
|
|
26
26
|
this.user = userInfo;
|
|
27
|
-
if (this.settings['isSdocRevision']) {
|
|
28
|
-
const repoID = this.getSetting('repoID');
|
|
29
|
-
const siteRoot = this.getSetting('siteRoot');
|
|
30
|
-
const originFilePath = this.getSetting('originFilePath');
|
|
31
|
-
const originFileURL = `${siteRoot}lib/${repoID}/file${originFilePath}`;
|
|
32
|
-
this.settings['originFileURL'] = originFileURL;
|
|
33
|
-
}
|
|
34
27
|
});
|
|
35
28
|
(0, _defineProperty2.default)(this, "uploadLocalImage", imageFiles => {
|
|
36
29
|
const docUuid = this.getSetting('docUuid');
|
|
@@ -55,15 +48,9 @@ class Context {
|
|
|
55
48
|
this.api = null;
|
|
56
49
|
this.config = null;
|
|
57
50
|
}
|
|
58
|
-
init() {
|
|
59
|
-
this.initSettings();
|
|
60
|
-
|
|
61
|
-
// const token = this.getSetting('accessToken');
|
|
62
|
-
// this.api = new SeafileAPI(server, token);
|
|
63
|
-
// const isOpenSocket = this.getSetting('isOpenSocket');
|
|
64
|
-
// if (isOpenSocket) {
|
|
65
|
-
// this.sdocServerApi = new SDocServerApi(this.settings);
|
|
66
|
-
// }
|
|
51
|
+
init(settings, api) {
|
|
52
|
+
this.initSettings(settings);
|
|
53
|
+
this.api = api;
|
|
67
54
|
}
|
|
68
55
|
getSettings() {
|
|
69
56
|
return this.settings;
|
|
@@ -14,17 +14,16 @@ var _classnames = _interopRequireDefault(require("classnames"));
|
|
|
14
14
|
var _isHotkey = _interopRequireDefault(require("is-hotkey"));
|
|
15
15
|
var _scrollIntoViewIfNeeded = _interopRequireDefault(require("scroll-into-view-if-needed"));
|
|
16
16
|
var _constants = require("../constants");
|
|
17
|
-
var _context = _interopRequireDefault(require("../context"));
|
|
18
17
|
var _useCursors = require("../cursor/use-cursors");
|
|
19
18
|
var _decorates = require("../decorates");
|
|
20
19
|
var _extension = require("../extension");
|
|
20
|
+
var _insertElementDialog = _interopRequireDefault(require("../extension/commons/insert-element-dialog"));
|
|
21
21
|
var _constants2 = require("../extension/constants");
|
|
22
22
|
var _core = require("../extension/core");
|
|
23
23
|
var _renderCommentEditorElement = _interopRequireDefault(require("../extension/render/render-comment-editor-element"));
|
|
24
24
|
var _commentEditorToolbar = _interopRequireDefault(require("../extension/toolbar/comment-editor-toolbar"));
|
|
25
25
|
var _useComment = require("../hooks/use-comment");
|
|
26
26
|
var _useScrollContext = require("../hooks/use-scroll-context");
|
|
27
|
-
var _layout = require("../layout");
|
|
28
27
|
var _nodeId = _interopRequireDefault(require("../node-id"));
|
|
29
28
|
var _mdToSlate = _interopRequireDefault(require("../slate-convert/md-to-slate"));
|
|
30
29
|
var _slateToMd = _interopRequireDefault(require("../slate-convert/slate-to-md"));
|
|
@@ -39,16 +38,13 @@ const DEFAULT_PLACEHOLDER = 'Enter_comment_shift_enter_for_new_line_Enter_to_sen
|
|
|
39
38
|
const CommentEditor = _ref => {
|
|
40
39
|
let {
|
|
41
40
|
content,
|
|
42
|
-
commentContent,
|
|
43
41
|
placeholder = DEFAULT_PLACEHOLDER,
|
|
44
42
|
insertContent,
|
|
45
|
-
updateContent,
|
|
46
43
|
onContentChange,
|
|
47
|
-
setIsEditing,
|
|
48
44
|
hiddenComment,
|
|
49
45
|
hiddenUserInfo,
|
|
50
|
-
|
|
51
|
-
|
|
46
|
+
toolMenus = ['text_style', _constants2.BLOCKQUOTE, _constants2.UNORDERED_LIST, _constants2.ORDERED_LIST, _constants2.LINK, _constants2.IMAGE],
|
|
47
|
+
closePanel
|
|
52
48
|
} = _ref;
|
|
53
49
|
const commentWrapperRef = (0, _react.useRef)();
|
|
54
50
|
const {
|
|
@@ -57,7 +53,8 @@ const CommentEditor = _ref => {
|
|
|
57
53
|
const {
|
|
58
54
|
className,
|
|
59
55
|
userInfo,
|
|
60
|
-
type
|
|
56
|
+
type,
|
|
57
|
+
addParticipants
|
|
61
58
|
} = (0, _useComment.useComment)();
|
|
62
59
|
const submitTip = (0, _react.useMemo)(() => getSubmitTip(type, content), [content, type]);
|
|
63
60
|
const document = (0, _react.useMemo)(() => {
|
|
@@ -91,23 +88,19 @@ const CommentEditor = _ref => {
|
|
|
91
88
|
// init eventHandler
|
|
92
89
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
93
90
|
const eventProxy = (0, _react.useMemo)(() => new _eventHandler.default(editor), []);
|
|
94
|
-
const updateValue = (0, _react.useCallback)(value => {
|
|
95
|
-
if (!value || value.trim() === '') return;
|
|
96
|
-
if (!content) return insertContent(value);
|
|
97
|
-
updateContent && updateContent(value);
|
|
98
|
-
}, [content, insertContent, updateContent]);
|
|
99
91
|
const onSubmit = (0, _react.useCallback)(event => {
|
|
100
92
|
event && event.stopPropagation();
|
|
101
93
|
const mdString = (0, _slateToMd.default)(editor.children);
|
|
102
|
-
|
|
103
|
-
addParticipants(userInfo.username);
|
|
94
|
+
if (mdString && mdString.trim()) insertContent(mdString);
|
|
95
|
+
addParticipants && addParticipants(userInfo.username);
|
|
104
96
|
editor.children = [(0, _core.generateEmptyElement)(_constants2.PARAGRAPH, {
|
|
105
97
|
placeholder
|
|
106
98
|
})];
|
|
107
99
|
_slate.Transforms.select(editor, _slate.Editor.start(editor, []));
|
|
108
100
|
onContentChange && onContentChange(null);
|
|
109
|
-
|
|
110
|
-
|
|
101
|
+
closePanel && closePanel();
|
|
102
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
103
|
+
}, [editor, insertContent, addParticipants, placeholder, onContentChange, closePanel]);
|
|
111
104
|
const onSubmitByEnterKey = (0, _react.useCallback)(event => {
|
|
112
105
|
if (!_slateReact.ReactEditor.isFocused(editor)) return;
|
|
113
106
|
onSubmit(event);
|
|
@@ -139,7 +132,6 @@ const CommentEditor = _ref => {
|
|
|
139
132
|
const isPreventCancel = isClickOnListContainer || isClickOnCommentEditorContainer || isClickResizeContainer || isSdocContentWrapper;
|
|
140
133
|
if (isPreventCancel) return;
|
|
141
134
|
}
|
|
142
|
-
setIsEditing && setIsEditing(false);
|
|
143
135
|
hiddenComment && hiddenComment(false);
|
|
144
136
|
if (onContentChange) {
|
|
145
137
|
if (editor.children.find(n => _slate.Node.string(n).trim())) {
|
|
@@ -149,17 +141,14 @@ const CommentEditor = _ref => {
|
|
|
149
141
|
}
|
|
150
142
|
}
|
|
151
143
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
152
|
-
}, [
|
|
144
|
+
}, []);
|
|
153
145
|
|
|
154
146
|
// set editor children
|
|
155
147
|
(0, _react.useEffect)(() => {
|
|
156
148
|
let children = (0, _mdToSlate.default)(content);
|
|
157
|
-
if (commentContent) {
|
|
158
|
-
children = (0, _mdToSlate.default)(commentContent);
|
|
159
|
-
}
|
|
160
149
|
editor.children = children;
|
|
161
|
-
|
|
162
|
-
}, [editor, content
|
|
150
|
+
// Transforms.select(editor, Editor.end(editor, []));
|
|
151
|
+
}, [editor, content]);
|
|
163
152
|
|
|
164
153
|
// useMount: focus editor
|
|
165
154
|
(0, _react.useEffect)(() => {
|
|
@@ -172,10 +161,10 @@ const CommentEditor = _ref => {
|
|
|
172
161
|
anchor: endOfFirstNode,
|
|
173
162
|
focus: endOfFirstNode
|
|
174
163
|
};
|
|
175
|
-
|
|
164
|
+
// focusEditor(editor, range);
|
|
176
165
|
}
|
|
177
166
|
// Force refresh to fix comment list
|
|
178
|
-
setSlateValue([...editor.children]);
|
|
167
|
+
// setSlateValue([...editor.children]);
|
|
179
168
|
}
|
|
180
169
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
181
170
|
}, []);
|
|
@@ -229,6 +218,7 @@ const CommentEditor = _ref => {
|
|
|
229
218
|
}
|
|
230
219
|
eventProxy.onKeyDown(event);
|
|
231
220
|
}, [eventProxy, editor]);
|
|
221
|
+
console.log('toolMenus', toolMenus);
|
|
232
222
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
233
223
|
className: (0, _classnames.default)('comment-editor-wrapper', className),
|
|
234
224
|
ref: commentWrapperRef
|
|
@@ -245,43 +235,8 @@ const CommentEditor = _ref => {
|
|
|
245
235
|
className: "comment-editor-user-name"
|
|
246
236
|
}, userInfo.name)), /*#__PURE__*/_react.default.createElement("div", {
|
|
247
237
|
className: "comment-editor-container"
|
|
248
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
249
|
-
|
|
250
|
-
}
|
|
251
|
-
ref: commentEditorContainerRef,
|
|
252
|
-
className: "article comment-editor",
|
|
253
|
-
onClick: handleFocusEditor
|
|
254
|
-
}, /*#__PURE__*/_react.default.createElement(_useScrollContext.ScrollContext.Provider, {
|
|
255
|
-
value: {
|
|
256
|
-
scrollRef: commentEditorContainerRef
|
|
257
|
-
}
|
|
258
|
-
}, /*#__PURE__*/_react.default.createElement(_slateReact.Slate, {
|
|
259
|
-
editor: editor,
|
|
260
|
-
value: slateValue,
|
|
261
|
-
onChange: setSlateValue
|
|
262
|
-
}, /*#__PURE__*/_react.default.createElement(_slateReact.Editable, {
|
|
263
|
-
id: "sdoc-editor",
|
|
264
|
-
scrollSelectionIntoView: handleScrollIntoView,
|
|
265
|
-
cursors: cursors,
|
|
266
|
-
renderElement: props => (0, _renderCommentEditorElement.default)({
|
|
267
|
-
...props,
|
|
268
|
-
commentType: type
|
|
269
|
-
}),
|
|
270
|
-
renderLeaf: _extension.renderLeaf,
|
|
271
|
-
onMouseDown: onMouseDown,
|
|
272
|
-
decorate: decorate,
|
|
273
|
-
onCut: eventProxy.onCut,
|
|
274
|
-
onCopy: eventProxy.onCopy,
|
|
275
|
-
onCompositionStart: eventProxy.onCompositionStart,
|
|
276
|
-
onCompositionUpdate: eventProxy.onCompositionUpdate,
|
|
277
|
-
onCompositionEnd: eventProxy.onCompositionEnd,
|
|
278
|
-
onKeyDown: onKeyDown,
|
|
279
|
-
onBeforeInput: eventProxy.onBeforeInput
|
|
280
|
-
})))), /*#__PURE__*/_react.default.createElement(_commentEditorToolbar.default, {
|
|
281
|
-
editor: editor,
|
|
282
|
-
onSubmit: onSubmit,
|
|
283
|
-
submitBtnText: t(submitTip),
|
|
284
|
-
onCancel: onCancel
|
|
285
|
-
}))));
|
|
238
|
+
}), toolMenus.includes(_constants2.IMAGE) && /*#__PURE__*/_react.default.createElement(_insertElementDialog.default, {
|
|
239
|
+
editor: editor
|
|
240
|
+
}));
|
|
286
241
|
};
|
|
287
242
|
var _default = exports.default = CommentEditor;
|
|
@@ -10,10 +10,12 @@ var _reactI18next = require("react-i18next");
|
|
|
10
10
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
11
|
const ColorItem = _ref => {
|
|
12
12
|
let {
|
|
13
|
-
t,
|
|
14
13
|
color,
|
|
15
14
|
lastUsedColor
|
|
16
15
|
} = _ref;
|
|
16
|
+
const {
|
|
17
|
+
t
|
|
18
|
+
} = (0, _reactI18next.useTranslation)('sdoc-editor');
|
|
17
19
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
18
20
|
className: (0, _classnames.default)('sdoc-color-item', {
|
|
19
21
|
'selected': lastUsedColor === color.value
|
|
@@ -28,4 +30,4 @@ const ColorItem = _ref => {
|
|
|
28
30
|
}) : t(color.name)
|
|
29
31
|
});
|
|
30
32
|
};
|
|
31
|
-
var _default = exports.default =
|
|
33
|
+
var _default = exports.default = ColorItem;
|
|
@@ -26,7 +26,6 @@ const ColorMenu = _ref => {
|
|
|
26
26
|
id,
|
|
27
27
|
popoverClassName,
|
|
28
28
|
disabled,
|
|
29
|
-
t,
|
|
30
29
|
setColor,
|
|
31
30
|
recentUsedColorsKey,
|
|
32
31
|
text,
|
|
@@ -35,6 +34,9 @@ const ColorMenu = _ref => {
|
|
|
35
34
|
lastUsedColor,
|
|
36
35
|
updateLastUsedColor
|
|
37
36
|
} = _ref;
|
|
37
|
+
const {
|
|
38
|
+
t
|
|
39
|
+
} = (0, _reactI18next.useTranslation)('sdoc-editor');
|
|
38
40
|
const popoverRef = (0, _react.useRef)(null);
|
|
39
41
|
const moreColorsPopoverRef = (0, _react.useRef)(null);
|
|
40
42
|
const [recentUsedColors, setRecentUsedColors] = (0, _react.useState)(_localStorageUtils.default.getItem(recentUsedColorsKey, _constants.DEFAULT_RECENT_USED_LIST));
|
|
@@ -205,4 +207,4 @@ const ColorMenu = _ref => {
|
|
|
205
207
|
onChange: onChange
|
|
206
208
|
}))))));
|
|
207
209
|
};
|
|
208
|
-
var _default = exports.default =
|
|
210
|
+
var _default = exports.default = ColorMenu;
|
|
@@ -146,102 +146,60 @@ const InsertElementDialog = _ref => {
|
|
|
146
146
|
data
|
|
147
147
|
};
|
|
148
148
|
switch (dialogType) {
|
|
149
|
-
case
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
case
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
style: {
|
|
204
|
-
display: 'none'
|
|
205
|
-
},
|
|
206
|
-
onChange: onFileChanged
|
|
207
|
-
});
|
|
208
|
-
}
|
|
209
|
-
case _constants2.LOCAL_VIDEO:
|
|
210
|
-
{
|
|
211
|
-
return /*#__PURE__*/_react.default.createElement("input", {
|
|
212
|
-
onClick: e => e.stopPropagation(),
|
|
213
|
-
ref: uploadLocalVideoInputRef,
|
|
214
|
-
type: "file",
|
|
215
|
-
accept: "video/*",
|
|
216
|
-
style: {
|
|
217
|
-
display: 'none'
|
|
218
|
-
},
|
|
219
|
-
onChange: onVideoFileChanged
|
|
220
|
-
});
|
|
221
|
-
}
|
|
222
|
-
case _constants2.ELEMENT_TYPE.FILE_LINK_INSET_INPUT_TEMP:
|
|
223
|
-
{
|
|
224
|
-
if (editor.editorType === _constants.WIKI_EDITOR) {
|
|
225
|
-
return /*#__PURE__*/_react.default.createElement(_index6.default, {
|
|
226
|
-
element: slateNode,
|
|
227
|
-
editor: editor,
|
|
228
|
-
closeDialog: closeDialog
|
|
229
|
-
});
|
|
230
|
-
}
|
|
231
|
-
return /*#__PURE__*/_react.default.createElement(_index4.default, {
|
|
232
|
-
element: slateNode,
|
|
233
|
-
editor: editor,
|
|
234
|
-
closeDialog: closeDialog
|
|
235
|
-
});
|
|
236
|
-
}
|
|
237
|
-
case _constants2.ELEMENT_TYPE.ASK_AI:
|
|
238
|
-
{
|
|
239
|
-
return /*#__PURE__*/_react.default.createElement(_index.default, {
|
|
240
|
-
element: slateNode,
|
|
241
|
-
editor: editor,
|
|
242
|
-
closeModule: closeDialog
|
|
243
|
-
});
|
|
244
|
-
}
|
|
149
|
+
// case ELEMENT_TYPE.TABLE: {
|
|
150
|
+
// return (<CustomTableSizeDialog {...props} />);
|
|
151
|
+
// }
|
|
152
|
+
// case ELEMENT_TYPE.TABLE_CELL: {
|
|
153
|
+
// return (<SplitCellSettingDialog {...props} />);
|
|
154
|
+
// }
|
|
155
|
+
// case ELEMENT_TYPE.LINK: {
|
|
156
|
+
// return (<AddLinkDialog {...props} />);
|
|
157
|
+
// }
|
|
158
|
+
// case ELEMENT_TYPE.SDOC_LINK: {
|
|
159
|
+
// const sdocLinkProps = {
|
|
160
|
+
// editor: validEditor,
|
|
161
|
+
// dialogType,
|
|
162
|
+
// insertLinkCallback,
|
|
163
|
+
// closeDialog,
|
|
164
|
+
// };
|
|
165
|
+
// return (<SelectFileDialog {...sdocLinkProps} />);
|
|
166
|
+
// }
|
|
167
|
+
// case ELEMENT_TYPE.FILE_LINK: {
|
|
168
|
+
// const fileLinkProps = {
|
|
169
|
+
// editor: validEditor,
|
|
170
|
+
// dialogType,
|
|
171
|
+
// insertLinkCallback,
|
|
172
|
+
// closeDialog,
|
|
173
|
+
// };
|
|
174
|
+
// return (<SelectFileDialog {...fileLinkProps} />);
|
|
175
|
+
// }
|
|
176
|
+
// case ELEMENT_TYPE.VIDEO: {
|
|
177
|
+
// const videoProps = {
|
|
178
|
+
// editor: validEditor,
|
|
179
|
+
// dialogType,
|
|
180
|
+
// insertVideoCallback,
|
|
181
|
+
// closeDialog,
|
|
182
|
+
// };
|
|
183
|
+
// return (<SelectFileDialog {...videoProps} />);
|
|
184
|
+
// }
|
|
185
|
+
// case ELEMENT_TYPE.VIDEO_LINK: {
|
|
186
|
+
// return (<AddVideoLinkDialog {...props} />);
|
|
187
|
+
// }
|
|
188
|
+
// case LOCAL_IMAGE: {
|
|
189
|
+
// return (<input onClick={e => e.stopPropagation()} ref={uploadLocalImageInputRef} type="file" multiple={true} accept='image/*' style={{ display: 'none' }} onChange={onFileChanged} />);
|
|
190
|
+
// }
|
|
191
|
+
// case LOCAL_VIDEO: {
|
|
192
|
+
// return (<input onClick={e => e.stopPropagation()} ref={uploadLocalVideoInputRef} type="file" accept='video/*' style={{ display: 'none' }} onChange={onVideoFileChanged} />);
|
|
193
|
+
// }
|
|
194
|
+
// case ELEMENT_TYPE.FILE_LINK_INSET_INPUT_TEMP : {
|
|
195
|
+
// if (editor.editorType === WIKI_EDITOR) {
|
|
196
|
+
// return <WikiFileLinkInsertDialog element={slateNode} editor={editor} closeDialog={closeDialog} />;
|
|
197
|
+
// }
|
|
198
|
+
// return <FileLinkInsertDialog element={slateNode} editor={editor} closeDialog={closeDialog} />;
|
|
199
|
+
// }
|
|
200
|
+
// case ELEMENT_TYPE.ASK_AI: {
|
|
201
|
+
// return <AIModule element={slateNode} editor={editor} closeModule={closeDialog} />;
|
|
202
|
+
// }
|
|
245
203
|
default:
|
|
246
204
|
{
|
|
247
205
|
return null;
|
|
@@ -7,8 +7,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
|
|
9
9
|
var _react = _interopRequireDefault(require("react"));
|
|
10
|
-
var _reactI18next = require("react-i18next");
|
|
11
10
|
var _menu = _interopRequireDefault(require("./menu"));
|
|
11
|
+
// import { withTranslation } from 'react-i18next';
|
|
12
|
+
|
|
12
13
|
class FieldSetting extends _react.default.Component {
|
|
13
14
|
constructor(props) {
|
|
14
15
|
super(props);
|
|
@@ -106,4 +107,4 @@ class FieldSetting extends _react.default.Component {
|
|
|
106
107
|
}, t('Italic'))));
|
|
107
108
|
}
|
|
108
109
|
}
|
|
109
|
-
var _default = exports.default =
|
|
110
|
+
var _default = exports.default = FieldSetting;
|
|
@@ -20,10 +20,12 @@ const LocalFiles = _ref => {
|
|
|
20
20
|
onSelectedFile,
|
|
21
21
|
toggle,
|
|
22
22
|
fileType,
|
|
23
|
-
t,
|
|
24
23
|
searchContent,
|
|
25
24
|
isOpenSearch
|
|
26
25
|
} = _ref;
|
|
26
|
+
const {
|
|
27
|
+
t
|
|
28
|
+
} = (0, _reactI18next.useTranslation)('sdoc-editor');
|
|
27
29
|
const folderRef = (0, _react.useRef)(null);
|
|
28
30
|
const [expandedFolder, setExpandedFolder] = (0, _react.useState)(new Set([]));
|
|
29
31
|
const [currentActiveItem, setCurrentActiveItem] = (0, _react.useState)(null);
|
|
@@ -188,4 +190,4 @@ const LocalFiles = _ref => {
|
|
|
188
190
|
className: "sdoc-file-search-no-result"
|
|
189
191
|
}, t('No_results')));
|
|
190
192
|
};
|
|
191
|
-
var _default = exports.default =
|
|
193
|
+
var _default = exports.default = LocalFiles;
|
|
@@ -55,9 +55,11 @@ const CodeBlockHoverMenu = _ref2 => {
|
|
|
55
55
|
onChangeLanguage,
|
|
56
56
|
onChangeAutoLineWrap,
|
|
57
57
|
onCopyCodeBlock,
|
|
58
|
-
onDeleteCodeBlock
|
|
59
|
-
t
|
|
58
|
+
onDeleteCodeBlock
|
|
60
59
|
} = _ref2;
|
|
60
|
+
const {
|
|
61
|
+
t
|
|
62
|
+
} = (0, _reactI18next.useTranslation)('sdoc-editor');
|
|
61
63
|
const {
|
|
62
64
|
white_space = 'nowrap'
|
|
63
65
|
} = style;
|
|
@@ -254,4 +256,4 @@ const CodeBlockHoverMenu = _ref2 => {
|
|
|
254
256
|
ref: langRefs
|
|
255
257
|
})))));
|
|
256
258
|
};
|
|
257
|
-
var _default = exports.default =
|
|
259
|
+
var _default = exports.default = CodeBlockHoverMenu;
|
|
@@ -24,9 +24,11 @@ const FileLinkHoverMenu = _ref => {
|
|
|
24
24
|
menuPosition,
|
|
25
25
|
element,
|
|
26
26
|
onUnwrapFileLinkNode,
|
|
27
|
-
onHideInsertHoverMenu
|
|
28
|
-
t
|
|
27
|
+
onHideInsertHoverMenu
|
|
29
28
|
} = _ref;
|
|
29
|
+
const {
|
|
30
|
+
t
|
|
31
|
+
} = (0, _reactI18next.useTranslation)('sdoc-editor');
|
|
30
32
|
const readOnly = (0, _slateReact.useReadOnly)();
|
|
31
33
|
const [isShowDisplayStylePopover, setIsShowDisplayStylePopover] = (0, _react.useState)(false);
|
|
32
34
|
const onCopy = (0, _react.useCallback)(e => {
|
|
@@ -117,4 +119,4 @@ const FileLinkHoverMenu = _ref => {
|
|
|
117
119
|
}));
|
|
118
120
|
}))));
|
|
119
121
|
};
|
|
120
|
-
var _default = exports.default =
|
|
122
|
+
var _default = exports.default = FileLinkHoverMenu;
|
|
@@ -8,7 +8,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
var _reactI18next = require("react-i18next");
|
|
12
11
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
12
|
var _tooltip = _interopRequireDefault(require("../../../../components/tooltip"));
|
|
14
13
|
var _commonUtils = require("../../../../utils/common-utils");
|
|
@@ -16,6 +15,8 @@ var _constants = require("../../../constants");
|
|
|
16
15
|
var _core = require("../../../core");
|
|
17
16
|
var _helpers = require("../helpers");
|
|
18
17
|
require("./style.css");
|
|
18
|
+
// import { withTranslation } from 'react-i18next';
|
|
19
|
+
|
|
19
20
|
class HeaderMenu extends _react.default.Component {
|
|
20
21
|
constructor(props) {
|
|
21
22
|
super(props);
|
|
@@ -150,4 +151,4 @@ class HeaderMenu extends _react.default.Component {
|
|
|
150
151
|
})));
|
|
151
152
|
}
|
|
152
153
|
}
|
|
153
|
-
var _default = exports.default =
|
|
154
|
+
var _default = exports.default = HeaderMenu;
|
|
@@ -291,7 +291,7 @@ const handleBase64Image = (editor, path, imgData) => {
|
|
|
291
291
|
const file = new File([blob], `${_slugid.default.nice()}.jpg`, {
|
|
292
292
|
type: unit8Array.mime
|
|
293
293
|
});
|
|
294
|
-
_context.default.uploadLocalImage([file]).then(res => {
|
|
294
|
+
_context.default.api.uploadLocalImage([file]).then(res => {
|
|
295
295
|
const _data = {
|
|
296
296
|
...imgData,
|
|
297
297
|
src: res[0]
|
|
@@ -27,9 +27,11 @@ const ImageHoverMenu = _ref => {
|
|
|
27
27
|
parentNodeEntry,
|
|
28
28
|
imageCaptionInputRef,
|
|
29
29
|
onHideImageHoverMenu,
|
|
30
|
-
t,
|
|
31
30
|
readonly
|
|
32
31
|
} = _ref;
|
|
32
|
+
const {
|
|
33
|
+
t
|
|
34
|
+
} = (0, _reactI18next.useTranslation)('sdoc-editor');
|
|
33
35
|
const {
|
|
34
36
|
data,
|
|
35
37
|
border_type = _constants2.IMAGE_BORDER_TYPE[0].type
|
|
@@ -299,4 +301,4 @@ const ImageHoverMenu = _ref => {
|
|
|
299
301
|
}
|
|
300
302
|
})));
|
|
301
303
|
};
|
|
302
|
-
var _default = exports.default =
|
|
304
|
+
var _default = exports.default = ImageHoverMenu;
|
|
@@ -33,9 +33,11 @@ const Image = _ref => {
|
|
|
33
33
|
className,
|
|
34
34
|
attributes,
|
|
35
35
|
children,
|
|
36
|
-
isSelected
|
|
37
|
-
t
|
|
36
|
+
isSelected
|
|
38
37
|
} = _ref;
|
|
38
|
+
const {
|
|
39
|
+
t
|
|
40
|
+
} = (0, _reactI18next.useTranslation)('sdoc-editor');
|
|
39
41
|
const {
|
|
40
42
|
data,
|
|
41
43
|
border_type = _constants3.IMAGE_BORDER_TYPE[0].type
|
|
@@ -348,7 +350,7 @@ const Image = _ref => {
|
|
|
348
350
|
}
|
|
349
351
|
})));
|
|
350
352
|
};
|
|
351
|
-
const SdocImage =
|
|
353
|
+
const SdocImage = Image;
|
|
352
354
|
function renderImage(props, editor) {
|
|
353
355
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
354
356
|
const isSelected = (0, _slateReact.useSelected)();
|
|
@@ -51,7 +51,7 @@ const useCopyImage = _ref => {
|
|
|
51
51
|
const file = new File([blob], 'downloaded_image.png', {
|
|
52
52
|
type: blob.type
|
|
53
53
|
});
|
|
54
|
-
const imageUrl = await _context.default.uploadLocalImage([file]);
|
|
54
|
+
const imageUrl = await _context.default.api.uploadLocalImage([file]);
|
|
55
55
|
if (imageUrl && imageUrl[0]) {
|
|
56
56
|
updateImageNode(editor, element, imageUrl[0]);
|
|
57
57
|
}
|
|
@@ -42,7 +42,7 @@ const useUploadImage = _ref => {
|
|
|
42
42
|
const uploadCurrentImage = async () => {
|
|
43
43
|
try {
|
|
44
44
|
const fileItem = _imageCache.default.getImage(file_uuid);
|
|
45
|
-
const imageUrl = await _context.default.uploadLocalImage([fileItem]);
|
|
45
|
+
const imageUrl = await _context.default.api.uploadLocalImage([fileItem]);
|
|
46
46
|
if (imageUrl && imageUrl[0]) {
|
|
47
47
|
updateImageNode(editor, element, imageUrl[0]);
|
|
48
48
|
}
|
|
@@ -25,9 +25,11 @@ const SdocLinkHoverMenu = _ref => {
|
|
|
25
25
|
element,
|
|
26
26
|
onUnwrapFileLinkNode,
|
|
27
27
|
onHideInsertHoverMenu,
|
|
28
|
-
t,
|
|
29
28
|
url
|
|
30
29
|
} = _ref;
|
|
30
|
+
const {
|
|
31
|
+
t
|
|
32
|
+
} = (0, _reactI18next.useTranslation)('sdoc-editor');
|
|
31
33
|
const readOnly = (0, _slateReact.useReadOnly)();
|
|
32
34
|
const [isShowDisplayStylePopover, setIsShowDisplayStylePopover] = (0, _react.useState)(false);
|
|
33
35
|
const onCopy = (0, _react.useCallback)(e => {
|
|
@@ -116,4 +118,4 @@ const SdocLinkHoverMenu = _ref => {
|
|
|
116
118
|
}));
|
|
117
119
|
}))));
|
|
118
120
|
};
|
|
119
|
-
var _default = exports.default =
|
|
121
|
+
var _default = exports.default = SdocLinkHoverMenu;
|