@wordpress/dom
Version:
DOM utilities module for WordPress.
30 lines (28 loc) • 901 B
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = computeCaretRect;
var _getRectangleFromRange = _interopRequireDefault(require("./get-rectangle-from-range"));
var _assertIsDefined = require("../utils/assert-is-defined");
/**
* Internal dependencies
*/
/**
* Get the rectangle for the selection in a container.
*
* @param {Window} win The window of the selection.
*
* @return {DOMRect | null} The rectangle.
*/
function computeCaretRect(win) {
const selection = win.getSelection();
(0, _assertIsDefined.assertIsDefined)(selection, 'selection');
const range = selection.rangeCount ? selection.getRangeAt(0) : null;
if (!range) {
return null;
}
return (0, _getRectangleFromRange.default)(range);
}
//# sourceMappingURL=compute-caret-rect.js.map
;