@seafile/comment-editor 0.0.18 → 0.0.20-beta.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.
@@ -9,6 +9,7 @@ var _reactI18next = require("react-i18next");
9
9
  var _i18next = _interopRequireDefault(require("i18next"));
10
10
  var _i18nextBrowserLanguagedetector = _interopRequireDefault(require("i18next-browser-languagedetector"));
11
11
  var _i18nextHttpBackend = _interopRequireDefault(require("i18next-http-backend"));
12
+ // 1
12
13
  const getI18n = settings => {
13
14
  let lang = 'en';
14
15
  let loadPath = '/public/locales/{{ lng }}/{{ ns }}.json';
@@ -22,6 +23,7 @@ const getI18n = settings => {
22
23
  }
23
24
  if (propsLang) {
24
25
  lang = propsLang === 'zh-cn' ? 'zh-CN' : lang;
26
+ lang = propsLang === 'zh' ? 'zh-CN' : lang;
25
27
  }
26
28
  }
27
29
  _i18next.default.use(_i18nextHttpBackend.default).use(_i18nextBrowserLanguagedetector.default).use(_reactI18next.initReactI18next).init({
@@ -39,8 +41,10 @@ const getI18n = settings => {
39
41
  interpolation: {
40
42
  escapeValue: false // not needed for react!!
41
43
  },
44
+ load: 'currentOnly',
42
45
  react: {
43
- wait: true
46
+ wait: true,
47
+ useSuspense: false
44
48
  }
45
49
  });
46
50
  return _i18next.default;
@@ -84,8 +84,8 @@
84
84
  }
85
85
 
86
86
  .sdoc-dropdown-menu .sdoc-dropdown-menu-item .sdocfont {
87
- font-size: 12px;
88
- line-height: 12px;
87
+ font-size: 14px;
88
+ line-height: 14px;
89
89
  }
90
90
 
91
91
  .sdoc-dropdown-menu .sdoc-dropdown-menu-item .sdoc-dropdown-item-content {
@@ -97,7 +97,6 @@
97
97
 
98
98
  .sdoc-dropdown-menu .sdoc-dropdown-item-content .sdoc-dropdown-item-content-icon {
99
99
  margin-right: 10px;
100
- vertical-align: 1px;
101
100
  }
102
101
 
103
102
  .sdoc-dropdown-menu .sdoc-dropdown-item-right-icon {
@@ -129,5 +129,5 @@
129
129
  }
130
130
 
131
131
  .comment-editor-wrapper .comment-editor-toolbar .comment-editor-menu-group .comment-editor-menu-group-item .sdocfont {
132
- font-size: 12px;
132
+ font-size: 14px;
133
133
  }
@@ -7,6 +7,7 @@ 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");
10
11
  var _reactImageLightbox = _interopRequireDefault(require("@seafile/react-image-lightbox"));
11
12
  var _helpers = require("../helpers");
12
13
  require("@seafile/react-image-lightbox/style.css");
@@ -38,6 +39,11 @@ class ImagePreviewer extends _react.default.Component {
38
39
  imageIndex: (prevState.imageIndex + 1) % this.images.length
39
40
  }));
40
41
  });
42
+ (0, _defineProperty2.default)(this, "setImageIndex", index => {
43
+ this.setState({
44
+ imageIndex: index
45
+ });
46
+ });
41
47
  const {
42
48
  editor,
43
49
  imageUrl
@@ -51,6 +57,9 @@ class ImagePreviewer extends _react.default.Component {
51
57
  const {
52
58
  imageIndex
53
59
  } = this.state;
60
+ const {
61
+ t
62
+ } = this.props;
54
63
  const imageItemsLength = this.images.length;
55
64
  const mainSrc = this.images[imageIndex] || '';
56
65
  let imageTitle = '';
@@ -68,6 +77,9 @@ class ImagePreviewer extends _react.default.Component {
68
77
  className: "flex-shrink-0"
69
78
  }, "(", imageIndex + 1, "/", this.images.length, ")"));
