slate-react 0.93.0 → 0.94.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.
@@ -1,91 +1,124 @@
1
1
  import { BaseEditor, Editor, Node, Path, Point, Range } from 'slate';
2
- import { Key } from '../utils/key';
2
+ import { TextDiff } from '../utils/diff-text';
3
3
  import { DOMNode, DOMPoint, DOMRange, DOMSelection, DOMStaticRange } from '../utils/dom';
4
+ import { Key } from '../utils/key';
4
5
  /**
5
6
  * A React and DOM-specific version of the `Editor` interface.
6
7
  */
7
8
  export interface ReactEditor extends BaseEditor {
9
+ hasEditableTarget: (editor: ReactEditor, target: EventTarget | null) => target is DOMNode;
10
+ hasRange: (editor: ReactEditor, range: Range) => boolean;
11
+ hasSelectableTarget: (editor: ReactEditor, target: EventTarget | null) => boolean;
12
+ hasTarget: (editor: ReactEditor, target: EventTarget | null) => target is DOMNode;
8
13
  insertData: (data: DataTransfer) => void;
9
14
  insertFragmentData: (data: DataTransfer) => boolean;
10
15
  insertTextData: (data: DataTransfer) => boolean;
11
- setFragmentData: (data: DataTransfer, originEvent?: 'drag' | 'copy' | 'cut') => void;
12
- hasRange: (editor: ReactEditor, range: Range) => boolean;
13
- hasTarget: (editor: ReactEditor, target: EventTarget | null) => target is DOMNode;
14
- hasEditableTarget: (editor: ReactEditor, target: EventTarget | null) => target is DOMNode;
15
- hasSelectableTarget: (editor: ReactEditor, target: EventTarget | null) => boolean;
16
16
  isTargetInsideNonReadonlyVoid: (editor: ReactEditor, target: EventTarget | null) => boolean;
17
+ setFragmentData: (data: DataTransfer, originEvent?: 'drag' | 'copy' | 'cut') => void;
17
18
  }
