x-star-editor 0.3.9 → 0.3.11
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/utils/markdown.js
CHANGED
|
@@ -156,7 +156,7 @@ export var editorRender = function editorRender(sourceCode) {
|
|
|
156
156
|
if (stack.length) {
|
|
157
157
|
// 如果栈不为空,说明为块级元素内的文本,每一行都应推到块级元素中
|
|
158
158
|
if (lines[0]) {
|
|
159
|
-
stack
|
|
159
|
+
stack.at(-1).element.append(delimiter ? createDelimiter(lines[0]) : lines[0]);
|
|
160
160
|
}
|
|
161
161
|
for (var i = 1; i < lines.length; i++) {
|
|
162
162
|
for (var j = stack.length - 1; j; j--) {
|
|
@@ -165,7 +165,7 @@ export var editorRender = function editorRender(sourceCode) {
|
|
|
165
165
|
stack[0].element.append("\u200B");
|
|
166
166
|
pushElement(0);
|
|
167
167
|
if (lines[i]) {
|
|
168
|
-
stack
|
|
168
|
+
stack.at(-1).element.append(delimiter ? createDelimiter(lines[i]) : lines[i]);
|
|
169
169
|
}
|
|
170
170
|
}
|
|
171
171
|
scanOffset += text.length;
|
|
@@ -110,7 +110,7 @@ var XStarEditor = /*#__PURE__*/React.forwardRef(function (_ref2, ref) {
|
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
|
-
for (; fromOffsetTops
|
|
113
|
+
for (; fromOffsetTops.at(-1) >= fromLimit || toOffsetTops.at(-1) >= toLimit;) {
|
|
114
114
|
fromOffsetTops.pop();
|
|
115
115
|
toOffsetTops.pop();
|
|
116
116
|
}
|
|
@@ -21,6 +21,8 @@ export interface XStarMdEditorPlugin {
|
|
|
21
21
|
export interface XStarMdEditorHandle {
|
|
22
22
|
exec: Executor;
|
|
23
23
|
getEditorContainer: () => HTMLDivElement;
|
|
24
|
+
getValue: () => string;
|
|
25
|
+
setValue: (value: string) => void;
|
|
24
26
|
}
|
|
25
27
|
export interface XStarMdEditorProps {
|
|
26
28
|
/**
|
|
@@ -82,6 +82,26 @@ var XStarMdEditor = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
82
82
|
exec: exec,
|
|
83
83
|
getEditorContainer: function getEditorContainer() {
|
|
84
84
|
return containerRef.current;
|
|
85
|
+
},
|
|
86
|
+
getValue: function getValue() {
|
|
87
|
+
return exec(function (_ref2) {
|
|
88
|
+
var sourceCode = _ref2.sourceCode;
|
|
89
|
+
return sourceCode;
|
|
90
|
+
});
|
|
91
|
+
},
|
|
92
|
+
setValue: function setValue(value) {
|
|
93
|
+
return exec(function (_ref3) {
|
|
94
|
+
var selection = _ref3.selection,
|
|
95
|
+
dispatch = _ref3.dispatch;
|
|
96
|
+
return dispatch({
|
|
97
|
+
type: 'set',
|
|
98
|
+
payload: {
|
|
99
|
+
sourceCode: value,
|
|
100
|
+
selection: selection
|
|
101
|
+
},
|
|
102
|
+
selection: selection
|
|
103
|
+
});
|
|
104
|
+
});
|
|
85
105
|
}
|
|
86
106
|
};
|
|
87
107
|
}, []);
|
|
@@ -190,7 +210,8 @@ var XStarMdEditor = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
190
210
|
return;
|
|
191
211
|
}
|
|
192
212
|
var listener = function listener(e) {
|
|
193
|
-
var
|
|
213
|
+
var _e$getTargetRanges$, _window$getSelection;
|
|
214
|
+
var targetRange = (_e$getTargetRanges$ = e.getTargetRanges()[0]) !== null && _e$getTargetRanges$ !== void 0 ? _e$getTargetRanges$ : (_window$getSelection = window.getSelection()) === null || _window$getSelection === void 0 ? void 0 : _window$getSelection.getRangeAt(0);
|
|
194
215
|
if (!targetRange) {
|
|
195
216
|
return;
|
|
196
217
|
}
|