@atlaskit/renderer
Version:
Renderer component
9 lines • 687 B
JavaScript
/** Exists in its own module to allow mocking in unit tests */
export var isRangeInsideOfRendererContainer = function isRangeInsideOfRendererContainer(rendererDOM, range) {
var sourceRange = document.createRange();
sourceRange.selectNode(rendererDOM);
var isSelectionStartsAfterRenderer = range.compareBoundaryPoints(Range.START_TO_START, sourceRange) === 1;
var isSelectionStartsBeforeRenderer = range.compareBoundaryPoints(Range.START_TO_END, sourceRange) === 1;
var isSelectionEndsAfterRenderer = range.compareBoundaryPoints(Range.END_TO_END, sourceRange) === 1;
return isSelectionStartsAfterRenderer && isSelectionStartsBeforeRenderer && !isSelectionEndsAfterRenderer;
};