@portabletext/editor 2.4.3 → 2.6.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/lib/_chunks-cjs/util.slice-blocks.cjs +2 -2
- package/lib/_chunks-cjs/util.slice-blocks.cjs.map +1 -1
- package/lib/_chunks-dts/behavior.types.action.d.cts +25 -10
- package/lib/_chunks-dts/behavior.types.action.d.ts +25 -10
- package/lib/_chunks-es/util.slice-blocks.js +2 -2
- package/lib/_chunks-es/util.slice-blocks.js.map +1 -1
- package/lib/index.cjs +214 -140
- package/lib/index.cjs.map +1 -1
- package/lib/index.js +215 -141
- package/lib/index.js.map +1 -1
- package/lib/plugins/index.d.cts +3 -3
- package/lib/utils/index.d.ts +2 -2
- package/package.json +8 -8
- package/src/editor/Editable.tsx +90 -103
- package/src/internal-utils/parse-blocks.test.ts +89 -0
- package/src/internal-utils/parse-blocks.ts +16 -8
package/lib/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { c } from "react-compiler-runtime";
|
|
2
|
-
import React, { useEffect, createContext, useContext, useState, useRef, Component, useMemo, startTransition, useCallback, forwardRef
|
|
2
|
+
import React, { useEffect, createContext, useContext, useState, useRef, Component, useMemo, startTransition, useCallback, forwardRef } from "react";
|
|
3
3
|
import { useEditor, EditorContext } from "./_chunks-es/use-editor.js";
|
|
4
4
|
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
5
5
|
import { useSelector, useActorRef } from "@xstate/react";
|
|
@@ -1038,7 +1038,7 @@ function RenderTextBlock(props) {
|
|
|
1038
1038
|
] });
|
|
1039
1039
|
}
|
|
1040
1040
|
function RenderElement(props) {
|
|
1041
|
-
const $ = c(34), editorActor = useContext(EditorActorContext), schema = useSelector(editorActor, _temp$
|
|
1041
|
+
const $ = c(34), editorActor = useContext(EditorActorContext), schema = useSelector(editorActor, _temp$2), legacySchema = useSelector(editorActor, _temp2$1), slateStatic = useSlateStatic();
|
|
1042
1042
|
if ("__inline" in props.element && props.element.__inline === !0) {
|
|
1043
1043
|
let t02;
|
|
1044
1044
|
return $[0] !== legacySchema || $[1] !== props.attributes || $[2] !== props.children || $[3] !== props.element || $[4] !== props.readOnly || $[5] !== props.renderChild || $[6] !== schema ? (t02 = /* @__PURE__ */ jsx(RenderInlineObject, { attributes: props.attributes, element: props.element, legacySchema, readOnly: props.readOnly, renderChild: props.renderChild, schema, children: props.children }), $[0] = legacySchema, $[1] = props.attributes, $[2] = props.children, $[3] = props.element, $[4] = props.readOnly, $[5] = props.renderChild, $[6] = schema, $[7] = t02) : t02 = $[7], t02;
|
|
@@ -1058,10 +1058,10 @@ function RenderElement(props) {
|
|
|
1058
1058
|
let t1;
|
|
1059
1059
|
return $[25] !== block || $[26] !== legacySchema || $[27] !== props.attributes || $[28] !== props.children || $[29] !== props.element || $[30] !== props.readOnly || $[31] !== props.renderBlock || $[32] !== schema ? (t1 = /* @__PURE__ */ jsx(RenderBlockObject, { attributes: props.attributes, blockObject: block, element: props.element, legacySchema, readOnly: props.readOnly, renderBlock: props.renderBlock, schema, children: props.children }), $[25] = block, $[26] = legacySchema, $[27] = props.attributes, $[28] = props.children, $[29] = props.element, $[30] = props.readOnly, $[31] = props.renderBlock, $[32] = schema, $[33] = t1) : t1 = $[33], t1;
|
|
1060
1060
|
}
|
|
1061
|
-
function _temp2(s_0) {
|
|
1061
|
+
function _temp2$1(s_0) {
|
|
1062
1062
|
return s_0.context.getLegacySchema();
|
|
1063
1063
|
}
|
|
1064
|
-
function _temp$
|
|
1064
|
+
function _temp$2(s) {
|
|
1065
1065
|
return s.context.schema;
|
|
1066
1066
|
}
|
|
1067
1067
|
const PortableTextEditorContext = createContext(null), usePortableTextEditor = () => {
|
|
@@ -10883,7 +10883,7 @@ const PLACEHOLDER_STYLE = {
|
|
|
10883
10883
|
right: 0
|
|
10884
10884
|
};
|
|
10885
10885
|
function RenderLeaf(props) {
|
|
10886
|
-
const $ = c(12), editorActor = useContext(EditorActorContext), schema = useSelector(editorActor, _temp);
|
|
10886
|
+
const $ = c(12), editorActor = useContext(EditorActorContext), schema = useSelector(editorActor, _temp$1);
|
|
10887
10887
|
if (props.leaf._type !== schema.span.name)
|
|
10888
10888
|
return props.children;
|
|
10889
10889
|
let t0;
|
|
@@ -10909,7 +10909,7 @@ function RenderLeaf(props) {
|
|
|
10909
10909
|
}
|
|
10910
10910
|
return renderedSpan;
|
|
10911
10911
|
}
|
|
10912
|
-
function _temp(s) {
|
|
10912
|
+
function _temp$1(s) {
|
|
10913
10913
|
return s.context.schema;
|
|
10914
10914
|
}
|
|
10915
10915
|
function RenderText(props) {
|
|
@@ -11374,7 +11374,9 @@ function createDecorate(schema, slateEditor) {
|
|
|
11374
11374
|
};
|
|
11375
11375
|
}
|
|
11376
11376
|
const debug = debugWithName("component:Editable"), PortableTextEditable = forwardRef(function(props, forwardedRef) {
|
|
11377
|
-
const
|
|
11377
|
+
const $ = c(172);
|
|
11378
|
+
let hotkeys, onBeforeInput, onBlur, onClick, onCopy, onCut, onDrag, onDragEnd, onDragEnter, onDragLeave, onDragOver, onDragStart, onDrop, onFocus, onPaste, propsSelection, rangeDecorations, renderAnnotation, renderBlock, renderChild, renderDecorator, renderListItem, renderPlaceholder, renderStyle, restProps, scrollSelectionIntoView, spellCheck;
|
|
11379
|
+
$[0] !== props ? ({
|
|
11378
11380
|
hotkeys,
|
|
11379
11381
|
onBlur,
|
|
11380
11382
|
onFocus,
|
|
@@ -11402,33 +11404,53 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11402
11404
|
scrollSelectionIntoView,
|
|
11403
11405
|
spellCheck,
|
|
11404
11406
|
...restProps
|
|
11405
|
-
} = props,
|
|
11406
|
-
|
|
11407
|
-
|
|
11408
|
-
|
|
11409
|
-
|
|
11407
|
+
} = props, $[0] = props, $[1] = hotkeys, $[2] = onBeforeInput, $[3] = onBlur, $[4] = onClick, $[5] = onCopy, $[6] = onCut, $[7] = onDrag, $[8] = onDragEnd, $[9] = onDragEnter, $[10] = onDragLeave, $[11] = onDragOver, $[12] = onDragStart, $[13] = onDrop, $[14] = onFocus, $[15] = onPaste, $[16] = propsSelection, $[17] = rangeDecorations, $[18] = renderAnnotation, $[19] = renderBlock, $[20] = renderChild, $[21] = renderDecorator, $[22] = renderListItem, $[23] = renderPlaceholder, $[24] = renderStyle, $[25] = restProps, $[26] = scrollSelectionIntoView, $[27] = spellCheck) : (hotkeys = $[1], onBeforeInput = $[2], onBlur = $[3], onClick = $[4], onCopy = $[5], onCut = $[6], onDrag = $[7], onDragEnd = $[8], onDragEnter = $[9], onDragLeave = $[10], onDragOver = $[11], onDragStart = $[12], onDrop = $[13], onFocus = $[14], onPaste = $[15], propsSelection = $[16], rangeDecorations = $[17], renderAnnotation = $[18], renderBlock = $[19], renderChild = $[20], renderDecorator = $[21], renderListItem = $[22], renderPlaceholder = $[23], renderStyle = $[24], restProps = $[25], scrollSelectionIntoView = $[26], spellCheck = $[27]);
|
|
11408
|
+
const portableTextEditor = usePortableTextEditor(), [hasInvalidValue, setHasInvalidValue] = useState(!1), editorActor = useContext(EditorActorContext), relayActor = useContext(RelayActorContext), readOnly = useSelector(editorActor, _temp), slateEditor = useSlate();
|
|
11409
|
+
let t0;
|
|
11410
|
+
$[28] !== rangeDecorations ? (t0 = rangeDecorations ?? [], $[28] = rangeDecorations, $[29] = t0) : t0 = $[29];
|
|
11411
|
+
let t1;
|
|
11412
|
+
$[30] !== editorActor ? (t1 = editorActor.getSnapshot(), $[30] = editorActor, $[31] = t1) : t1 = $[31];
|
|
11413
|
+
const t2 = !editorActor.getSnapshot().matches({
|
|
11414
|
+
setup: "setting up"
|
|
11415
|
+
});
|
|
11416
|
+
let t3;
|
|
11417
|
+
$[32] !== readOnly || $[33] !== slateEditor || $[34] !== t0 || $[35] !== t1.context.schema || $[36] !== t2 ? (t3 = {
|
|
11410
11418
|
input: {
|
|
11411
|
-
rangeDecorations:
|
|
11419
|
+
rangeDecorations: t0,
|
|
11412
11420
|
readOnly,
|
|
11413
|
-
schema:
|
|
11421
|
+
schema: t1.context.schema,
|
|
11414
11422
|
slateEditor,
|
|
11415
|
-
skipSetup:
|
|
11416
|
-
setup: "setting up"
|
|
11417
|
-
})
|
|
11423
|
+
skipSetup: t2
|
|
11418
11424
|
}
|
|
11419
|
-
}
|
|
11420
|
-
|
|
11425
|
+
}, $[32] = readOnly, $[33] = slateEditor, $[34] = t0, $[35] = t1.context.schema, $[36] = t2, $[37] = t3) : t3 = $[37];
|
|
11426
|
+
const rangeDecorationsActor = useActorRef(rangeDecorationsMachine, t3), decorate = useSelector(rangeDecorationsActor, _temp2);
|
|
11427
|
+
let t4, t5;
|
|
11428
|
+
$[38] !== rangeDecorationsActor || $[39] !== readOnly ? (t4 = () => {
|
|
11421
11429
|
rangeDecorationsActor.send({
|
|
11422
11430
|
type: "update read only",
|
|
11423
11431
|
readOnly
|
|
11424
11432
|
});
|
|
11425
|
-
}, [rangeDecorationsActor, readOnly]), useEffect(
|
|
11433
|
+
}, t5 = [rangeDecorationsActor, readOnly], $[38] = rangeDecorationsActor, $[39] = readOnly, $[40] = t4, $[41] = t5) : (t4 = $[40], t5 = $[41]), useEffect(t4, t5);
|
|
11434
|
+
let t6, t7;
|
|
11435
|
+
$[42] !== rangeDecorations || $[43] !== rangeDecorationsActor ? (t6 = () => {
|
|
11426
11436
|
rangeDecorationsActor.send({
|
|
11427
11437
|
type: "range decorations updated",
|
|
11428
11438
|
rangeDecorations: rangeDecorations ?? []
|
|
11429
11439
|
});
|
|
11430
|
-
}, [rangeDecorationsActor, rangeDecorations]
|
|
11431
|
-
|
|
11440
|
+
}, t7 = [rangeDecorationsActor, rangeDecorations], $[42] = rangeDecorations, $[43] = rangeDecorationsActor, $[44] = t6, $[45] = t7) : (t6 = $[44], t7 = $[45]), useEffect(t6, t7);
|
|
11441
|
+
bb0: {
|
|
11442
|
+
if (readOnly)
|
|
11443
|
+
break bb0;
|
|
11444
|
+
createWithHotkeys(editorActor, portableTextEditor, hotkeys)(slateEditor);
|
|
11445
|
+
}
|
|
11446
|
+
let t9;
|
|
11447
|
+
$[46] !== readOnly || $[47] !== renderBlock || $[48] !== renderChild || $[49] !== renderListItem || $[50] !== renderStyle || $[51] !== spellCheck ? (t9 = (eProps) => /* @__PURE__ */ jsx(RenderElement, { ...eProps, readOnly, renderBlock, renderChild, renderListItem, renderStyle, spellCheck }), $[46] = readOnly, $[47] = renderBlock, $[48] = renderChild, $[49] = renderListItem, $[50] = renderStyle, $[51] = spellCheck, $[52] = t9) : t9 = $[52];
|
|
11448
|
+
const renderElement = t9;
|
|
11449
|
+
let t10;
|
|
11450
|
+
$[53] !== readOnly || $[54] !== renderAnnotation || $[55] !== renderChild || $[56] !== renderDecorator || $[57] !== renderPlaceholder ? (t10 = (leafProps) => /* @__PURE__ */ jsx(RenderLeaf, { ...leafProps, readOnly, renderAnnotation, renderChild, renderDecorator, renderPlaceholder }), $[53] = readOnly, $[54] = renderAnnotation, $[55] = renderChild, $[56] = renderDecorator, $[57] = renderPlaceholder, $[58] = t10) : t10 = $[58];
|
|
11451
|
+
const renderLeaf = t10, renderText = _temp3;
|
|
11452
|
+
let t11;
|
|
11453
|
+
$[59] !== editorActor || $[60] !== propsSelection || $[61] !== slateEditor ? (t11 = () => {
|
|
11432
11454
|
if (propsSelection) {
|
|
11433
11455
|
debug(`Selection from props ${JSON.stringify(propsSelection)}`);
|
|
11434
11456
|
const normalizedSelection = normalizeSelection(propsSelection, fromSlateValue(slateEditor.children, editorActor.getSnapshot().context.schema.block.name));
|
|
@@ -11442,14 +11464,16 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11442
11464
|
},
|
|
11443
11465
|
blockIndexMap: slateEditor.blockIndexMap
|
|
11444
11466
|
});
|
|
11445
|
-
slateRange && (Transforms.select(slateEditor, slateRange), slateEditor.operations.some(
|
|
11467
|
+
slateRange && (Transforms.select(slateEditor, slateRange), slateEditor.operations.some(_temp4) || editorActor.send({
|
|
11446
11468
|
type: "update selection",
|
|
11447
11469
|
selection: normalizedSelection
|
|
11448
11470
|
}), slateEditor.onChange());
|
|
11449
11471
|
}
|
|
11450
11472
|
}
|
|
11451
|
-
}, [editorActor, propsSelection, slateEditor]);
|
|
11452
|
-
|
|
11473
|
+
}, $[59] = editorActor, $[60] = propsSelection, $[61] = slateEditor, $[62] = t11) : t11 = $[62];
|
|
11474
|
+
const restoreSelectionFromProps = t11;
|
|
11475
|
+
let t12, t13;
|
|
11476
|
+
$[63] !== editorActor || $[64] !== rangeDecorationsActor || $[65] !== restoreSelectionFromProps ? (t12 = () => {
|
|
11453
11477
|
const onReady = editorActor.on("ready", () => {
|
|
11454
11478
|
rangeDecorationsActor.send({
|
|
11455
11479
|
type: "ready"
|
|
@@ -11462,10 +11486,13 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11462
11486
|
return () => {
|
|
11463
11487
|
onReady.unsubscribe(), onInvalidValue.unsubscribe(), onValueChanged.unsubscribe();
|
|
11464
11488
|
};
|
|
11465
|
-
}, [rangeDecorationsActor, editorActor, restoreSelectionFromProps]), useEffect(
|
|
11489
|
+
}, t13 = [rangeDecorationsActor, editorActor, restoreSelectionFromProps], $[63] = editorActor, $[64] = rangeDecorationsActor, $[65] = restoreSelectionFromProps, $[66] = t12, $[67] = t13) : (t12 = $[66], t13 = $[67]), useEffect(t12, t13);
|
|
11490
|
+
let t14, t15;
|
|
11491
|
+
$[68] !== hasInvalidValue || $[69] !== propsSelection || $[70] !== restoreSelectionFromProps ? (t14 = () => {
|
|
11466
11492
|
propsSelection && !hasInvalidValue && restoreSelectionFromProps();
|
|
11467
|
-
}, [hasInvalidValue, propsSelection, restoreSelectionFromProps]);
|
|
11468
|
-
|
|
11493
|
+
}, t15 = [hasInvalidValue, propsSelection, restoreSelectionFromProps], $[68] = hasInvalidValue, $[69] = propsSelection, $[70] = restoreSelectionFromProps, $[71] = t14, $[72] = t15) : (t14 = $[71], t15 = $[72]), useEffect(t14, t15);
|
|
11494
|
+
let t16;
|
|
11495
|
+
$[73] !== editorActor || $[74] !== onCopy || $[75] !== slateEditor ? (t16 = (event) => {
|
|
11469
11496
|
if (onCopy)
|
|
11470
11497
|
onCopy(event) !== void 0 && event.preventDefault();
|
|
11471
11498
|
else if (event.nativeEvent.clipboardData) {
|
|
@@ -11494,7 +11521,10 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11494
11521
|
nativeEvent: event
|
|
11495
11522
|
});
|
|
11496
11523
|
}
|
|
11497
|
-
}, [
|
|
11524
|
+
}, $[73] = editorActor, $[74] = onCopy, $[75] = slateEditor, $[76] = t16) : t16 = $[76];
|
|
11525
|
+
const handleCopy = t16;
|
|
11526
|
+
let t17;
|
|
11527
|
+
$[77] !== editorActor || $[78] !== onCut || $[79] !== slateEditor ? (t17 = (event_0) => {
|
|
11498
11528
|
if (onCut)
|
|
11499
11529
|
onCut(event_0) !== void 0 && event_0.preventDefault();
|
|
11500
11530
|
else if (event_0.nativeEvent.clipboardData) {
|
|
@@ -11519,7 +11549,10 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11519
11549
|
nativeEvent: event_0
|
|
11520
11550
|
});
|
|
11521
11551
|
}
|
|
11522
|
-
}, [
|
|
11552
|
+
}, $[77] = editorActor, $[78] = onCut, $[79] = slateEditor, $[80] = t17) : t17 = $[80];
|
|
11553
|
+
const handleCut = t17;
|
|
11554
|
+
let t18;
|
|
11555
|
+
$[81] !== editorActor || $[82] !== onPaste || $[83] !== portableTextEditor || $[84] !== relayActor || $[85] !== slateEditor ? (t18 = (event_1) => {
|
|
11523
11556
|
const value = fromSlateValue(slateEditor.children, editorActor.getSnapshot().context.schema.block.name, KEY_TO_VALUE_ELEMENT.get(slateEditor)), path = (slateEditor.selection ? slateRangeToSelection({
|
|
11524
11557
|
schema: editorActor.getSnapshot().context.schema,
|
|
11525
11558
|
editor: slateEditor,
|
|
@@ -11555,26 +11588,27 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11555
11588
|
editor: slateEditor,
|
|
11556
11589
|
nativeEvent: event_1
|
|
11557
11590
|
});
|
|
11558
|
-
} else
|
|
11559
|
-
|
|
11560
|
-
|
|
11561
|
-
|
|
11562
|
-
|
|
11563
|
-
|
|
11564
|
-
|
|
11565
|
-
|
|
11566
|
-
|
|
11567
|
-
|
|
11568
|
-
|
|
11569
|
-
|
|
11570
|
-
|
|
11571
|
-
|
|
11572
|
-
|
|
11573
|
-
|
|
11574
|
-
|
|
11575
|
-
|
|
11576
|
-
|
|
11577
|
-
|
|
11591
|
+
} else
|
|
11592
|
+
result_1.insert ? editorActor.send({
|
|
11593
|
+
type: "behavior event",
|
|
11594
|
+
behaviorEvent: {
|
|
11595
|
+
type: "insert.blocks",
|
|
11596
|
+
blocks: parseBlocks({
|
|
11597
|
+
context: {
|
|
11598
|
+
keyGenerator: editorActor.getSnapshot().context.keyGenerator,
|
|
11599
|
+
schema: editorActor.getSnapshot().context.schema
|
|
11600
|
+
},
|
|
11601
|
+
blocks: result_1.insert,
|
|
11602
|
+
options: {
|
|
11603
|
+
refreshKeys: !1,
|
|
11604
|
+
validateFields: !1
|
|
11605
|
+
}
|
|
11606
|
+
}),
|
|
11607
|
+
placement: "auto"
|
|
11608
|
+
},
|
|
11609
|
+
editor: slateEditor
|
|
11610
|
+
}) : console.warn("Your onPaste function returned something unexpected:", result_1);
|
|
11611
|
+
}).catch(_temp5).finally(() => {
|
|
11578
11612
|
relayActor.send({
|
|
11579
11613
|
type: "done loading"
|
|
11580
11614
|
});
|
|
@@ -11602,12 +11636,18 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11602
11636
|
});
|
|
11603
11637
|
}
|
|
11604
11638
|
debug("No result from custom paste handler, pasting normally");
|
|
11605
|
-
}, [editorActor, onPaste, portableTextEditor, relayActor, slateEditor
|
|
11639
|
+
}, $[81] = editorActor, $[82] = onPaste, $[83] = portableTextEditor, $[84] = relayActor, $[85] = slateEditor, $[86] = t18) : t18 = $[86];
|
|
11640
|
+
const handlePaste = t18;
|
|
11641
|
+
let t19;
|
|
11642
|
+
$[87] !== editorActor || $[88] !== onFocus || $[89] !== relayActor || $[90] !== slateEditor ? (t19 = (event_2) => {
|
|
11606
11643
|
onFocus && onFocus(event_2), event_2.isDefaultPrevented() || (relayActor.send({
|
|
11607
11644
|
type: "focused",
|
|
11608
11645
|
event: event_2
|
|
11609
11646
|
}), !slateEditor.selection && isEqualToEmptyEditor(slateEditor.children, editorActor.getSnapshot().context.schema) && (Transforms.select(slateEditor, Editor.start(slateEditor, [])), slateEditor.onChange()));
|
|
11610
|
-
}, [editorActor, onFocus, relayActor, slateEditor
|
|
11647
|
+
}, $[87] = editorActor, $[88] = onFocus, $[89] = relayActor, $[90] = slateEditor, $[91] = t19) : t19 = $[91];
|
|
11648
|
+
const handleOnFocus = t19;
|
|
11649
|
+
let t20;
|
|
11650
|
+
$[92] !== editorActor || $[93] !== onClick || $[94] !== slateEditor ? (t20 = (event_3) => {
|
|
11611
11651
|
if (onClick && onClick(event_3), event_3.isDefaultPrevented() || event_3.isPropagationStopped())
|
|
11612
11652
|
return;
|
|
11613
11653
|
const position_3 = getEventPosition({
|
|
@@ -11624,47 +11664,23 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11624
11664
|
editor: slateEditor,
|
|
11625
11665
|
nativeEvent: event_3
|
|
11626
11666
|
});
|
|
11627
|
-
}, [
|
|
11667
|
+
}, $[92] = editorActor, $[93] = onClick, $[94] = slateEditor, $[95] = t20) : t20 = $[95];
|
|
11668
|
+
const handleClick = t20;
|
|
11669
|
+
let t21;
|
|
11670
|
+
$[96] !== onBlur || $[97] !== relayActor ? (t21 = (event_4) => {
|
|
11628
11671
|
onBlur && onBlur(event_4), event_4.isPropagationStopped() || relayActor.send({
|
|
11629
11672
|
type: "blurred",
|
|
11630
11673
|
event: event_4
|
|
11631
11674
|
});
|
|
11632
|
-
}, [
|
|
11675
|
+
}, $[96] = onBlur, $[97] = relayActor, $[98] = t21) : t21 = $[98];
|
|
11676
|
+
const handleOnBlur = t21;
|
|
11677
|
+
let t22;
|
|
11678
|
+
$[99] !== onBeforeInput ? (t22 = (event_5) => {
|
|
11633
11679
|
onBeforeInput && onBeforeInput(event_5);
|
|
11634
|
-
}, [onBeforeInput
|
|
11635
|
-
|
|
11636
|
-
|
|
11637
|
-
|
|
11638
|
-
activeElement
|
|
11639
|
-
} = root;
|
|
11640
|
-
if (ref.current !== activeElement)
|
|
11641
|
-
return;
|
|
11642
|
-
const domSelection = ReactEditor.getWindow(slateEditor).getSelection();
|
|
11643
|
-
if (!domSelection || domSelection.rangeCount === 0)
|
|
11644
|
-
return;
|
|
11645
|
-
const existingDOMRange = domSelection.getRangeAt(0);
|
|
11646
|
-
try {
|
|
11647
|
-
const newDOMRange = ReactEditor.toDOMRange(slateEditor, slateEditor.selection);
|
|
11648
|
-
(newDOMRange.startOffset !== existingDOMRange.startOffset || newDOMRange.endOffset !== existingDOMRange.endOffset) && (debug("DOM range out of sync, validating selection"), domSelection?.removeAllRanges(), domSelection.addRange(newDOMRange));
|
|
11649
|
-
} catch {
|
|
11650
|
-
debug("Could not resolve selection, selecting top document"), Transforms.deselect(slateEditor), slateEditor.children.length > 0 && Transforms.select(slateEditor, [0, 0]), slateEditor.onChange();
|
|
11651
|
-
}
|
|
11652
|
-
}, [ref, slateEditor]);
|
|
11653
|
-
useEffect(() => {
|
|
11654
|
-
if (editableElement) {
|
|
11655
|
-
const mutationObserver = new MutationObserver(validateSelection);
|
|
11656
|
-
return mutationObserver.observe(editableElement, {
|
|
11657
|
-
attributeOldValue: !1,
|
|
11658
|
-
attributes: !1,
|
|
11659
|
-
characterData: !1,
|
|
11660
|
-
childList: !0,
|
|
11661
|
-
subtree: !0
|
|
11662
|
-
}), () => {
|
|
11663
|
-
mutationObserver.disconnect();
|
|
11664
|
-
};
|
|
11665
|
-
}
|
|
11666
|
-
}, [validateSelection, editableElement]);
|
|
11667
|
-
const handleKeyDown = useCallback((event_6) => {
|
|
11680
|
+
}, $[99] = onBeforeInput, $[100] = t22) : t22 = $[100];
|
|
11681
|
+
const handleOnBeforeInput = t22;
|
|
11682
|
+
let t23;
|
|
11683
|
+
$[101] !== editorActor || $[102] !== props || $[103] !== slateEditor ? (t23 = (event_6) => {
|
|
11668
11684
|
props.onKeyDown && props.onKeyDown(event_6), event_6.isDefaultPrevented() || slateEditor.pteWithHotKeys(event_6), event_6.isDefaultPrevented() || editorActor.send({
|
|
11669
11685
|
type: "behavior event",
|
|
11670
11686
|
behaviorEvent: {
|
|
@@ -11681,7 +11697,10 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11681
11697
|
editor: slateEditor,
|
|
11682
11698
|
nativeEvent: event_6
|
|
11683
11699
|
});
|
|
11684
|
-
}, [
|
|
11700
|
+
}, $[101] = editorActor, $[102] = props, $[103] = slateEditor, $[104] = t23) : t23 = $[104];
|
|
11701
|
+
const handleKeyDown = t23;
|
|
11702
|
+
let t24;
|
|
11703
|
+
$[105] !== editorActor || $[106] !== props || $[107] !== slateEditor ? (t24 = (event_7) => {
|
|
11685
11704
|
props.onKeyUp && props.onKeyUp(event_7), event_7.isDefaultPrevented() || editorActor.send({
|
|
11686
11705
|
type: "behavior event",
|
|
11687
11706
|
behaviorEvent: {
|
|
@@ -11698,16 +11717,27 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11698
11717
|
editor: slateEditor,
|
|
11699
11718
|
nativeEvent: event_7
|
|
11700
11719
|
});
|
|
11701
|
-
}, [
|
|
11702
|
-
|
|
11703
|
-
|
|
11704
|
-
|
|
11705
|
-
|
|
11706
|
-
|
|
11707
|
-
|
|
11708
|
-
|
|
11709
|
-
|
|
11710
|
-
|
|
11720
|
+
}, $[105] = editorActor, $[106] = props, $[107] = slateEditor, $[108] = t24) : t24 = $[108];
|
|
11721
|
+
const handleKeyUp = t24;
|
|
11722
|
+
let t25;
|
|
11723
|
+
bb1: {
|
|
11724
|
+
if (scrollSelectionIntoView === void 0) {
|
|
11725
|
+
t25 = void 0;
|
|
11726
|
+
break bb1;
|
|
11727
|
+
}
|
|
11728
|
+
if (scrollSelectionIntoView === null) {
|
|
11729
|
+
t25 = noop;
|
|
11730
|
+
break bb1;
|
|
11731
|
+
}
|
|
11732
|
+
let t262;
|
|
11733
|
+
$[109] !== portableTextEditor || $[110] !== scrollSelectionIntoView ? (t262 = (_editor, domRange) => {
|
|
11734
|
+
scrollSelectionIntoView(portableTextEditor, domRange);
|
|
11735
|
+
}, $[109] = portableTextEditor, $[110] = scrollSelectionIntoView, $[111] = t262) : t262 = $[111], t25 = t262;
|
|
11736
|
+
}
|
|
11737
|
+
const scrollSelectionIntoViewToSlate = t25;
|
|
11738
|
+
let t26, t27;
|
|
11739
|
+
$[112] !== editorActor || $[113] !== slateEditor ? (t26 = () => {
|
|
11740
|
+
const window2 = ReactEditor.getWindow(slateEditor), onDragEnd_0 = () => {
|
|
11711
11741
|
editorActor.send({
|
|
11712
11742
|
type: "dragend"
|
|
11713
11743
|
});
|
|
@@ -11716,11 +11746,12 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11716
11746
|
type: "drop"
|
|
11717
11747
|
});
|
|
11718
11748
|
};
|
|
11719
|
-
return
|
|
11720
|
-
|
|
11749
|
+
return window2.document.addEventListener("dragend", onDragEnd_0), window2.document.addEventListener("drop", onDrop_0), () => {
|
|
11750
|
+
window2.document.removeEventListener("dragend", onDragEnd_0), window2.document.removeEventListener("drop", onDrop_0);
|
|
11721
11751
|
};
|
|
11722
|
-
}, [slateEditor, editorActor]);
|
|
11723
|
-
|
|
11752
|
+
}, t27 = [slateEditor, editorActor], $[112] = editorActor, $[113] = slateEditor, $[114] = t26, $[115] = t27) : (t26 = $[114], t27 = $[115]), useEffect(t26, t27);
|
|
11753
|
+
let t28;
|
|
11754
|
+
$[116] !== editorActor || $[117] !== onDragStart || $[118] !== slateEditor ? (t28 = (event_8) => {
|
|
11724
11755
|
if (onDragStart?.(event_8), event_8.isDefaultPrevented() || event_8.isPropagationStopped())
|
|
11725
11756
|
return;
|
|
11726
11757
|
const position_4 = getEventPosition({
|
|
@@ -11748,7 +11779,10 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11748
11779
|
},
|
|
11749
11780
|
editor: slateEditor
|
|
11750
11781
|
}), !0;
|
|
11751
|
-
}, [
|
|
11782
|
+
}, $[116] = editorActor, $[117] = onDragStart, $[118] = slateEditor, $[119] = t28) : t28 = $[119];
|
|
11783
|
+
const handleDragStart = t28;
|
|
11784
|
+
let t29;
|
|
11785
|
+
$[120] !== editorActor || $[121] !== onDrag || $[122] !== slateEditor ? (t29 = (event_9) => {
|
|
11752
11786
|
if (onDrag?.(event_9), !(event_9.isDefaultPrevented() || event_9.isPropagationStopped() || !getEventPosition({
|
|
11753
11787
|
editorActor,
|
|
11754
11788
|
slateEditor,
|
|
@@ -11764,7 +11798,10 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11764
11798
|
},
|
|
11765
11799
|
editor: slateEditor
|
|
11766
11800
|
}), !0;
|
|
11767
|
-
}, [
|
|
11801
|
+
}, $[120] = editorActor, $[121] = onDrag, $[122] = slateEditor, $[123] = t29) : t29 = $[123];
|
|
11802
|
+
const handleDrag = t29;
|
|
11803
|
+
let t30;
|
|
11804
|
+
$[124] !== editorActor || $[125] !== onDragEnd || $[126] !== slateEditor ? (t30 = (event_10) => {
|
|
11768
11805
|
if (onDragEnd?.(event_10), !(event_10.isDefaultPrevented() || event_10.isPropagationStopped()))
|
|
11769
11806
|
return editorActor.send({
|
|
11770
11807
|
type: "behavior event",
|
|
@@ -11776,7 +11813,10 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11776
11813
|
},
|
|
11777
11814
|
editor: slateEditor
|
|
11778
11815
|
}), !0;
|
|
11779
|
-
}, [
|
|
11816
|
+
}, $[124] = editorActor, $[125] = onDragEnd, $[126] = slateEditor, $[127] = t30) : t30 = $[127];
|
|
11817
|
+
const handleDragEnd = t30;
|
|
11818
|
+
let t31;
|
|
11819
|
+
$[128] !== editorActor || $[129] !== onDragEnter || $[130] !== slateEditor ? (t31 = (event_11) => {
|
|
11780
11820
|
if (onDragEnter?.(event_11), event_11.isDefaultPrevented() || event_11.isPropagationStopped())
|
|
11781
11821
|
return;
|
|
11782
11822
|
const position_6 = getEventPosition({
|
|
@@ -11796,7 +11836,10 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11796
11836
|
},
|
|
11797
11837
|
editor: slateEditor
|
|
11798
11838
|
}), !0;
|
|
11799
|
-
}, [
|
|
11839
|
+
}, $[128] = editorActor, $[129] = onDragEnter, $[130] = slateEditor, $[131] = t31) : t31 = $[131];
|
|
11840
|
+
const handleDragEnter = t31;
|
|
11841
|
+
let t32;
|
|
11842
|
+
$[132] !== editorActor || $[133] !== onDragOver || $[134] !== slateEditor ? (t32 = (event_12) => {
|
|
11800
11843
|
if (onDragOver?.(event_12), event_12.isDefaultPrevented() || event_12.isPropagationStopped())
|
|
11801
11844
|
return;
|
|
11802
11845
|
const position_7 = getEventPosition({
|
|
@@ -11818,7 +11861,10 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11818
11861
|
editor: slateEditor,
|
|
11819
11862
|
nativeEvent: event_12
|
|
11820
11863
|
}), !0;
|
|
11821
|
-
}, [
|
|
11864
|
+
}, $[132] = editorActor, $[133] = onDragOver, $[134] = slateEditor, $[135] = t32) : t32 = $[135];
|
|
11865
|
+
const handleDragOver = t32;
|
|
11866
|
+
let t33;
|
|
11867
|
+
$[136] !== editorActor || $[137] !== onDrop || $[138] !== slateEditor ? (t33 = (event_13) => {
|
|
11822
11868
|
if (onDrop?.(event_13), event_13.isDefaultPrevented() || event_13.isPropagationStopped())
|
|
11823
11869
|
return;
|
|
11824
11870
|
const position_8 = getEventPosition({
|
|
@@ -11843,7 +11889,10 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11843
11889
|
editor: slateEditor,
|
|
11844
11890
|
nativeEvent: event_13
|
|
11845
11891
|
}), !0;
|
|
11846
|
-
}, [
|
|
11892
|
+
}, $[136] = editorActor, $[137] = onDrop, $[138] = slateEditor, $[139] = t33) : t33 = $[139];
|
|
11893
|
+
const handleDrop = t33;
|
|
11894
|
+
let t34;
|
|
11895
|
+
$[140] !== editorActor || $[141] !== onDragLeave || $[142] !== slateEditor ? (t34 = (event_14) => {
|
|
11847
11896
|
if (onDragLeave?.(event_14), !(event_14.isDefaultPrevented() || event_14.isPropagationStopped() || !getEventPosition({
|
|
11848
11897
|
editorActor,
|
|
11849
11898
|
slateEditor,
|
|
@@ -11859,41 +11908,66 @@ const debug = debugWithName("component:Editable"), PortableTextEditable = forwar
|
|
|
11859
11908
|
},
|
|
11860
11909
|
editor: slateEditor
|
|
11861
11910
|
}), !0;
|
|
11862
|
-
}, [onDragLeave,
|
|
11863
|
-
|
|
11864
|
-
|
|
11865
|
-
|
|
11866
|
-
|
|
11867
|
-
|
|
11868
|
-
|
|
11869
|
-
|
|
11870
|
-
|
|
11871
|
-
|
|
11872
|
-
|
|
11873
|
-
|
|
11874
|
-
|
|
11875
|
-
|
|
11876
|
-
|
|
11877
|
-
|
|
11878
|
-
|
|
11879
|
-
onDragEnter: handleDragEnter,
|
|
11880
|
-
onDragOver: handleDragOver,
|
|
11881
|
-
onDrop: handleDrop,
|
|
11882
|
-
onDragLeave: handleDragLeave,
|
|
11883
|
-
onFocus: handleOnFocus,
|
|
11884
|
-
onKeyDown: handleKeyDown,
|
|
11885
|
-
onKeyUp: handleKeyUp,
|
|
11886
|
-
onPaste: handlePaste,
|
|
11887
|
-
readOnly,
|
|
11888
|
-
renderPlaceholder: void 0,
|
|
11889
|
-
renderElement,
|
|
11890
|
-
renderLeaf,
|
|
11891
|
-
renderText,
|
|
11892
|
-
scrollSelectionIntoView: scrollSelectionIntoViewToSlate
|
|
11911
|
+
}, $[140] = editorActor, $[141] = onDragLeave, $[142] = slateEditor, $[143] = t34) : t34 = $[143];
|
|
11912
|
+
const handleDragLeave = t34;
|
|
11913
|
+
let t35;
|
|
11914
|
+
$[144] !== forwardedRef || $[145] !== slateEditor ? (t35 = (node) => {
|
|
11915
|
+
if (typeof forwardedRef == "function" ? forwardedRef(node) : forwardedRef && (forwardedRef.current = node), node) {
|
|
11916
|
+
const mutationObserver = new MutationObserver(() => {
|
|
11917
|
+
validateSelection(slateEditor, node);
|
|
11918
|
+
});
|
|
11919
|
+
return mutationObserver.observe(node, {
|
|
11920
|
+
attributeOldValue: !1,
|
|
11921
|
+
attributes: !1,
|
|
11922
|
+
characterData: !1,
|
|
11923
|
+
childList: !0,
|
|
11924
|
+
subtree: !0
|
|
11925
|
+
}), () => {
|
|
11926
|
+
mutationObserver.disconnect();
|
|
11927
|
+
};
|
|
11893
11928
|
}
|
|
11894
|
-
) :
|
|
11929
|
+
}, $[144] = forwardedRef, $[145] = slateEditor, $[146] = t35) : t35 = $[146];
|
|
11930
|
+
const callbackRef = t35;
|
|
11931
|
+
if (!portableTextEditor)
|
|
11932
|
+
return null;
|
|
11933
|
+
let t36;
|
|
11934
|
+
return $[147] !== callbackRef || $[148] !== decorate || $[149] !== handleClick || $[150] !== handleCopy || $[151] !== handleCut || $[152] !== handleDrag || $[153] !== handleDragEnd || $[154] !== handleDragEnter || $[155] !== handleDragLeave || $[156] !== handleDragOver || $[157] !== handleDragStart || $[158] !== handleDrop || $[159] !== handleKeyDown || $[160] !== handleKeyUp || $[161] !== handleOnBeforeInput || $[162] !== handleOnBlur || $[163] !== handleOnFocus || $[164] !== handlePaste || $[165] !== hasInvalidValue || $[166] !== readOnly || $[167] !== renderElement || $[168] !== renderLeaf || $[169] !== restProps || $[170] !== scrollSelectionIntoViewToSlate ? (t36 = hasInvalidValue ? null : /* @__PURE__ */ jsx(Editable, { ...restProps, ref: callbackRef, "data-read-only": readOnly, autoFocus: !1, className: restProps.className || "pt-editable", decorate, onBlur: handleOnBlur, onCopy: handleCopy, onCut: handleCut, onClick: handleClick, onDOMBeforeInput: handleOnBeforeInput, onDragStart: handleDragStart, onDrag: handleDrag, onDragEnd: handleDragEnd, onDragEnter: handleDragEnter, onDragOver: handleDragOver, onDrop: handleDrop, onDragLeave: handleDragLeave, onFocus: handleOnFocus, onKeyDown: handleKeyDown, onKeyUp: handleKeyUp, onPaste: handlePaste, readOnly, renderPlaceholder: void 0, renderElement, renderLeaf, renderText, scrollSelectionIntoView: scrollSelectionIntoViewToSlate }), $[147] = callbackRef, $[148] = decorate, $[149] = handleClick, $[150] = handleCopy, $[151] = handleCut, $[152] = handleDrag, $[153] = handleDragEnd, $[154] = handleDragEnter, $[155] = handleDragLeave, $[156] = handleDragOver, $[157] = handleDragStart, $[158] = handleDrop, $[159] = handleKeyDown, $[160] = handleKeyUp, $[161] = handleOnBeforeInput, $[162] = handleOnBlur, $[163] = handleOnFocus, $[164] = handlePaste, $[165] = hasInvalidValue, $[166] = readOnly, $[167] = renderElement, $[168] = renderLeaf, $[169] = restProps, $[170] = scrollSelectionIntoViewToSlate, $[171] = t36) : t36 = $[171], t36;
|
|
11895
11935
|
});
|
|
11896
11936
|
PortableTextEditable.displayName = "ForwardRef(PortableTextEditable)";
|
|
11937
|
+
function validateSelection(slateEditor, activeElement) {
|
|
11938
|
+
if (!slateEditor.selection)
|
|
11939
|
+
return;
|
|
11940
|
+
const root = ReactEditor.findDocumentOrShadowRoot(slateEditor);
|
|
11941
|
+
if (activeElement !== root.activeElement)
|
|
11942
|
+
return;
|
|
11943
|
+
const domSelection = ReactEditor.getWindow(slateEditor).getSelection();
|
|
11944
|
+
if (!domSelection || domSelection.rangeCount === 0)
|
|
11945
|
+
return;
|
|
11946
|
+
const existingDOMRange = domSelection.getRangeAt(0);
|
|
11947
|
+
try {
|
|
11948
|
+
const newDOMRange = ReactEditor.toDOMRange(slateEditor, slateEditor.selection);
|
|
11949
|
+
(newDOMRange.startOffset !== existingDOMRange.startOffset || newDOMRange.endOffset !== existingDOMRange.endOffset) && (debug("DOM range out of sync, validating selection"), domSelection?.removeAllRanges(), domSelection.addRange(newDOMRange));
|
|
11950
|
+
} catch {
|
|
11951
|
+
debug("Could not resolve selection, selecting top document"), Transforms.deselect(slateEditor), slateEditor.children.length > 0 && Transforms.select(slateEditor, [0, 0]), slateEditor.onChange();
|
|
11952
|
+
}
|
|
11953
|
+
}
|
|
11954
|
+
function _temp(s) {
|
|
11955
|
+
return s.matches({
|
|
11956
|
+
"edit mode": "read only"
|
|
11957
|
+
});
|
|
11958
|
+
}
|
|
11959
|
+
function _temp2(s_0) {
|
|
11960
|
+
return s_0.context.decorate?.fn;
|
|
11961
|
+
}
|
|
11962
|
+
function _temp3(props_0) {
|
|
11963
|
+
return /* @__PURE__ */ jsx(RenderText, { ...props_0 });
|
|
11964
|
+
}
|
|
11965
|
+
function _temp4(o) {
|
|
11966
|
+
return o.type === "set_selection";
|
|
11967
|
+
}
|
|
11968
|
+
function _temp5(error) {
|
|
11969
|
+
return console.warn(error), error;
|
|
11970
|
+
}
|
|
11897
11971
|
function useConstant(factory) {
|
|
11898
11972
|
const ref = React.useRef(null);
|
|
11899
11973
|
return ref.current || (ref.current = {
|