UNPKG

react-aria

Version:
53 lines (49 loc) 2.06 kB
import {getItemElement as $22bbea12c2567021$export$c3d8340acf92597f} from "./utils.mjs"; /* * Copyright 2024 Adobe. All rights reserved. * This file is licensed to you under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. You may obtain a copy * of the License at http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software distributed under * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS * OF ANY KIND, either express or implied. See the License for the specific language * governing permissions and limitations under the License. */ class $a83747cc3f035330$export$8f5ed9ff9f511381 { constructor(ref){ this.ref = ref; } getItemRect(key) { let container = this.ref.current; if (!container) return null; let item = key != null ? (0, $22bbea12c2567021$export$c3d8340acf92597f)(this.ref, key) : null; if (!item) return null; let containerRect = container.getBoundingClientRect(); let itemRect = item.getBoundingClientRect(); return { x: itemRect.left - containerRect.left - container.clientLeft + container.scrollLeft, y: itemRect.top - containerRect.top - container.clientTop + container.scrollTop, width: itemRect.width, height: itemRect.height }; } getContentSize() { let container = this.ref.current; return { width: container?.scrollWidth ?? 0, height: container?.scrollHeight ?? 0 }; } getVisibleRect() { let container = this.ref.current; return { x: container?.scrollLeft ?? 0, y: container?.scrollTop ?? 0, width: container?.clientWidth ?? 0, height: container?.clientHeight ?? 0 }; } } export {$a83747cc3f035330$export$8f5ed9ff9f511381 as DOMLayoutDelegate}; //# sourceMappingURL=DOMLayoutDelegate.mjs.map