/var/www/flurhymez/node_modules/popper.js/src/utils
NameSizeModeActions
clockwise.js7730644editdlrm
computeAutoPlacement.js17140644editdlrm
debounce.js11210644editdlrm
find.js3970644editdlrm
findCommonOffsetParent.js16810644editdlrm
findIndex.js5340644editdlrm
getBordersSize.js5640644editdlrm
getBoundaries.js30000644editdlrm
getBoundingClientRect.js20280644editdlrm
getClientRect.js3630644editdlrm
getFixedPositionOffsetParent.js7560644editdlrm
getOffsetParent.js12710644editdlrm
getOffsetRect.js8010644editdlrm
getOffsetRectRelativeToArbitraryNode.js23150644editdlrm
getOppositePlacement.js3820644editdlrm
getOppositeVariation.js3820644editdlrm
getOuterSizes.js6520644editdlrm
getParentNode.js3150644editdlrm
getPopperOffsets.js16960644editdlrm
getReferenceNode.js4010644editdlrm
getReferenceOffsets.js10170644editdlrm
getRoot.js3090644editdlrm
getRoundedOffsets.js17540644editdlrm
getScroll.js6680644editdlrm
getScrollParent.js9100644editdlrm
getStyleComputedProperty.js4550644editdlrm
getSupportedPropertyName.js6760644editdlrm
getViewportOffsetRectRelativeToArtbitraryNode.js8980644editdlrm
getWindow.js2610644editdlrm
getWindowSizes.js7850644editdlrm
includeScroll.js8250644editdlrm
index.js29100644editdlrm
isBrowser.js1170644editdlrm
isFixed.js7000644editdlrm
isFunction.js3770644editdlrm
isIE.js5110644editdlrm
isModifierEnabled.js2850644editdlrm
isModifierRequired.js10950644editdlrm
isNumeric.js2330644editdlrm
isOffsetContainer.js2860644editdlrm
removeEventListeners.js6530644editdlrm
runModifiers.js13230644editdlrm
setAttributes.js5590644editdlrm
setStyles.js6950644editdlrm
setupEventListeners.js12180644editdlrm
Edit: /var/www/flurhymez/node_modules/popper.js/src/utils/findCommonOffsetParent.js (1681B)
import isOffsetContainer from './isOffsetContainer'; import getRoot from './getRoot'; import getOffsetParent from './getOffsetParent'; /** * Finds the offset parent common to the two provided nodes * @method * @memberof Popper.Utils * @argument {Element} element1 * @argument {Element} element2 * @returns {Element} common offset parent */ export default function findCommonOffsetParent(element1, element2) { // This check is needed to avoid errors in case one of the elements isn't defined for any reason if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) { return document.documentElement; } // Here we make sure to give as "start" the element that comes first in the DOM const order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING; const start = order ? element1 : element2; const end = order ? element2 : element1; // Get common ancestor container const range = document.createRange(); range.setStart(start, 0); range.setEnd(end, 0); const { commonAncestorContainer } = range; // Both nodes are inside #document if ( (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer) || start.contains(end) ) { if (isOffsetContainer(commonAncestorContainer)) { return commonAncestorContainer; } return getOffsetParent(commonAncestorContainer); } // one of the nodes is inside shadowDOM, find which one const element1root = getRoot(element1); if (element1root.host) { return findCommonOffsetParent(element1root.host, element2); } else { return findCommonOffsetParent(element1, getRoot(element2).host); } }