slate-react 0.147.2 → 0.147.3
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/hooks/android-input-manager/android-input-manager.d.ts.map +1 -1
- package/dist/index.es.js +10 -1
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -1
- package/dist/slate-react.js +12 -1
- package/dist/slate-react.min.js +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"android-input-manager.d.ts","sourceRoot":"","sources":["../../../../../packages/slate-react/src/hooks/android-input-manager/android-input-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAItC,OAAO,EAAgC,KAAK,EAAE,KAAK,EAAc,MAAM,OAAO,CAAA;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"android-input-manager.d.ts","sourceRoot":"","sources":["../../../../../packages/slate-react/src/hooks/android-input-manager/android-input-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAItC,OAAO,EAAgC,KAAK,EAAE,KAAK,EAAc,MAAM,OAAO,CAAA;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AA8BvD,MAAM,MAAM,MAAM,GAAG;IAAE,EAAE,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,IAAI,CAAA;CAAE,CAAA;AA0B5D,MAAM,MAAM,gCAAgC,GAAG;IAC7C,MAAM,EAAE,WAAW,CAAA;IAEnB,4BAA4B,EAAE,aAAa,CAAC,MAAM,IAAI,CAAC,CAAA;IACvD,oBAAoB,EAAE,aAAa,CAAC,MAAM,IAAI,CAAC,CAAA;CAChD,CAAA;AAED,eAAO,MAAM,8BAA8B,6BAA6B,IAAI,CAAG,CAAA;AAE/E,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,kBAAkB,EAAE,MAAM,IAAI,CAAA;IAC9B,aAAa,EAAE,MAAM,IAAI,CAAA;IAEzB,eAAe,EAAE,MAAM,OAAO,CAAA;IAC9B,gBAAgB,EAAE,MAAM,OAAO,CAAA;IAC/B,iBAAiB,EAAE,MAAM,OAAO,CAAA;IAChC,UAAU,EAAE,MAAM,OAAO,GAAG,QAAQ,CAAA;IAEpC,gBAAgB,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,CAAA;IAC/C,oBAAoB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,KAAK,IAAI,CAAA;IAC7E,sBAAsB,EAAE,CACtB,KAAK,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,KAC1C,IAAI,CAAA;IACT,oBAAoB,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;IACjD,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC,KAAK,IAAI,CAAA;IAEnE,kBAAkB,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,KAAK,IAAI,CAAA;IACzD,WAAW,EAAE,MAAM,IAAI,CAAA;CACxB,CAAA;AAED,wBAAgB,yBAAyB,CAAC,EACxC,MAAM,EACN,4BAA4B,EAC5B,oBAAoB,GACrB,EAAE,gCAAgC,GAAG,mBAAmB,CA+7BxD"}
|
package/dist/index.es.js
CHANGED
|
@@ -4,7 +4,7 @@ import throttle from 'lodash/throttle';
|
|
|
4
4
|
import React, { useContext, createContext, useRef, useEffect, useLayoutEffect, useState, memo, forwardRef, useCallback, useReducer, useMemo, Fragment, Component } from 'react';
|
|
5
5
|
import scrollIntoView from 'scroll-into-view-if-needed';
|
|
6
6
|
import { Node, Range, Editor, Path, Point, Transforms, Location, Text as Text$1, Scrubber } from 'slate';
|
|
7
|
-
import { DOMEditor, isTrackedMutation, EDITOR_TO_FORCE_RENDER, IS_NODE_MAP_DIRTY, EDITOR_TO_PENDING_DIFFS, EDITOR_TO_PENDING_SELECTION, applyStringDiff, EDITOR_TO_PENDING_INSERTION_MARKS, isDOMSelection, isDOMNode, IS_COMPOSING, EDITOR_TO_PENDING_ACTION, EDITOR_TO_USER_MARKS, targetRange, verifyDiffState, EDITOR_TO_PLACEHOLDER_ELEMENT, normalizeStringDiff, mergeStringDiffs, normalizeRange, normalizePoint, CAN_USE_DOM, IS_ANDROID, EDITOR_TO_SCHEDULE_FLUSH, MARK_PLACEHOLDER_SYMBOL,
|
|
7
|
+
import { DOMEditor, isTrackedMutation, EDITOR_TO_FORCE_RENDER, IS_NODE_MAP_DIRTY, EDITOR_TO_PENDING_DIFFS, EDITOR_TO_PENDING_SELECTION, applyStringDiff, EDITOR_TO_PENDING_INSERTION_MARKS, isDOMSelection, isDOMNode, IS_COMPOSING, EDITOR_TO_PENDING_ACTION, EDITOR_TO_USER_MARKS, targetRange, verifyDiffState, EDITOR_TO_PLACEHOLDER_ELEMENT, normalizeStringDiff, mergeStringDiffs, IS_FIREFOX, normalizeRange, normalizePoint, CAN_USE_DOM, IS_ANDROID, EDITOR_TO_SCHEDULE_FLUSH, MARK_PLACEHOLDER_SYMBOL, PLACEHOLDER_SYMBOL, IS_WEBKIT, isTextDecorationsEqual, isElementDecorationsEqual, EDITOR_TO_KEY_TO_ELEMENT, NODE_TO_ELEMENT, ELEMENT_TO_NODE, NODE_TO_INDEX, NODE_TO_PARENT, Key, splitDecorationsByChild, isDOMElement, getSelection, IS_READ_ONLY, getActiveElement, IS_FOCUSED, getDefaultView, EDITOR_TO_WINDOW, EDITOR_TO_ELEMENT, containsShadowAware, IS_CHROME, EDITOR_TO_USER_SELECTION, HAS_BEFORE_INPUT_SUPPORT, isPlainTextOnlyPaste, Hotkeys, IS_FIREFOX_LEGACY, IS_IOS, IS_WECHATBROWSER, IS_UC_MOBILE, TRIPLE_CLICK, copyNodeInUse, EDITOR_TO_ON_CHANGE, withDOM } from 'slate-dom';
|
|
8
8
|
export { NODE_TO_INDEX, NODE_TO_PARENT } from 'slate-dom';
|
|
9
9
|
import ReactDOM from 'react-dom';
|
|
10
10
|
import { ResizeObserver } from '@juggle/resize-observer';
|
|
@@ -115,6 +115,7 @@ function createAndroidInputManager({
|
|
|
115
115
|
let flushTimeoutId = null;
|
|
116
116
|
let actionTimeoutId = null;
|
|
117
117
|
let lastCompositionActivity = 0;
|
|
118
|
+
let lastInsertText = 0;
|
|
118
119
|
let compositionCleared = false;
|
|
119
120
|
let hasUnrenderedMutations = false;
|
|
120
121
|
let idCounter = 0;
|
|
@@ -418,6 +419,10 @@ function createAndroidInputManager({
|
|
|
418
419
|
const {
|
|
419
420
|
inputType: type
|
|
420
421
|
} = event;
|
|
422
|
+
const continuesFirefoxInsert = IS_FIREFOX && type === 'insertText' && Date.now() - lastInsertText < RESOLVE_DELAY;
|
|
423
|
+
if (type === 'insertText') {
|
|
424
|
+
lastInsertText = Date.now();
|
|
425
|
+
}
|
|
421
426
|
if (type === 'insertCompositionText' || type === 'deleteCompositionText') {
|
|
422
427
|
lastCompositionActivity = Date.now();
|
|
423
428
|
if (event.data) {
|
|
@@ -696,6 +701,10 @@ function createAndroidInputManager({
|
|
|
696
701
|
if (EDITOR_TO_PENDING_INSERTION_MARKS.get(editor)) {
|
|
697
702
|
text = text.replace('\uFEFF', '');
|
|
698
703
|
}
|
|
704
|
+
if (continuesFirefoxInsert && editor.selection && !Range.equals(targetRange, editor.selection)) {
|
|
705
|
+
event.preventDefault();
|
|
706
|
+
return scheduleAction(() => Editor.insertText(editor, text));
|
|
707
|
+
}
|
|
699
708
|
// Pastes from the Android clipboard will generate `insertText` events.
|
|
700
709
|
// If the copied text contains any newlines, Android will append an
|
|
701
710
|
// extra newline to the end of the copied text.
|