@seafile/seafile-editor 1.0.85-beta1 → 1.0.85-beta2
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.
|
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
-
exports.isTextNode = exports.isStartPoint = exports.isSelectionAtBlockStart = exports.isSelectionAtBlockEnd = exports.isRangeAcrossBlocks = exports.isLastNode = exports.isLastChild = exports.isFirstNode = exports.isFirstChild = exports.isEndPoint = exports.isBlockTextEmptyAfterSelection = exports.isBlockAboveEmpty = exports.isAncestorEmpty = exports.getSelectedNodeEntryByTypes = exports.getSelectedNodeEntryByType = exports.getSelectedNodeByTypes = exports.getSelectedNodeByType = exports.getSelectedElems = exports.getQueryOptions = exports.getPreviousPath = exports.getPrevNode = exports.getParentNode = exports.getNodes = exports.getNodeType = exports.getNodeEntries = exports.getNode = exports.getNextSiblingNodes = exports.getNextNode = exports.getLastChildPath = exports.getLastChild = exports.getInlineNodes = exports.getEditorString = exports.getDeepInlineChildren = exports.getCommonNode = exports.getChildren = exports.getAboveNode = exports.getAboveBlockNode = exports.findPath = exports.findNode = exports.findDescendant = void 0;
|
|
7
|
+
exports.isTextNode = exports.isStartPoint = exports.isSelectionAtBlockStart = exports.isSelectionAtBlockEnd = exports.isRangeAcrossBlocks = exports.isLastNode = exports.isLastChild = exports.isFirstNode = exports.isFirstChild = exports.isEndPoint = exports.isBlockTextEmptyAfterSelection = exports.isBlockAboveEmpty = exports.isAncestorEmpty = exports.getSelectedNodeEntryByTypes = exports.getSelectedNodeEntryByType = exports.getSelectedNodeByTypes = exports.getSelectedNodeByType = exports.getSelectedElems = exports.getQueryOptions = exports.getPreviousPath = exports.getPrevNode = exports.getParentNode = exports.getNodes = exports.getNodeType = exports.getNodePathById = exports.getNodeEntries = exports.getNode = exports.getNextSiblingNodes = exports.getNextNode = exports.getLastChildPath = exports.getLastChild = exports.getInlineNodes = exports.getEditorString = exports.getDeepInlineChildren = exports.getCommonNode = exports.getChildren = exports.getAboveNode = exports.getAboveBlockNode = exports.findPath = exports.findNode = exports.findDescendant = void 0;
|
|
8
8
|
var _slate = require("slate");
|
|
9
9
|
var _slateReact = require("slate-react");
|
|
10
10
|
var _slugid = _interopRequireDefault(require("slugid"));
|
|
@@ -476,4 +476,20 @@ const getInlineNodes = node => {
|
|
|
476
476
|
});
|
|
477
477
|
return result.flat();
|
|
478
478
|
};
|
|
479
|
-
exports.getInlineNodes = getInlineNodes;
|
|
479
|
+
exports.getInlineNodes = getInlineNodes;
|
|
480
|
+
const getNodePathById = function (rootNode, nodeId) {
|
|
481
|
+
let path = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
482
|
+
if (rootNode.id === nodeId) return path;
|
|
483
|
+
const {
|
|
484
|
+
children = []
|
|
485
|
+
} = rootNode;
|
|
486
|
+
for (let i = 0; i < children.length; i++) {
|
|
487
|
+
const child = children[i];
|
|
488
|
+
path.push(i);
|
|
489
|
+
const nodePath = getNodePathById(child, nodeId, path);
|
|
490
|
+
if (nodePath) return nodePath;
|
|
491
|
+
path.pop();
|
|
492
|
+
}
|
|
493
|
+
return null;
|
|
494
|
+
};
|
|
495
|
+
exports.getNodePathById = getNodePathById;
|
package/dist/extension/index.js
CHANGED
|
@@ -40,6 +40,12 @@ Object.defineProperty(exports, "createSlateEditor", {
|
|
|
40
40
|
return _editor.createSlateEditor;
|
|
41
41
|
}
|
|
42
42
|
});
|
|
43
|
+
Object.defineProperty(exports, "getNodePathById", {
|
|
44
|
+
enumerable: true,
|
|
45
|
+
get: function () {
|
|
46
|
+
return _core.getNodePathById;
|
|
47
|
+
}
|
|
48
|
+
});
|
|
43
49
|
Object.defineProperty(exports, "inlineEditor", {
|
|
44
50
|
enumerable: true,
|
|
45
51
|
get: function () {
|
|
@@ -13,6 +13,7 @@ var _formatter = _interopRequireDefault(require("./formatter"));
|
|
|
13
13
|
var _editor = _interopRequireDefault(require("./editor"));
|
|
14
14
|
var _slateConvert = require("../../slate-convert");
|
|
15
15
|
var _getBrowserInfo = _interopRequireDefault(require("../../utils/get-browser-Info"));
|
|
16
|
+
var _extension = require("../../extension");
|
|
16
17
|
const LongTextInlineEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
17
18
|
let {
|
|
18
19
|
autoSave,
|
|
@@ -49,34 +50,19 @@ const LongTextInlineEditor = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) =>
|
|
|
49
50
|
}, [longTextValueChangedRef, valueRef, onSaveEditorValue]);
|
|
50
51
|
const getAttributeNode = (0, _react.useCallback)(function (node, attribute) {
|
|
51
52
|
let deep = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 4;
|
|
52
|
-
if (!node) return null;
|
|
53
|
+
if (!node || !node.getAttribute) return null;
|
|
53
54
|
if (deep === -1) return null;
|
|
54
55
|
if (node.getAttribute(attribute)) return node.getAttribute(attribute);
|
|
55
56
|
if (node.parentNode) return getAttributeNode(node.parentNode, attribute, deep--);
|
|
56
57
|
}, []);
|
|
57
|
-
const getNodePathById = (0, _react.useCallback)(function (rootNode, nodeId) {
|
|
58
|
-
let path = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
59
|
-
if (rootNode.id === nodeId) return path;
|
|
60
|
-
const {
|
|
61
|
-
children = []
|
|
62
|
-
} = rootNode;
|
|
63
|
-
for (let i = 0; i < children.length; i++) {
|
|
64
|
-
const child = children[i];
|
|
65
|
-
path.push(i);
|
|
66
|
-
const nodePath = getNodePathById(child, nodeId, path);
|
|
67
|
-
if (nodePath) return nodePath;
|
|
68
|
-
path.pop();
|
|
69
|
-
}
|
|
70
|
-
return null;
|
|
71
|
-
}, []);
|
|
72
58
|
const previewClick = (0, _react.useCallback)((event, richValue) => {
|
|
73
59
|
if (event.target.nodeName === 'A') return;
|
|
74
60
|
const nodeId = getAttributeNode(event.target, 'data-id');
|
|
75
61
|
onPreviewClick && onPreviewClick();
|
|
76
|
-
openEditor(getNodePathById({
|
|
62
|
+
openEditor((0, _extension.getNodePathById)({
|
|
77
63
|
children: richValue
|
|
78
64
|
}, nodeId));
|
|
79
|
-
}, [onPreviewClick, openEditor, getAttributeNode
|
|
65
|
+
}, [onPreviewClick, openEditor, getAttributeNode]);
|
|
80
66
|
const onEditorValueChanged = (0, _react.useCallback)(value => {
|
|
81
67
|
valueRef.current = value;
|
|
82
68
|
longTextValueChangedRef.current = true;
|