Skip to content
This repository was archived by the owner on Feb 6, 2023. It is now read-only.

Commit 197d481

Browse files
committed
Simplify editOn* helpers and improve consistency
1 parent 6587984 commit 197d481

File tree

2 files changed

+5
-16
lines changed

2 files changed

+5
-16
lines changed

src/component/handlers/edit/editOnInput.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ var DraftModifier = require('DraftModifier');
2020
var DraftOffsetKey = require('DraftOffsetKey');
2121
var EditorState = require('EditorState');
2222
var UserAgent = require('UserAgent');
23-
var ReactDOM = require('ReactDOM');
2423

2524
var findAncestorOffsetKey = require('findAncestorOffsetKey');
2625
var nullthrows = require('nullthrows');
@@ -47,9 +46,8 @@ function editOnInput(editor: DraftEditor): void {
4746
editor._pendingStateFromBeforeInput = undefined;
4847
}
4948

50-
var domSelection = ReactDOM.findDOMNode(
51-
editor.refs.editor,
52-
).ownerDocument.defaultView.getSelection();
49+
const editorNode = nullthrows(editor.editor);
50+
const domSelection = editorNode.ownerDocument.defaultView.getSelection();
5351

5452
var {anchorNode, isCollapsed} = domSelection;
5553
const isNotTextNode = anchorNode.nodeType !== Node.TEXT_NODE;

src/component/handlers/edit/editOnSelect.js

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,9 @@
1616
import type DraftEditor from 'DraftEditor.react';
1717

1818
var EditorState = require('EditorState');
19-
var ReactDOM = require('ReactDOM');
2019

2120
var getDraftEditorSelection = require('getDraftEditorSelection');
22-
const invariant = require('invariant');
21+
const nullthrows = require('nullthrows');
2322

2423
function editOnSelect(editor: DraftEditor): void {
2524
if (
@@ -30,16 +29,8 @@ function editOnSelect(editor: DraftEditor): void {
3029
}
3130

3231
var editorState = editor.props.editorState;
33-
const editorNode = ReactDOM.findDOMNode(editor.editorContainer);
34-
invariant(editorNode, 'Missing editorNode');
35-
invariant(
36-
editorNode.firstChild.nodeType === 1,
37-
'editorNode.firstChild is not an Element',
38-
);
39-
var documentSelection = getDraftEditorSelection(
40-
editorState,
41-
editorNode.firstChild,
42-
);
32+
const editorNode = nullthrows(editor.editor);
33+
var documentSelection = getDraftEditorSelection(editorState, editorNode);
4334
var updatedSelectionState = documentSelection.selectionState;
4435

4536
if (updatedSelectionState !== editorState.getSelection()) {

0 commit comments

Comments
 (0)