slate-react 0.97.2 → 0.98.0
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/components/editable.d.ts.map +1 -1
- package/dist/index.es.js +55 -61
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +55 -59
- package/dist/index.js.map +1 -1
- package/dist/plugin/react-editor.d.ts.map +1 -1
- package/dist/slate-react.js +55 -59
- package/dist/slate-react.min.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-editor.d.ts","sourceRoot":"","sources":["../packages/slate-react/src/plugin/react-editor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"react-editor.d.ts","sourceRoot":"","sources":["../packages/slate-react/src/plugin/react-editor.ts"],"names":[],"mappings":"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"}
|
package/dist/slate-react.js
CHANGED
|
@@ -1799,15 +1799,37 @@
|
|
|
1799
1799
|
|
|
1800
1800
|
if (el) {
|
|
1801
1801
|
if (isDOMSelection(domRange)) {
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1802
|
+
// COMPAT: In firefox the normal seletion way does not work
|
|
1803
|
+
// (https://github.com/ianstormtaylor/slate/pull/5486#issue-1820720223)
|
|
1804
|
+
if (IS_FIREFOX && domRange.rangeCount > 1) {
|
|
1805
|
+
focusNode = domRange.focusNode; // Focus node works fine
|
|
1806
|
+
|
|
1807
|
+
var firstRange = domRange.getRangeAt(0);
|
|
1808
|
+
var lastRange = domRange.getRangeAt(domRange.rangeCount - 1); // Right to left
|
|
1809
|
+
|
|
1810
|
+
if (firstRange.startContainer === focusNode) {
|
|
1811
|
+
anchorNode = lastRange.endContainer;
|
|
1812
|
+
anchorOffset = lastRange.endOffset;
|
|
1813
|
+
focusOffset = firstRange.startOffset;
|
|
1814
|
+
} else {
|
|
1815
|
+
// Left to right
|
|
1816
|
+
anchorNode = firstRange.startContainer;
|
|
1817
|
+
anchorOffset = firstRange.endOffset;
|
|
1818
|
+
focusOffset = lastRange.startOffset;
|
|
1819
|
+
}
|
|
1820
|
+
} else {
|
|
1821
|
+
anchorNode = domRange.anchorNode;
|
|
1822
|
+
anchorOffset = domRange.anchorOffset;
|
|
1823
|
+
focusNode = domRange.focusNode;
|
|
1824
|
+
focusOffset = domRange.focusOffset;
|
|
1825
|
+
} // COMPAT: There's a bug in chrome that always returns `true` for
|
|
1806
1826
|
// `isCollapsed` for a Selection that comes from a ShadowRoot.
|
|
1807
1827
|
// (2020/08/08)
|
|
1808
1828
|
// https://bugs.chromium.org/p/chromium/issues/detail?id=447523
|
|
1829
|
+
// IsCollapsed might not work in firefox, but this will
|
|
1830
|
+
|
|
1809
1831
|
|
|
1810
|
-
if (IS_CHROME && hasShadowRoot(anchorNode)) {
|
|
1832
|
+
if (IS_CHROME && hasShadowRoot(anchorNode) || IS_FIREFOX) {
|
|
1811
1833
|
isCollapsed = domRange.anchorNode === domRange.focusNode && domRange.anchorOffset === domRange.focusOffset;
|
|
1812
1834
|
} else {
|
|
1813
1835
|
isCollapsed = domRange.isCollapsed;
|
|
@@ -1852,46 +1874,6 @@
|
|
|
1852
1874
|
if (!focus) {
|
|
1853
1875
|
return null;
|
|
1854
1876
|
}
|
|
1855
|
-
/**
|
|
1856
|
-
* suppose we have this document:
|
|
1857
|
-
*
|
|
1858
|
-
* { type: 'paragraph',
|
|
1859
|
-
* children: [
|
|
1860
|
-
* { text: 'foo ' },
|
|
1861
|
-
* { text: 'bar' },
|
|
1862
|
-
* { text: ' baz' }
|
|
1863
|
-
* ]
|
|
1864
|
-
* }
|
|
1865
|
-
*
|
|
1866
|
-
* a double click on "bar" on chrome will create this range:
|
|
1867
|
-
*
|
|
1868
|
-
* anchor -> [0,1] offset 0
|
|
1869
|
-
* focus -> [0,1] offset 3
|
|
1870
|
-
*
|
|
1871
|
-
* while on firefox will create this range:
|
|
1872
|
-
*
|
|
1873
|
-
* anchor -> [0,0] offset 4
|
|
1874
|
-
* focus -> [0,2] offset 0
|
|
1875
|
-
*
|
|
1876
|
-
* let's try to fix it...
|
|
1877
|
-
*/
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
if (IS_FIREFOX && !isCollapsed && anchorNode !== focusNode) {
|
|
1881
|
-
var isEnd = slate.Editor.isEnd(editor, anchor, anchor.path);
|
|
1882
|
-
var isStart = slate.Editor.isStart(editor, focus, focus.path);
|
|
1883
|
-
|
|
1884
|
-
if (isEnd) {
|
|
1885
|
-
var after = slate.Editor.after(editor, anchor); // Editor.after() might return undefined
|
|
1886
|
-
|
|
1887
|
-
anchor = after || anchor;
|
|
1888
|
-
}
|
|
1889
|
-
|
|
1890
|
-
if (isStart) {
|
|
1891
|
-
var before = slate.Editor.before(editor, focus);
|
|
1892
|
-
focus = before || focus;
|
|
1893
|
-
}
|
|
1894
|
-
}
|
|
1895
1877
|
|
|
1896
1878
|
var range = {
|
|
1897
1879
|
anchor: anchor,
|
|
@@ -5214,13 +5196,32 @@
|
|
|
5214
5196
|
|
|
5215
5197
|
if (!selection && !hasDomSelection) {
|
|
5216
5198
|
return;
|
|
5199
|
+
} // Get anchorNode and focusNode
|
|
5200
|
+
|
|
5201
|
+
|
|
5202
|
+
var focusNode = domSelection.focusNode;
|
|
5203
|
+
var anchorNode; // COMPAT: In firefox the normal seletion way does not work
|
|
5204
|
+
// (https://github.com/ianstormtaylor/slate/pull/5486#issue-1820720223)
|
|
5205
|
+
|
|
5206
|
+
if (IS_FIREFOX && domSelection.rangeCount > 1) {
|
|
5207
|
+
var firstRange = domSelection.getRangeAt(0);
|
|
5208
|
+
var lastRange = domSelection.getRangeAt(domSelection.rangeCount - 1); // Right to left
|
|
5209
|
+
|
|
5210
|
+
if (firstRange.startContainer === focusNode) {
|
|
5211
|
+
anchorNode = lastRange.endContainer;
|
|
5212
|
+
} else {
|
|
5213
|
+
// Left to right
|
|
5214
|
+
anchorNode = firstRange.startContainer;
|
|
5215
|
+
}
|
|
5216
|
+
} else {
|
|
5217
|
+
anchorNode = domSelection.anchorNode;
|
|
5217
5218
|
} // verify that the dom selection is in the editor
|
|
5218
5219
|
|
|
5219
5220
|
|
|
5220
5221
|
var editorElement = EDITOR_TO_ELEMENT.get(editor);
|
|
5221
5222
|
var hasDomSelectionInEditor = false;
|
|
5222
5223
|
|
|
5223
|
-
if (editorElement.contains(
|
|
5224
|
+
if (editorElement.contains(anchorNode) && editorElement.contains(focusNode)) {
|
|
5224
5225
|
hasDomSelectionInEditor = true;
|
|
5225
5226
|
} // If the DOM selection is in the editor and the editor selection is already correct, we're done.
|
|
5226
5227
|
|
|
@@ -5234,16 +5235,14 @@
|
|
|
5234
5235
|
});
|
|
5235
5236
|
|
|
5236
5237
|
if (slateRange && slate.Range.equals(slateRange, selection)) {
|
|
5237
|
-
var _anchorNode$parentEle;
|
|
5238
|
+
var _anchorNode, _anchorNode$parentEle;
|
|
5238
5239
|
|
|
5239
5240
|
if (!state.hasMarkPlaceholder) {
|
|
5240
5241
|
return;
|
|
5241
5242
|
} // Ensure selection is inside the mark placeholder
|
|
5242
5243
|
|
|
5243
5244
|
|
|
5244
|
-
|
|
5245
|
-
|
|
5246
|
-
if (anchorNode !== null && anchorNode !== void 0 && (_anchorNode$parentEle = anchorNode.parentElement) !== null && _anchorNode$parentEle !== void 0 && _anchorNode$parentEle.hasAttribute('data-slate-mark-placeholder')) {
|
|
5245
|
+
if ((_anchorNode = anchorNode) !== null && _anchorNode !== void 0 && (_anchorNode$parentEle = _anchorNode.parentElement) !== null && _anchorNode$parentEle !== void 0 && _anchorNode$parentEle.hasAttribute('data-slate-mark-placeholder')) {
|
|
5247
5246
|
return;
|
|
5248
5247
|
}
|
|
5249
5248
|
}
|
|
@@ -5280,20 +5279,17 @@
|
|
|
5280
5279
|
}
|
|
5281
5280
|
|
|
5282
5281
|
return newDomRange;
|
|
5283
|
-
};
|
|
5282
|
+
}; // In firefox if there is more then 1 range and we call setDomSelection we remove the ability to select more cells in a table
|
|
5283
|
+
|
|
5284
|
+
|
|
5285
|
+
if (domSelection.rangeCount <= 1) {
|
|
5286
|
+
setDomSelection();
|
|
5287
|
+
}
|
|
5284
5288
|
|
|
5285
|
-
var newDomRange = setDomSelection();
|
|
5286
5289
|
var ensureSelection = ((_androidInputManagerR2 = androidInputManagerRef.current) === null || _androidInputManagerR2 === void 0 ? void 0 : _androidInputManagerR2.isFlushing()) === 'action';
|
|
5287
5290
|
|
|
5288
5291
|
if (!IS_ANDROID || !ensureSelection) {
|
|
5289
5292
|
setTimeout(function () {
|
|
5290
|
-
// COMPAT: In Firefox, it's not enough to create a range, you also need
|
|
5291
|
-
// to focus the contenteditable element too. (2016/11/16)
|
|
5292
|
-
if (newDomRange && IS_FIREFOX) {
|
|
5293
|
-
var el = ReactEditor.toDOMNode(editor, editor);
|
|
5294
|
-
el.focus();
|
|
5295
|
-
}
|
|
5296
|
-
|
|
5297
5293
|
state.isUpdatingSelection = false;
|
|
5298
5294
|
});
|
|
5299
5295
|
return;
|