@portabletext/editor
Version:
Portable Text Editor made in React
35 lines (34 loc) • 1.16 kB
JavaScript
;
var selectionPoint = require("./selection-point.cjs");
function getBlockEndPoint({
context,
block
}) {
if (selectionPoint.isTextBlock(context, block.node)) {
const lastChild = block.node.children[block.node.children.length - 1];
if (lastChild)
return {
path: [...block.path, "children", {
_key: lastChild._key
}],
offset: selectionPoint.isSpan$1(context, lastChild) ? lastChild.text.length : 0
};
}
return {
path: block.path,
offset: 0
};
}
function isEmptyTextBlock(context, block) {
if (!selectionPoint.isTextBlock(context, block))
return !1;
const onlyText = block.children.every((child) => selectionPoint.isSpan$1(context, child)), blockText = selectionPoint.getTextBlockText(block);
return onlyText && blockText === "";
}
function isEqualSelectionPoints(a, b) {
return a.offset === b.offset && JSON.stringify(a.path) === JSON.stringify(b.path);
}
exports.getBlockEndPoint = getBlockEndPoint;
exports.isEmptyTextBlock = isEmptyTextBlock;
exports.isEqualSelectionPoints = isEqualSelectionPoints;
//# sourceMappingURL=util.is-equal-selection-points.cjs.map