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.
@@ -156,7 +156,7 @@ export var editorRender = function editorRender(sourceCode) {
156
156
  if (stack.length) {
157
157
  // 如果栈不为空,说明为块级元素内的文本,每一行都应推到块级元素中
158
158
  if (lines[0]) {
159
- stack[stack.length - 1].element.append(delimiter ? createDelimiter(lines[0]) : lines[0]);
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[stack.length - 1].element.append(delimiter ? createDelimiter(lines[i]) : lines[i]);
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[fromOffsetTops.length - 1] >= fromLimit || toOffsetTops[toOffsetTops.length - 1] >= toLimit;) {
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 targetRange = e.getTargetRanges()[0];
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
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "x-star-editor",
3
- "version": "0.3.9",
3
+ "version": "0.3.11",
4
4
  "description": "An editor developed by turingstar",
5
5
  "license": "MIT",
6
6
  "module": "dist/index.js",