diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 8d009e1bb1..8c5dbc5dbd 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -12,7 +12,7 @@ "@seafile/react-image-lightbox": "2.0.2", "@seafile/resumablejs": "1.1.16", "@seafile/seafile-calendar": "0.0.12", - "@seafile/seafile-editor": "0.3.130", + "@seafile/seafile-editor": "0.3.131", "@seafile/slate-react": "0.54.13", "@uiw/codemirror-extensions-langs": "^4.19.4", "@uiw/react-codemirror": "^4.19.4", @@ -5202,9 +5202,9 @@ } }, "node_modules/@seafile/seafile-editor": { - "version": "0.3.130", - "resolved": "https://registry.npmjs.org/@seafile/seafile-editor/-/seafile-editor-0.3.130.tgz", - "integrity": "sha512-iAPu3ssC7OGB9rFi/IE7WYQZJnUrfeBsMtzLNYthlIjxc2lmMPgmMRLntofq0S6D+0+NtCN00gj4LqGzMbqc5Q==", + "version": "0.3.131", + "resolved": "https://registry.npmjs.org/@seafile/seafile-editor/-/seafile-editor-0.3.131.tgz", + "integrity": "sha512-mJnoGBA6rA5UwARMHa1WOB8g0qpiHwvoZhqvE1CNOomryDdF3y6h7pJo6ve6/SYP6uroXoO0CfJ6bZ8s/5fZAg==", "dependencies": { "@seafile/react-image-lightbox": "2.0.2", "@seafile/slate-react": "^0.54.13", @@ -5212,20 +5212,12 @@ "deepmerge": "^2.1.0", "detect-indent": "^4.0.0", "hast-util-sanitize": "^1.1.2", - "i18next": "22.4.6", - "i18next-browser-languagedetector": "7.0.1", - "i18next-xhr-backend": "3.2.2", "is-hotkey": "0.2.0", "is-plain-object": "3.0.1", "is-url": "^1.2.4", "lodash": "4.17.21", "mdast-util-definitions": "^1.2.2", "prismjs": "1.23.0", - "promise": "8.0.1", - "prop-types": "15.8.1", - "react": "^17.0.0", - "react-dom": "^17.0.0", - "react-i18next": "12.1.1", "reactstrap": "8.9.0", "rehype-format": "^2.2.0", "rehype-mathjax": "^2.0.0", @@ -5241,8 +5233,9 @@ "slate-history": "^0.54.2", "slate-hotkeys": "0.2.3", "slate-html-serializer": "^0.7.2", + "slate-hyperscript": "0.54.2", "slate-schema-violations": "^0.1.39", - "toggle-selection": "^1.0.6", + "unified": "7.0.0", "url-parse": "^1.4.3", "xtend": "^4.0.1" } @@ -5252,6 +5245,19 @@ "resolved": "https://registry.npmjs.org/is-hotkey/-/is-hotkey-0.2.0.tgz", "integrity": "sha512-UknnZK4RakDmTgz4PI1wIph5yxSs/mvChWs9ifnlXsKuXgWmOkY/hAE0H/k2MIqH0RlRye0i1oC07MCRSD28Mw==" }, + "node_modules/@seafile/seafile-editor/node_modules/unified": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-7.0.0.tgz", + "integrity": "sha512-j+Sm7upmmt3RXPBeA+KFGYBlHBxClnby2DtxezFKwMfhWTAklY4WbEdhwRo6c6GpuHdi04YDsyPKY/kh5a/xnQ==", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^1.1.0", + "trough": "^1.0.0", + "vfile": "^3.0.0", + "x-is-string": "^0.1.0" + } + }, "node_modules/@seafile/slate-react": { "version": "0.54.13", "resolved": "https://registry.npmjs.org/@seafile/slate-react/-/slate-react-0.54.13.tgz", @@ -21910,13 +21916,6 @@ "node": ">=0.4.0" } }, - "node_modules/promise": { - "version": "8.0.1", - "license": "MIT", - "dependencies": { - "asap": "~2.0.3" - } - }, "node_modules/promise-inflight": { "version": "1.0.1", "dev": true, @@ -24837,6 +24836,17 @@ "slate": ">=0.32.0" } }, + "node_modules/slate-hyperscript": { + "version": "0.54.2", + "resolved": "https://registry.npmjs.org/slate-hyperscript/-/slate-hyperscript-0.54.2.tgz", + "integrity": "sha512-kpwmuARVohqWU4Elz5qvaSjfjs0WFI2CeXXoyDurGPZXofWaG2M97LxK8+otuQ9pApF2PvyMcTbWI0kDndYq0g==", + "dependencies": { + "is-plain-object": "^3.0.0" + }, + "peerDependencies": { + "slate": ">=0.50.0" + } + }, "node_modules/slate-schema-violations": { "version": "0.1.39", "license": "MIT" @@ -32312,9 +32322,9 @@ } }, "@seafile/seafile-editor": { - "version": "0.3.130", - "resolved": "https://registry.npmjs.org/@seafile/seafile-editor/-/seafile-editor-0.3.130.tgz", - "integrity": "sha512-iAPu3ssC7OGB9rFi/IE7WYQZJnUrfeBsMtzLNYthlIjxc2lmMPgmMRLntofq0S6D+0+NtCN00gj4LqGzMbqc5Q==", + "version": "0.3.131", + "resolved": "https://registry.npmjs.org/@seafile/seafile-editor/-/seafile-editor-0.3.131.tgz", + "integrity": "sha512-mJnoGBA6rA5UwARMHa1WOB8g0qpiHwvoZhqvE1CNOomryDdF3y6h7pJo6ve6/SYP6uroXoO0CfJ6bZ8s/5fZAg==", "requires": { "@seafile/react-image-lightbox": "2.0.2", "@seafile/slate-react": "^0.54.13", @@ -32322,20 +32332,12 @@ "deepmerge": "^2.1.0", "detect-indent": "^4.0.0", "hast-util-sanitize": "^1.1.2", - "i18next": "22.4.6", - "i18next-browser-languagedetector": "7.0.1", - "i18next-xhr-backend": "3.2.2", "is-hotkey": "0.2.0", "is-plain-object": "3.0.1", "is-url": "^1.2.4", "lodash": "4.17.21", "mdast-util-definitions": "^1.2.2", "prismjs": "1.23.0", - "promise": "8.0.1", - "prop-types": "15.8.1", - "react": "^17.0.0", - "react-dom": "^17.0.0", - "react-i18next": "12.1.1", "reactstrap": "8.9.0", "rehype-format": "^2.2.0", "rehype-mathjax": "^2.0.0", @@ -32351,8 +32353,9 @@ "slate-history": "^0.54.2", "slate-hotkeys": "0.2.3", "slate-html-serializer": "^0.7.2", + "slate-hyperscript": "0.54.2", "slate-schema-violations": "^0.1.39", - "toggle-selection": "^1.0.6", + "unified": "7.0.0", "url-parse": "^1.4.3", "xtend": "^4.0.1" }, @@ -32361,6 +32364,19 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/is-hotkey/-/is-hotkey-0.2.0.tgz", "integrity": "sha512-UknnZK4RakDmTgz4PI1wIph5yxSs/mvChWs9ifnlXsKuXgWmOkY/hAE0H/k2MIqH0RlRye0i1oC07MCRSD28Mw==" + }, + "unified": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-7.0.0.tgz", + "integrity": "sha512-j+Sm7upmmt3RXPBeA+KFGYBlHBxClnby2DtxezFKwMfhWTAklY4WbEdhwRo6c6GpuHdi04YDsyPKY/kh5a/xnQ==", + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^1.1.0", + "trough": "^1.0.0", + "vfile": "^3.0.0", + "x-is-string": "^0.1.0" + } } } }, @@ -43978,12 +43994,6 @@ "version": "2.0.3", "dev": true }, - "promise": { - "version": "8.0.1", - "requires": { - "asap": "~2.0.3" - } - }, "promise-inflight": { "version": "1.0.1", "dev": true @@ -46127,6 +46137,14 @@ "type-of": "^2.0.1" } }, + "slate-hyperscript": { + "version": "0.54.2", + "resolved": "https://registry.npmjs.org/slate-hyperscript/-/slate-hyperscript-0.54.2.tgz", + "integrity": "sha512-kpwmuARVohqWU4Elz5qvaSjfjs0WFI2CeXXoyDurGPZXofWaG2M97LxK8+otuQ9pApF2PvyMcTbWI0kDndYq0g==", + "requires": { + "is-plain-object": "^3.0.0" + } + }, "slate-schema-violations": { "version": "0.1.39" }, diff --git a/frontend/package.json b/frontend/package.json index 3893d9b2f3..705d9e1a33 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -7,7 +7,7 @@ "@seafile/react-image-lightbox": "2.0.2", "@seafile/resumablejs": "1.1.16", "@seafile/seafile-calendar": "0.0.12", - "@seafile/seafile-editor": "0.3.130", + "@seafile/seafile-editor": "0.3.131", "@seafile/slate-react": "0.54.13", "@uiw/codemirror-extensions-langs": "^4.19.4", "@uiw/react-codemirror": "^4.19.4", diff --git a/frontend/src/pages/markdown-editor/rich-markdown-editor/comment-panel.js b/frontend/src/pages/markdown-editor/rich-markdown-editor/comment-panel.js index 2bb02aca65..620894546c 100644 --- a/frontend/src/pages/markdown-editor/rich-markdown-editor/comment-panel.js +++ b/frontend/src/pages/markdown-editor/rich-markdown-editor/comment-panel.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import moment from 'moment'; import { Button } from 'reactstrap'; import { MentionsInput, Mention } from 'react-mentions'; -import { EditorBuilder } from '@seafile/seafile-editor'; +import { EditorContext } from '@seafile/seafile-editor'; import { gettext } from '../../../utils/constants'; import { Utils } from '../../../utils/utils'; import { seafileAPI } from '../../../utils/seafile-api'; @@ -166,7 +166,7 @@ class CommentPanel extends React.Component { } scrollToQuote = (path) => { - const editorRef = EditorBuilder.getEditorRef(); + const editorRef = EditorContext.getEditorRef(); editorRef.scrollToQuote(path); } diff --git a/frontend/src/pages/markdown-editor/rich-markdown-editor/index.js b/frontend/src/pages/markdown-editor/rich-markdown-editor/index.js index 1c9ff559ab..6a7ba4f06d 100644 --- a/frontend/src/pages/markdown-editor/rich-markdown-editor/index.js +++ b/frontend/src/pages/markdown-editor/rich-markdown-editor/index.js @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import { EditorBuilder, Toolbar, MarkdownEditor, UserHelp } from '@seafile/seafile-editor'; +import { EditorContext, Toolbar, MarkdownEditor, UserHelp } from '@seafile/seafile-editor'; import SidePanel from './side-panel'; import '../css/rich-editor.css'; @@ -65,7 +65,7 @@ class RichMarkdownEditor extends React.Component { } addLink = (fileName, url, isImage) => { - const editorRef = EditorBuilder.getEditorRef(); + const editorRef = EditorContext.getEditorRef(); editorRef.addLink(fileName, url, isImage); }