70
79
  return /*#__PURE__*/_react.default.createElement(_reactImageLightbox.default, {
80
+ imageItems: this.images,
81
+ currentIndex: imageIndex,
82
+ setImageIndex: index => this.setImageIndex(index),
71
83
  wrapperClassName: "sf-editor-image-previewer",
72
84
  imageTitle: imageTitleEl,
73
85
  mainSrc: mainSrc,
@@ -79,8 +91,10 @@ class ImagePreviewer extends _react.default.Component {
79
91
  onMoveNextRequest: this.moveToNextImage,
80
92
  reactModalProps: {
81
93
  shouldReturnFocusAfterClose: false
82
- }
94
+ },
95
+ zoomInTip: t('Zoom_in'),
96
+ zoomOutTip: t('Zoom_out')
83
97
  });
84
98
  }
85
99
  }
86
- var _default = exports.default = ImagePreviewer;
100
+ var _default = exports.default = (0, _reactI18next.withTranslation)('comment-editor')(ImagePreviewer);
@@ -28,7 +28,7 @@
28
28
  .sdoc-image-hover-menu-container .hover-menu-container .op-item {
29
29
  position: relative;
30
30
  font-size: 12px;
31
- color: #212529;
31
+ color: #444444;
32
32
  padding: 0 5px;
33
33
  border-radius: 2px;
34
34
  min-width: 24px;
@@ -39,7 +39,7 @@
39
39
  }
40
40
 
41
41
  .sdoc-image-hover-menu-container .hover-menu-container .op-item:hover {
42
- color: #212529;
42
+ color: #444444;
43
43
  text-decoration: none;
44
44
  background: #f1f1f1;
45
45
  }
@@ -48,9 +48,9 @@
48
48
  background: #f1f1f1;
49
49
  }
50
50
 
