@vuesax-alpha/nightly
Version:
A Component Library for Vue 3
30 lines (27 loc) • 771 B
JavaScript
import { getWindow, getDocumentElement, isWebKit } from '../../utils/dom.mjs';
function getViewportRect(element, strategy) {
const win = getWindow(element);
const html = getDocumentElement(element);
const visualViewport = win.visualViewport;
let width = html.clientWidth;
let height = html.clientHeight;
let x = 0;
let y = 0;
if (visualViewport) {
width = visualViewport.width;
height = visualViewport.height;
const visualViewportBased = isWebKit();
if (!visualViewportBased || visualViewportBased && strategy === "fixed") {
x = visualViewport.offsetLeft;
y = visualViewport.offsetTop;
}
}
return {
width,
height,
x,
y
};
}
export { getViewportRect };
//# sourceMappingURL=get-viewport-rect.mjs.map