@portabletext/editor
Version:
Portable Text Editor made in React
29 lines (28 loc) • 790 B
JavaScript
import { isTypedObject, parseBlock } from "./selection-point.js";
function isTextBlock(context, block) {
return isTypedObject(block) && block._type === context.schema.block.name;
}
function mergeTextBlocks({
context,
targetBlock,
incomingBlock
}) {
const parsedIncomingBlock = parseBlock({
context,
block: incomingBlock,
options: {
refreshKeys: !0,
validateFields: !0
}
});
return !parsedIncomingBlock || !isTextBlock(context, parsedIncomingBlock) ? targetBlock : {
...targetBlock,
children: [...targetBlock.children, ...parsedIncomingBlock.children],
markDefs: [...targetBlock.markDefs ?? [], ...parsedIncomingBlock.markDefs ?? []]
};
}
export {
isTextBlock,
mergeTextBlocks
};
//# sourceMappingURL=util.merge-text-blocks.js.map