51
- .sdoc-image-hover-menu-container .hover-menu-container .icon-font {
52
- font-size: 12px;
53
- color: #999999;
51
+ .sdoc-image-hover-menu-container .hover-menu-container .sdocfont {
52
+ font-size: 14px;
53
+ color: #444;
54
54
  }
55
55
 
56
56
  .sdoc-image-hover-menu-container .sdoc-image-popover {
@@ -180,7 +180,7 @@ const ImageHoverMenu = _ref => {
180
180
  }, /*#__PURE__*/_react.default.createElement("span", {
181
181
  className: "mr-1"
182
182
  }, t(type === _constants.IMAGE_BLOCK ? 'Block' : 'Inline')), /*#__PURE__*/_react.default.createElement("i", {
183
- className: "sdocfont sdoc-drop-down icon-font"
183
+ className: "sdocfont sdoc-drop-down"
184
184
  }))), !readonly && /*#__PURE__*/_react.default.createElement("span", {
185
185
  className: "op-group-item"
186
186
  }, type === _constants.IMAGE_BLOCK && /*#__PURE__*/_react.default.createElement("span", {
@@ -192,9 +192,9 @@ const ImageHoverMenu = _ref => {
192
192
  onShowProver(e, 'alignPopover');
193
193
  }
194
194
  }, /*#__PURE__*/_react.default.createElement("i", {
195
- className: (0, _classnames.default)(`sdocfont sdoc-align-${align || 'left'} icon-font mr-1`)
195
+ className: (0, _classnames.default)(`sdocfont sdoc-align-${align || 'left'} mr-1`)
196
196
  }), /*#__PURE__*/_react.default.createElement("i", {
197
- className: "sdocfont sdoc-drop-down icon-font"
197
+ className: "sdocfont sdoc-drop-down "
198
198
  })), /*#__PURE__*/_react.default.createElement("span", {
199
199
  id: "sdoc_image_border",
200
200
  role: "button",
@@ -205,9 +205,9 @@ const ImageHoverMenu = _ref => {
205
205
  onShowProver(e, 'borderPopover');
206
206
  }
207
207
  }, /*#__PURE__*/_react.default.createElement("i", {
208
- className: "sdocfont sdoc-image icon-font mr-1"
208
+ className: "sdocfont sdoc-image mr-1"
209
209
  }), /*#__PURE__*/_react.default.createElement("i", {
210
- className: "sdocfont sdoc-drop-down icon-font"
210
+ className: "sdocfont sdoc-drop-down "
211
211
  }), isShowTooltip && /*#__PURE__*/_react.default.createElement(_tooltip.default, {
212
212
  target: "sdoc_image_border",
213
213
  placement: "top",
@@ -222,7 +222,7 @@ const ImageHoverMenu = _ref => {
222
222
  'show_caption': !show_caption
223
223
  })
224
224
  }, /*#__PURE__*/_react.default.createElement("i", {
225
- className: "sdocfont sdoc-describe icon-font mr-1"
225
+ className: "sdocfont sdoc-caption mr-1"
226
226
  }), isShowTooltip && /*#__PURE__*/_react.default.createElement(_tooltip.default, {
227
227
  target: "sdoc_image_caption",
228
228
  placement: "top",
@@ -238,7 +238,7 @@ const ImageHoverMenu = _ref => {
238
238
  setIsShowImagePreview(!isShowImagePreview);
239
239
  }
240
240
  }, /*#__PURE__*/_react.default.createElement("i", {
241
- className: "sdocfont sdoc-fullscreen icon-font"
241
+ className: "sdocfont sdoc-fullscreen "
242
242
  }), isShowTooltip && /*#__PURE__*/_react.default.createElement(_tooltip.default, {
243
243
  target: "sdoc_image_full_screen_mode",
244
244
  placement: "top",
@@ -271,7 +271,7 @@ const ImageHoverMenu = _ref => {
271
271
  }, /*#__PURE__*/_react.default.createElement("div", {
272
272
  className: "sdoc-dropdown-item-content"
273
273
  }, /*#__PURE__*/_react.default.createElement("i", {
274
- className: (0, _classnames.default)(item.iconClass, 'icon-font')
274
+ className: (0, _classnames.default)(item.iconClass)
275
275
  })), align === item.type && /*#__PURE__*/_react.default.createElement("i", {
276
276
  className: "sdocfont sdoc-check-mark sdoc-dropdown-item-right-icon"
277
277
  }));
@@ -25,7 +25,7 @@
25
25
 
26
26
  .link-op-menu-link {
27
27
  font-size: 12px;
28
- color: #212529;
28
+ color: #444444;
29
29
  padding: 0 5px;
30
30
  border-radius: 2px;
31
31
  line-height: 20px;
@@ -33,7 +33,7 @@
33
33
  }
34
34
 
35
35
  .link-op-menu-link:hover {
36
- color: #212529;
36
+ color: #444444;
37
37
  text-decoration: none;
38
38
  background: #f1f1f1;
39
39
  }
@@ -53,7 +53,7 @@
53
53
  }
54
54
 
55
55
  .link-op-icon .sdocfont {
56
- font-size: 12px;
56
+ font-size: 14px;
57
57
  color: #444;
58
58
  }
59
59
 
@@ -12,20 +12,28 @@ var _rehypeSanitize = _interopRequireDefault(require("rehype-sanitize"));
12
12
  var _rehypeSlug = _interopRequireDefault(require("rehype-slug"));
13
13
  var _rehypeStringify = _interopRequireDefault(require("rehype-stringify"));
14
14
  var _remarkBreaks = _interopRequireDefault(require("remark-breaks"));
15
- var _remarkGfm = _interopRequireDefault(require("remark-gfm"));
16
15
  var _remarkMath = _interopRequireDefault(require("remark-math"));
17
16
  var _remarkParse = _interopRequireDefault(require("remark-parse"));
18
17
  var _remarkRehype = _interopRequireDefault(require("remark-rehype"));
19
18
  var _unified = require("unified");
19
+ var _unistUtilVisit = require("unist-util-visit");
20
20
  var _sanitizeSchema = _interopRequireDefault(require("./sanitize-schema"));
21
+ function remarkEscapeHtml() {
22
+ return tree => {
23
+ (0, _unistUtilVisit.visit)(tree, 'html', node => {
24
+ node.type = 'text';
25
+ });
26
+ };
27
+ }
28
+
21
29
  // mdString -> mdast -> html ast -> html
22
30
  const processor = (0, _unified.unified)()
23
31
  // Handles markdown basic syntax
24
32
  // https://github.com/remarkjs/remark/tree/main
25
- .use(_remarkParse.default)
33
+ .use(_remarkParse.default).use(remarkEscapeHtml)
26
34
  // Handle markdown extension syntax
27
35
  // https://github.com/remarkjs/remark-gfm
28
- .use(_remarkGfm.default)
36
+ // .use(gfm)
29
37
  // https://github.com/remarkjs/remark-math
30
38
  .use(_remarkMath.default)
31
39
  // https://github.com/remarkjs/remark-breaks
package/dist/index.js CHANGED
@@ -22,6 +22,12 @@ Object.defineProperty(exports, "SeafileCommentEditor", {
22
22
  return _seafileCommentEditor.default;
23
23
  }
24
24
  });
25
+ Object.defineProperty(exports, "commentProcessor", {
26
+ enumerable: true,
27
+ get: function () {
28
+ return _basicSdk.processor;
29
+ }
30
+ });
25
31
  var _basicSdk = require("./basic-sdk");
26
32
  var _constants = require("./constants");
27
33
  var _seafileCommentEditor = _interopRequireDefault(require("./pages/seafile-comment-editor"));
@@ -1,15 +1,14 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
3
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
8
  var _react = _interopRequireWildcard(require("react"));
10
- var _reactI18next = require("react-i18next");
11
9
  var _basicSdk = require("../basic-sdk");
12
- var _i18n = _interopRequireDefault(require("../_i18n"));
10
+ // import getI18n from '../_i18n';
11
+
13
12
  const SeafileCommentEditor = _ref => {
14
13
  let {
15
14
  // Provider
@@ -36,15 +35,12 @@ const SeafileCommentEditor = _ref => {
36
35
  settings,
37
36
  api
38
37
  } = _ref;
39
- const [i18n, setI18n] = (0, _react.useState)(null);
40
38
  (0, _react.useEffect)(() => {
41
39
  _basicSdk.context.init(settings, api);
42
- setI18n((0, _i18n.default)(settings));
43
40
  // eslint-disable-next-line react-hooks/exhaustive-deps
44
41
  }, []);
45
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, i18n && /*#__PURE__*/_react.default.createElement(_reactI18next.I18nextProvider, {
46
- i18n: i18n
47
- }, /*#__PURE__*/_react.default.createElement(_react.Suspense, null, /*#__PURE__*/_react.default.createElement(_basicSdk.CommentProvider, {
42
+ console.log('comment editor --1');
43
+ return /*#__PURE__*/_react.default.createElement(_basicSdk.CommentProvider, {
48
44
  type: type,
49
45
  className: className,
50
46
  pluginName: pluginName,
@@ -62,6 +58,6 @@ const SeafileCommentEditor = _ref => {
62
58
  hiddenComment: hiddenComment,
63
59
  hiddenUserInfo: hiddenUserInfo,
64
60
  closePanel: closePanel
65
- })))));
61
+ }));
66
62
  };
67
63
  var _default = exports.default = SeafileCommentEditor;
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@seafile/comment-editor",
3
- "version": "0.0.18",
3
+ "version": "0.0.20-beta.1",
4
4
  "private": false,
5
5
  "description": "This is a comment editor",
6
6
  "main": "dist/index.js",
7
7
  "dependencies": {
8
- "@seafile/react-image-lightbox": "4.0.2",
8
+ "@seafile/react-image-lightbox": "^5.0.4",
9
9
  "@seafile/slate": "0.91.8",
10
10
  "@seafile/slate-history": "0.86.2",
11
11
  "@seafile/slate-hyperscript": "0.81.7",
@@ -14,7 +14,6 @@
14
14
  "classnames": "2.3.2",
15
15
  "copy-to-clipboard": "^3.3.3",
16
16
  "deep-copy": "1.4.2",
17
- "dtable-ui-component": "^6.0.15",
18
17
  "is-hotkey": "0.2.0",
19
18
  "is-url": "^1.2.4",
20
19
  "react-transition-group": "4.4.5",
@@ -634,5 +634,7 @@
634
634
  "More_operation": "More operation",
635
635
  "Property": "Property",
636
636
  "Comment_list": "Comment list",
637
- "Add_Comment": "Add Comment"
637
+ "Add_Comment": "Add Comment",
638
+ "Zoom_in": "Zoom in",
639
+ "Zoom_out": "Zoom out"
638
640
  }