MCPcopy Create free account
hub / github.com/adobe/react-spectrum / createDOMRange

Function createDOMRange

packages/react-aria/src/tokenfield/useTokenField.ts:753–760  ·  view source on GitHub ↗
(root: Element, start: Position, end: Position)

Source from the content-addressed store, hash-verified

751}
752
753function createDOMRange(root: Element, start: Position, end: Position): Range {
754 let range = document.createRange();
755 let [startContainer, startOffset] = getDOMPosition(root, start);
756 let [endContainer, endOffset] = getDOMPosition(root, end);
757 range.setStart(startContainer, startOffset);
758 range.setEnd(endContainer, endOffset);
759 return range;
760}
761
762function getDOMPosition(root: Element, pos: Position): [Node, number] {
763 let index = Math.max(0, Math.min(root.childNodes.length, pos.index));

Callers 1

useTokenFieldFunction · 0.85

Calls 1

getDOMPositionFunction · 0.85

Tested by

no test coverage detected