@portabletext/editor 7.10.10 → 7.10.12
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/index.js +51 -36
- package/lib/index.js.map +1 -1
- package/package.json +1 -1
package/lib/index.js
CHANGED
|
@@ -8978,6 +8978,9 @@ function createSpanNode(context) {
|
|
|
8978
8978
|
marks: []
|
|
8979
8979
|
};
|
|
8980
8980
|
}
|
|
8981
|
+
function isCosmeticNormalizationSkipped(editor) {
|
|
8982
|
+
return editor.isProcessingRemoteChanges;
|
|
8983
|
+
}
|
|
8981
8984
|
const normalizeNode = (editor, entry) => {
|
|
8982
8985
|
const [node, path2] = entry, nodeRecord = node;
|
|
8983
8986
|
if (isEditor(node) && node.snapshot.context.value.length === 0) {
|
|
@@ -8986,7 +8989,7 @@ const normalizeNode = (editor, entry) => {
|
|
|
8986
8989
|
});
|
|
8987
8990
|
return;
|
|
8988
8991
|
}
|
|
8989
|
-
if (isTextBlock({
|
|
8992
|
+
if (!isCosmeticNormalizationSkipped(editor) && isTextBlock({
|
|
8990
8993
|
schema: editor.snapshot.context.schema
|
|
8991
8994
|
}, node)) {
|
|
8992
8995
|
const children = getChildren(editor.snapshot, path2);
|
|
@@ -9302,7 +9305,9 @@ const normalizeNode = (editor, entry) => {
|
|
|
9302
9305
|
}, child)) {
|
|
9303
9306
|
if (prev != null && isSpan({
|
|
9304
9307
|
schema: editor.snapshot.context.schema
|
|
9305
|
-
}, prev)
|
|
9308
|
+
}, prev) && // Only this merge/empty-drop arm is cosmetic; the inline-object
|
|
9309
|
+
// bracketing below is a repair and keeps running.
|
|
9310
|
+
!isCosmeticNormalizationSkipped(editor)) {
|
|
9306
9311
|
if (child.text === "") {
|
|
9307
9312
|
editor.apply({
|
|
9308
9313
|
type: "unset",
|
|
@@ -15088,7 +15093,10 @@ const abstractAnnotationBehaviors = [defineBehavior({
|
|
|
15088
15093
|
...snapshot.context,
|
|
15089
15094
|
selection: at
|
|
15090
15095
|
}
|
|
15091
|
-
}
|
|
15096
|
+
};
|
|
15097
|
+
if (!isSelectionCollapsed$1(adjustedSnapshot))
|
|
15098
|
+
return !1;
|
|
15099
|
+
const focusTextBlock = getFocusTextBlock(adjustedSnapshot);
|
|
15092
15100
|
if (!focusTextBlock)
|
|
15093
15101
|
return !1;
|
|
15094
15102
|
const nextSibling = getSibling(adjustedSnapshot, focusTextBlock.path, {
|
|
@@ -18700,7 +18708,7 @@ function syncBlock({
|
|
|
18700
18708
|
if (!oldEngineBlock || !oldBlock) {
|
|
18701
18709
|
const validation2 = validateValue([block], context.schema, context.keyGenerator);
|
|
18702
18710
|
if (debug.syncValue("Validating and inserting new block in the end of the value", block), validation2.valid || validation2.resolution?.autoResolve) {
|
|
18703
|
-
const engineBlock = toEngineBlock(
|
|
18711
|
+
const repairedBlock = applyAutoResolution(validation2, [block], block), engineBlock = toEngineBlock(repairedBlock, {
|
|
18704
18712
|
schemaTypes: context.schema
|
|
18705
18713
|
});
|
|
18706
18714
|
return withoutNormalizing(editorEngine, () => {
|
|
@@ -18739,46 +18747,53 @@ function syncBlock({
|
|
|
18739
18747
|
blockChanged: !1,
|
|
18740
18748
|
blockValid: !0
|
|
18741
18749
|
};
|
|
18742
|
-
const
|
|
18743
|
-
|
|
18750
|
+
const validationValue = [blockToValidate], validation = validateValue(validationValue, context.schema, context.keyGenerator);
|
|
18751
|
+
if (!validation.valid && validation.resolution?.autoResolve && validation.resolution?.patches.length > 0 && !context.readOnly && context.previousValue && context.previousValue !== value && (console.warn(`${validation.resolution.action} for block with _key '${blockToValidate._key}'. ${validation.resolution?.description}`), validation.resolution.patches.forEach((patch) => {
|
|
18744
18752
|
sendBack({
|
|
18745
18753
|
type: "patch",
|
|
18746
18754
|
patch
|
|
18747
18755
|
});
|
|
18748
|
-
})), validation.valid || validation.resolution?.autoResolve
|
|
18749
|
-
|
|
18750
|
-
|
|
18751
|
-
|
|
18752
|
-
|
|
18753
|
-
|
|
18754
|
-
|
|
18755
|
-
|
|
18756
|
-
|
|
18756
|
+
})), validation.valid || validation.resolution?.autoResolve) {
|
|
18757
|
+
const repairedBlock = applyAutoResolution(validation, validationValue, block);
|
|
18758
|
+
return oldBlock._key === block._key && oldBlock._type === block._type ? (debug.syncValue("Updating block", oldBlock, repairedBlock), withoutNormalizing(editorEngine, () => {
|
|
18759
|
+
withRemoteChanges(editorEngine, () => {
|
|
18760
|
+
withoutPatching(editorEngine, () => {
|
|
18761
|
+
updateBlock({
|
|
18762
|
+
context,
|
|
18763
|
+
editorEngine,
|
|
18764
|
+
oldEngineBlock,
|
|
18765
|
+
block: repairedBlock,
|
|
18766
|
+
index
|
|
18767
|
+
});
|
|
18757
18768
|
});
|
|
18758
18769
|
});
|
|
18759
|
-
})
|
|
18760
|
-
|
|
18761
|
-
|
|
18762
|
-
|
|
18763
|
-
|
|
18764
|
-
|
|
18765
|
-
|
|
18766
|
-
|
|
18767
|
-
|
|
18770
|
+
})) : (debug.syncValue("Replacing block", oldBlock, repairedBlock), withoutNormalizing(editorEngine, () => {
|
|
18771
|
+
withRemoteChanges(editorEngine, () => {
|
|
18772
|
+
withoutPatching(editorEngine, () => {
|
|
18773
|
+
replaceBlock({
|
|
18774
|
+
context,
|
|
18775
|
+
editorEngine,
|
|
18776
|
+
block: repairedBlock,
|
|
18777
|
+
index
|
|
18778
|
+
});
|
|
18768
18779
|
});
|
|
18769
18780
|
});
|
|
18770
|
-
})
|
|
18771
|
-
|
|
18772
|
-
|
|
18773
|
-
|
|
18774
|
-
}
|
|
18775
|
-
|
|
18776
|
-
|
|
18777
|
-
|
|
18778
|
-
|
|
18779
|
-
|
|
18780
|
-
|
|
18781
|
-
|
|
18781
|
+
})), {
|
|
18782
|
+
blockChanged: !0,
|
|
18783
|
+
blockValid: !0
|
|
18784
|
+
};
|
|
18785
|
+
} else
|
|
18786
|
+
return sendBack({
|
|
18787
|
+
type: "invalid value",
|
|
18788
|
+
resolution: validation.resolution,
|
|
18789
|
+
value
|
|
18790
|
+
}), {
|
|
18791
|
+
blockChanged: !1,
|
|
18792
|
+
blockValid: !1
|
|
18793
|
+
};
|
|
18794
|
+
}
|
|
18795
|
+
function applyAutoResolution(validation, validationValue, block) {
|
|
18796
|
+
return !validation.valid && validation.resolution?.autoResolve ? applyAll(validationValue, validation.resolution.patches).at(0) ?? block : block;
|
|
18782
18797
|
}
|
|
18783
18798
|
function replaceBlock({
|
|
18784
18799
|
context,
|