slate-react 0.134.0 → 0.134.1-20261014004933
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/hooks/android-input-manager/android-input-manager.d.ts +2 -0
- package/dist/hooks/android-input-manager/android-input-manager.d.ts.map +1 -1
- package/dist/hooks/android-input-manager/use-android-input-manager.d.ts.map +1 -1
- package/dist/index.es.js +30 -2
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +28 -2
- package/dist/index.js.map +1 -1
- package/dist/plugin/with-react.d.ts.map +1 -1
- package/dist/slate-react.js +28 -2
- package/dist/slate-react.min.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editable.d.ts","sourceRoot":"","sources":["../../../../packages/slate-react/src/components/editable.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"editable.d.ts","sourceRoot":"","sources":["../../../../packages/slate-react/src/components/editable.tsx"],"names":[],"mappings":"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"}
|
|
@@ -11,8 +11,10 @@ export type CreateAndroidInputManagerOptions = {
|
|
|
11
11
|
scheduleOnDOMSelectionChange: DebouncedFunc<() => void>;
|
|
12
12
|
onDOMSelectionChange: DebouncedFunc<() => void>;
|
|
13
13
|
};
|
|
14
|
+
export declare const EDITOR_TO_FLUSH_DEFERRED_DIFFS: WeakMap<ReactEditor, () => void>;
|
|
14
15
|
export type AndroidInputManager = {
|
|
15
16
|
flush: () => void;
|
|
17
|
+
flushDeferredDiffs: () => void;
|
|
16
18
|
scheduleFlush: () => void;
|
|
17
19
|
hasPendingDiffs: () => boolean;
|
|
18
20
|
hasPendingAction: () => boolean;
|
|
@@ -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;AAyBvD,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,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,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,
|
|
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;AAyBvD,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,CAs3BxD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-android-input-manager.d.ts","sourceRoot":"","sources":["../../../../../packages/slate-react/src/hooks/android-input-manager/use-android-input-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAA;AAI3C,OAAO,EAEL,gCAAgC,
|
|
1
|
+
{"version":3,"file":"use-android-input-manager.d.ts","sourceRoot":"","sources":["../../../../../packages/slate-react/src/hooks/android-input-manager/use-android-input-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAA;AAI3C,OAAO,EAEL,gCAAgC,EAEjC,MAAM,yBAAyB,CAAA;AAIhC,KAAK,6BAA6B,GAAG;IACnC,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,CAAA;CAC7B,GAAG,IAAI,CACN,gCAAgC,EAChC,QAAQ,GAAG,aAAa,GAAG,mBAAmB,CAC/C,CAAA;AAQD,eAAO,MAAM,sBAAsB,yBAER,6BAA6B,iEA+BnD,CAAA"}
|
package/dist/index.es.js
CHANGED
|
@@ -103,12 +103,14 @@ const COMPOSITION_RECHECK_DELAY = 50;
|
|
|
103
103
|
const debug = (..._) => {};
|
|
104
104
|
// Type guard to check if a value is a DataTransfer
|
|
105
105
|
const isDataTransfer = value => (value === null || value === void 0 ? void 0 : value.constructor.name) === 'DataTransfer';
|
|
106
|
+
const EDITOR_TO_FLUSH_DEFERRED_DIFFS = new WeakMap();
|
|
106
107
|
function createAndroidInputManager({
|
|
107
108
|
editor,
|
|
108
109
|
scheduleOnDOMSelectionChange,
|
|
109
110
|
onDOMSelectionChange
|
|
110
111
|
}) {
|
|
111
112
|
let flushing = false;
|
|
113
|
+
let flushingDeferredDiffs = false;
|
|
112
114
|
let compositionEndTimeoutId = null;
|
|
113
115
|
let flushTimeoutId = null;
|
|
114
116
|
let actionTimeoutId = null;
|
|
@@ -202,7 +204,7 @@ function createAndroidInputManager({
|
|
|
202
204
|
// Composing into a leaf that already has text is unaffected: applying the
|
|
203
205
|
// diff there only updates `textContent`, so the value still updates on
|
|
204
206
|
// every `compositionupdate`.
|
|
205
|
-
if (isCompositionLive() && hasPendingDiffsInNewLeaf()) {
|
|
207
|
+
if (!flushingDeferredDiffs && isCompositionLive() && hasPendingDiffsInNewLeaf()) {
|
|
206
208
|
flushTimeoutId = setTimeout(flush, COMPOSITION_RECHECK_DELAY);
|
|
207
209
|
return;
|
|
208
210
|
}
|
|
@@ -285,6 +287,17 @@ function createAndroidInputManager({
|
|
|
285
287
|
editor.onChange();
|
|
286
288
|
}
|
|
287
289
|
};
|
|
290
|
+
const flushDeferredDiffs = () => {
|
|
291
|
+
if (flushing || !isCompositionLive() || !hasPendingDiffsInNewLeaf()) {
|
|
292
|
+
return;
|
|
293
|
+
}
|
|
294
|
+
flushingDeferredDiffs = true;
|
|
295
|
+
try {
|
|
296
|
+
flush();
|
|
297
|
+
} finally {
|
|
298
|
+
flushingDeferredDiffs = false;
|
|
299
|
+
}
|
|
300
|
+
};
|
|
288
301
|
const handleCompositionEnd = _event => {
|
|
289
302
|
if (compositionEndTimeoutId) {
|
|
290
303
|
clearTimeout(compositionEndTimeoutId);
|
|
@@ -822,6 +835,7 @@ function createAndroidInputManager({
|
|
|
822
835
|
};
|
|
823
836
|
return {
|
|
824
837
|
flush,
|
|
838
|
+
flushDeferredDiffs,
|
|
825
839
|
scheduleFlush,
|
|
826
840
|
hasPendingDiffs,
|
|
827
841
|
hasPendingAction,
|
|
@@ -892,6 +906,7 @@ const useAndroidInputManager = !IS_ANDROID ? () => null : _ref => {
|
|
|
892
906
|
}, options)));
|
|
893
907
|
useMutationObserver(node, inputManager.handleDomMutations, MUTATION_OBSERVER_CONFIG$1);
|
|
894
908
|
EDITOR_TO_SCHEDULE_FLUSH.set(editor, inputManager.scheduleFlush);
|
|
909
|
+
EDITOR_TO_FLUSH_DEFERRED_DIFFS.set(editor, inputManager.flushDeferredDiffs);
|
|
895
910
|
if (isMounted) {
|
|
896
911
|
inputManager.flush();
|
|
897
912
|
}
|
|
@@ -3995,7 +4010,7 @@ const Editable = /*#__PURE__*/forwardRef((props, forwardedRef) => {
|
|
|
3995
4010
|
// COMPAT: The composition end event isn't fired reliably in all browsers,
|
|
3996
4011
|
// so we sometimes might end up stuck in a composition state even though we
|
|
3997
4012
|
// aren't composing any more.
|
|
3998
|
-
if (ReactEditor.isComposing(editor) && nativeEvent.isComposing === false) {
|
|
4013
|
+
if (ReactEditor.isComposing(editor) && (nativeEvent.isComposing === false || isDeletingInVoid(editor, nativeEvent))) {
|
|
3999
4014
|
IS_COMPOSING.set(editor, false);
|
|
4000
4015
|
setIsComposing(false);
|
|
4001
4016
|
}
|
|
@@ -4291,6 +4306,14 @@ const Editable = /*#__PURE__*/forwardRef((props, forwardedRef) => {
|
|
|
4291
4306
|
/**
|
|
4292
4307
|
* The default placeholder element
|
|
4293
4308
|
*/
|
|
4309
|
+
const isDeletingInVoid = (editor, event) => {
|
|
4310
|
+
const {
|
|
4311
|
+
selection
|
|
4312
|
+
} = editor;
|
|
4313
|
+
return !!selection && Range.isCollapsed(selection) && (Hotkeys.isDeleteBackward(event) || Hotkeys.isDeleteForward(event)) && !!Editor.void(editor, {
|
|
4314
|
+
at: selection
|
|
4315
|
+
});
|
|
4316
|
+
};
|
|
4294
4317
|
const isInSlateText = node => {
|
|
4295
4318
|
var _node$parentElement2;
|
|
4296
4319
|
return isDOMNode(node) && node.nodeType === node.TEXT_NODE && !!((_node$parentElement2 = node.parentElement) !== null && _node$parentElement2 !== void 0 && _node$parentElement2.closest('[data-slate-string], [data-slate-zero-width]'));
|
|
@@ -4577,6 +4600,7 @@ const isSelectionEqual = (a, b) => {
|
|
|
4577
4600
|
return Range.equals(a, b);
|
|
4578
4601
|
};
|
|
4579
4602
|
|
|
4603
|
+
const RERENDERING_OPERATIONS = new Set(['insert_node', 'move_node', 'remove_node', 'set_node']);
|
|
4580
4604
|
/**
|
|
4581
4605
|
* `withReact` adds React and DOM specific behaviors to the editor.
|
|
4582
4606
|
*
|
|
@@ -4621,6 +4645,10 @@ const withReact = (editor, clipboardFormatKey = 'x-slate-fragment') => {
|
|
|
4621
4645
|
// node being moved, add the moved node to the movedNodeKeys set of the
|
|
4622
4646
|
// parent's chunk tree.
|
|
4623
4647
|
e.apply = operation => {
|
|
4648
|
+
if (IS_ANDROID && RERENDERING_OPERATIONS.has(operation.type)) {
|
|
4649
|
+
var _EDITOR_TO_FLUSH_DEFE;
|
|
4650
|
+
(_EDITOR_TO_FLUSH_DEFE = EDITOR_TO_FLUSH_DEFERRED_DIFFS.get(e)) === null || _EDITOR_TO_FLUSH_DEFE === void 0 || _EDITOR_TO_FLUSH_DEFE();
|
|
4651
|
+
}
|
|
4624
4652
|
if (operation.type === 'move_node') {
|
|
4625
4653
|
const parent = Node.parent(e, operation.path);
|
|
4626
4654
|
const chunking = !!e.getChunkSize(parent);
|