18
- export declare const ReactEditor: {
19
+ export interface ReactEditorInterface {
19
20
  /**
20
- * Check if the user is currently composing inside the editor.
21
+ * Experimental and android specific: Get pending diffs
21
22
  */
22
- isComposing(editor: ReactEditor): boolean;
23
+ androidPendingDiffs: (editor: Editor) => TextDiff[] | undefined;
23
24
  /**
24
- * Return the host window of the current editor.
25
+ * Experimental and android specific: Flush all pending diffs and cancel composition at the next possible time.
25
26
  */
26
- getWindow(editor: ReactEditor): Window;
27
+ androidScheduleFlush: (editor: Editor) => void;
27
28
  /**
28
- * Find a key for a Slate node.
29
+ * Blur the editor.
29
30
  */
30
- findKey(editor: ReactEditor, node: Node): Key;
31
+ blur: (editor: ReactEditor) => void;
31
32
  /**
32
- * Find the path of Slate node.
33
+ * Deselect the editor.
33
34
  */
34
- findPath(editor: ReactEditor, node: Node): Path;
35
+ deselect: (editor: ReactEditor) => void;
35
36
  /**
36
37
  * Find the DOM node that implements DocumentOrShadowRoot for the editor.
37
38
  */
38
- findDocumentOrShadowRoot(editor: ReactEditor): Document | ShadowRoot;
39
+ findDocumentOrShadowRoot: (editor: ReactEditor) => Document | ShadowRoot;
39
40
  /**
40
- * Check if the editor is focused.
41
+ * Get the target range from a DOM `event`.
41
42
  */
42
- isFocused(editor: ReactEditor): boolean;
43
+ findEventRange: (editor: ReactEditor, event: any) => Range;
43
44
  /**
44
- * Check if the editor is in read-only mode.
45
+ * Find a key for a Slate node.
45
46
  */
46
- isReadOnly(editor: ReactEditor): boolean;
47
+ findKey: (editor: ReactEditor, node: Node) => Key;
47
48
  /**
48
- * Blur the editor.
49
+ * Find the path of Slate node.
49
50
  */
50
- blur(editor: ReactEditor): void;
51
+ findPath: (editor: ReactEditor, node: Node) => Path;
51
52
  /**
52
53
  * Focus the editor.
53
54
  */
54
- focus(editor: ReactEditor): void;
55
+ focus: (editor: ReactEditor) => void;
55
56
  /**
56
- * Deselect the editor.
57
+ * Return the host window of the current editor.
57
58
  */
58
- deselect(editor: ReactEditor): void;
59
+ getWindow: (editor: ReactEditor) => Window;
59
60
  /**
60
61
  * Check if a DOM node is within the editor.
61
62
  */
62
- hasDOMNode(editor: ReactEditor, target: DOMNode, options?: {
63
+ hasDOMNode: (editor: ReactEditor, target: DOMNode, options?: {
63
64
  editable?: boolean;
64
- }): boolean;
65
+ }) => boolean;
66
+ /**
67
+ * Check if the target is editable and in the editor.
68
+ */
69
+ hasEditableTarget: (editor: ReactEditor, target: EventTarget | null) => target is DOMNode;
70
+ /**
71
+ *
72
+ */
73
+ hasRange: (editor: ReactEditor, range: Range) => boolean;
74
+ /**
75
+ * Check if the target can be selectable
76
+ */
77
+ hasSelectableTarget: (editor: ReactEditor, target: EventTarget | null) => boolean;
78
+ /**
79
+ * Check if the target is in the editor.
80
+ */
81
+ hasTarget: (editor: ReactEditor, target: EventTarget | null) => target is DOMNode;
65
82
  /**
66
83
  * Insert data from a `DataTransfer` into the editor.
67
84
  */
68
- insertData(editor: ReactEditor, data: DataTransfer): void;
85
+ insertData: (editor: ReactEditor, data: DataTransfer) => void;
69
86
  /**
70
87
  * Insert fragment data from a `DataTransfer` into the editor.
71
88
  */
72
- insertFragmentData(editor: ReactEditor, data: DataTransfer): boolean;
89
+ insertFragmentData: (editor: ReactEditor, data: DataTransfer) => boolean;
73
90
  /**
74
91
  * Insert text data from a `DataTransfer` into the editor.
75
92
  */
76
- insertTextData(editor: ReactEditor, data: DataTransfer): boolean;
93
+ insertTextData: (editor: ReactEditor, data: DataTransfer) => boolean;
94
+ /**
95
+ * Check if the user is currently composing inside the editor.
96
+ */
97
+ isComposing: (editor: ReactEditor) => boolean;
98
+ /**
99
+ * Check if the editor is focused.
100
+ */
101
+ isFocused: (editor: ReactEditor) => boolean;
102
+ /**
103
+ * Check if the editor is in read-only mode.
104
+ */
105
+ isReadOnly: (editor: ReactEditor) => boolean;
106
+ /**
107
+ * Check if the target is inside void and in an non-readonly editor.
108
+ */
109
+ isTargetInsideNonReadonlyVoid: (editor: ReactEditor, target: EventTarget | null) => boolean;
77
110
  /**
78
111
  * Sets data from the currently selected fragment on a `DataTransfer`.
79
112
  */
80
- setFragmentData(editor: ReactEditor, data: DataTransfer, originEvent?: "drag" | "copy" | "cut" | undefined): void;
113
+ setFragmentData: (editor: ReactEditor, data: DataTransfer, originEvent?: 'drag' | 'copy' | 'cut') => void;
81
114
  /**
82
115
  * Find the native DOM element from a Slate node.
83
116
  */
84
- toDOMNode(editor: ReactEditor, node: Node): HTMLElement;
117
+ toDOMNode: (editor: ReactEditor, node: Node) => HTMLElement;
85
118
  /**
86
119
  * Find a native DOM selection point from a Slate point.
87
120
  */
88
- toDOMPoint(editor: ReactEditor, point: Point): DOMPoint;
121
+ toDOMPoint: (editor: ReactEditor, point: Point) => DOMPoint;
89
122
  /**
90
123
  * Find a native DOM range from a Slate `range`.
91
124
  *
@@ -94,56 +127,25 @@ export declare const ReactEditor: {
94
127
  * there is no way to create a reverse DOM Range using Range.setStart/setEnd
95
128
  * according to https://dom.spec.whatwg.org/#concept-range-bp-set.
96
129
  */
97
- toDOMRange(editor: ReactEditor, range: Range): DOMRange;
130
+ toDOMRange: (editor: ReactEditor, range: Range) => DOMRange;
98
131
  /**
99
132
  * Find a Slate node from a native DOM `element`.
100
133
  */
101
- toSlateNode(editor: ReactEditor, domNode: DOMNode): Node;
102
- /**
103
- * Get the target range from a DOM `event`.
104
- */
105
- findEventRange(editor: ReactEditor, event: any): Range;
134
+ toSlateNode: (editor: ReactEditor, domNode: DOMNode) => Node;
106
135
  /**
107
136
  * Find a Slate point from a DOM selection's `domNode` and `domOffset`.
108
137
  */
109
- toSlatePoint<T extends boolean>(editor: ReactEditor, domPoint: DOMPoint, options: {
138
+ toSlatePoint: <T extends boolean>(editor: ReactEditor, domPoint: DOMPoint, options: {
110
139
  exactMatch: boolean;
111
140
  suppressThrow: T;
112
- }): T extends true ? import("slate").BasePoint | null : import("slate").BasePoint;
141
+ }) => T extends true ? Point | null : Point;
113
142
  /**
114
143
  * Find a Slate range from a DOM range or selection.
115
144
  */
116
- toSlateRange<T_1 extends boolean>(editor: ReactEditor, domRange: DOMRange | DOMStaticRange | DOMSelection, options: {
145
+ toSlateRange: <T extends boolean>(editor: ReactEditor, domRange: DOMRange | DOMStaticRange | DOMSelection, options: {
117
146
  exactMatch: boolean;
118
- suppressThrow: T_1;
119
- }): T_1 extends true ? import("slate").BaseSelection : import("slate").BaseRange & {
120
- placeholder?: string | undefined;
121
- onPlaceholderResize?: ((node: HTMLElement | null) => void) | undefined;
122
- };
123
- hasRange(editor: ReactEditor, range: Range): boolean;
124
- /**
125
- * Check if the target is in the editor.
126
- */
127
- hasTarget(editor: ReactEditor, target: EventTarget | null): target is DOMNode;
128
- /**
129
- * Check if the target is editable and in the editor.
130
- */
131
- hasEditableTarget(editor: ReactEditor, target: EventTarget | null): target is DOMNode;
132
- /**
133
- * Check if the target can be selectable
134
- */
135
- hasSelectableTarget(editor: ReactEditor, target: EventTarget | null): boolean;
136
- /**
137
- * Check if the target is inside void and in an non-readonly editor.
138
- */
139
- isTargetInsideNonReadonlyVoid(editor: ReactEditor, target: EventTarget | null): boolean;
140
- /**
141
- * Experimental and android specific: Flush all pending diffs and cancel composition at the next possible time.
142
- */
143
- androidScheduleFlush(editor: Editor): void;
144
- /**
145
- * Experimental and android specific: Get pending diffs
146
- */
147
- androidPendingDiffs(editor: Editor): import("../utils/diff-text").TextDiff[] | undefined;
148
- };
147
+ suppressThrow: T;
148
+ }) => T extends true ? Range | null : Range;
149
+ }
150
+ export declare const ReactEditor: ReactEditorInterface;
149
151
  //# sourceMappingURL=react-editor.d.ts.map
@@ -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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"}