@codecademy/gamut
68.3.068.3.1-alpha.910133.0
dist/PopoverContainer/PopoverContainer.js~
dist/PopoverContainer/PopoverContainer.jsModified+9−9
Index: package/dist/PopoverContainer/PopoverContainer.js
===================================================================
--- package/dist/PopoverContainer/PopoverContainer.js
+++ package/dist/PopoverContainer/PopoverContainer.js
@@ -5,9 +5,9 @@
import * as React from 'react';
import { useWindowScroll, useWindowSize } from 'react-use';
import { BodyPortal } from '../BodyPortal';
import { FocusTrap } from '../FocusTrap';
-import { useResizingParentEffect, useScrollingParents, useScrollingParentsEffect } from './hooks';
+import { getRefElement, getTargetAsElement, useResizingParentEffect, useScrollingParents, useScrollingParentsEffect } from './hooks';
import { getContainers, getPosition, isOutOfView } from './utils';
import { jsx as _jsx } from "react/jsx-runtime";
const PopoverContent = /*#__PURE__*/_styled("div", {
target: "e1j9hq8r0",
@@ -15,9 +15,9 @@
})(variance.compose(system.positioning, variance.create({
transform: {
property: 'transform'
}
-})), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Qb3BvdmVyQ29udGFpbmVyL1BvcG92ZXJDb250YWluZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlCdUIiLCJmaWxlIjoiLi4vLi4vc3JjL1BvcG92ZXJDb250YWluZXIvUG9wb3ZlckNvbnRhaW5lci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBlbGVtZW50RGlyLCBzeXN0ZW0sIHVzZUVsZW1lbnREaXIgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHsgdmFyaWFuY2UgfSBmcm9tICdAY29kZWNhZGVteS92YXJpYW5jZSc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlV2luZG93U2Nyb2xsLCB1c2VXaW5kb3dTaXplIH0gZnJvbSAncmVhY3QtdXNlJztcblxuaW1wb3J0IHsgQm9keVBvcnRhbCB9IGZyb20gJy4uL0JvZHlQb3J0YWwnO1xuaW1wb3J0IHsgRm9jdXNUcmFwIH0gZnJvbSAnLi4vRm9jdXNUcmFwJztcbmltcG9ydCB7XG4gIHVzZVJlc2l6aW5nUGFyZW50RWZmZWN0LFxuICB1c2VTY3JvbGxpbmdQYXJlbnRzLFxuICB1c2VTY3JvbGxpbmdQYXJlbnRzRWZmZWN0LFxufSBmcm9tICcuL2hvb2tzJztcbmltcG9ydCB7IENvbnRhaW5lclN0YXRlLCBQb3BvdmVyQ29udGFpbmVyUHJvcHMgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IGdldENvbnRhaW5lcnMsIGdldFBvc2l0aW9uLCBpc091dE9mVmlldyB9IGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBQb3BvdmVyQ29udGVudCA9IHN0eWxlZC5kaXYoXG4gIHZhcmlhbmNlLmNvbXBvc2UoXG4gICAgc3lzdGVtLnBvc2l0aW9uaW5nLFxuICAgIHZhcmlhbmNlLmNyZWF0ZSh7XG4gICAgICB0cmFuc2Zvcm06IHtcbiAgICAgICAgcHJvcGVydHk6ICd0cmFuc2Zvcm0nLFxuICAgICAgfSxcbiAgICB9KVxuICApXG4pO1xuXG5leHBvcnQgY29uc3QgUG9wb3ZlckNvbnRhaW5lcjogUmVhY3QuRkM8UG9wb3ZlckNvbnRhaW5lclByb3BzPiA9ICh7XG4gIGFsaWdubWVudCA9ICdib3R0b20tbGVmdCcsXG4gIG9mZnNldCA9IDIwLFxuICB5ID0gMCxcbiAgeCA9IDAsXG4gIGludmVydEF4aXMsXG4gIGlubGluZSA9IGZhbHNlLFxuICBpc09wZW4sXG4gIG9uUmVxdWVzdENsb3NlLFxuICB0YXJnZXRSZWYsXG4gIGFsbG93UGFnZUludGVyYWN0aW9uLFxuICBjbG9zZU9uVmlld3BvcnRFeGl0ID0gZmFsc2UsXG4gIC4uLnJlc3Rcbn0pID0+IHtcbiAgY29uc3QgcG9wb3ZlclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IGhhc1JlcXVlc3RlZENsb3NlUmVmID0gdXNlUmVmKGZhbHNlKTtcbiAgY29uc3Qgb25SZXF1ZXN0Q2xvc2VSZWYgPSB1c2VSZWYob25SZXF1ZXN0Q2xvc2UpO1xuICBjb25zdCB7IHdpZHRoOiB3aW5XLCBoZWlnaHQ6IHdpbkggfSA9IHVzZVdpbmRvd1NpemUoKTtcbiAgY29uc3QgeyB4OiB3aW5YLCB5OiB3aW5ZIH0gPSB1c2VXaW5kb3dTY3JvbGwoKTtcbiAgY29uc3QgW2NvbnRhaW5lcnMsIHNldENvbnRhaW5lcnNdID0gdXNlU3RhdGU8Q29udGFpbmVyU3RhdGU+KCk7XG4gIGNvbnN0IFt0YXJnZXRSZWN0LCBzZXRUYXJnZXRSZWN0XSA9IHVzZVN0YXRlPERPTVJlY3Q+KCk7XG4gIGNvbnN0IHBhcmVudCA9IGNvbnRhaW5lcnM/LnBhcmVudDtcblxuICAvLyBNZW1vaXplIHNjcm9sbGluZyBwYXJlbnRzIHRvIGF2b2lkIGV4cGVuc2l2ZSBET00gdHJhdmVyc2Fsc1xuICBjb25zdCBzY3JvbGxpbmdQYXJlbnRzID0gdXNlU2Nyb2xsaW5nUGFyZW50cyh0YXJnZXRSZWYpO1xuXG4gIC8vIEtlZXAgb25SZXF1ZXN0Q2xvc2UgcmVmIHVwIHRvIGRhdGVcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBvblJlcXVlc3RDbG9zZVJlZi5jdXJyZW50ID0gb25SZXF1ZXN0Q2xvc2U7XG4gIH0sIFtvblJlcXVlc3RDbG9zZV0pO1xuXG4gIGNvbnN0IHRhcmdldERpciA9IHVzZUVsZW1lbnREaXIodGFyZ2V0UmVmKTtcblxuICBjb25zdCB0YXJnZXRFbCA9IHRhcmdldFJlZj8uY3VycmVudDtcbiAgLyoqXG4gICAqIFNlZSB7QGxpbmsgZ2V0Q29udGFpbmVyc30gZm9yIG1vcmUgaW5mb3JtYXRpb25cbiAgICogSW5saW5lOiBgbGF5b3V0U291cmNlYCBpcyBkZXJpdmVkIGZyb20gYG9mZnNldFBhcmVudGAuXG4gICAqIFBvcnRhbDogaS5lLiBpc24ndCBpbmxpbmUgc28gd2UgY2FuIHVzZSB0aGUgdGFyZ2V0IGl0c2VsZi5cbiAgICovXG4gIGNvbnN0IGxheW91dFNvdXJjZSA9XG4gICAgaW5saW5lICYmIHRhcmdldEVsPy5vZmZzZXRQYXJlbnQgaW5zdGFuY2VvZiBFbGVtZW50XG4gICAgICA/IHRhcmdldEVsLm9mZnNldFBhcmVudFxuICAgICAgOiB0YXJnZXRFbDtcbiAgY29uc3QgaXNSdGwgPSBpbmxpbmVcbiAgICA/IGxheW91dFNvdXJjZSBpbnN0YW5jZW9mIEVsZW1lbnQgJiYgZWxlbWVudERpcihsYXlvdXRTb3VyY2UpID09PSAncnRsJ1xuICAgIDogdGFyZ2V0RGlyID09PSAncnRsJztcblxuICBjb25zdCBwb3BvdmVyUG9zaXRpb24gPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAocGFyZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBnZXRQb3NpdGlvbih7XG4gICAgICAgIGFsaWdubWVudCxcbiAgICAgICAgY29udGFpbmVyOiBwYXJlbnQsXG4gICAgICAgIGludmVydEF4aXMsXG4gICAgICAgIGlzUnRsLFxuICAgICAgICBvZmZzZXQsXG4gICAgICAgIHgsXG4gICAgICAgIHksXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHsgc3R5bGVzOiB7fSwgZGlyTmV1dHJhbFN0eWxlczogdW5kZWZpbmVkIH07XG4gIH0sIFtwYXJlbnQsIHgsIHksIG9mZnNldCwgYWxpZ25tZW50LCBpbnZlcnRBeGlzLCBpc1J0bF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdGFyZ2V0ID0gdGFyZ2V0UmVmPy5jdXJyZW50O1xuICAgIGlmICghdGFyZ2V0KSByZXR1cm47XG4gICAgc2V0Q29udGFpbmVycyhnZXRDb250YWluZXJzKHRhcmdldCwgaW5saW5lLCB7IHg6IHdpblgsIHk6IHdpblkgfSkpO1xuICB9LCBbdGFyZ2V0UmVmLCBpbmxpbmUsIHdpblcsIHdpbkgsIHdpblgsIHdpblksIHRhcmdldFJlY3RdKTtcblxuICAvLyBVcGRhdGUgdGFyZ2V0IHJlY3RhbmdsZSB3aGVuIHdpbmRvdyBzaXplL3Njcm9sbCBjaGFuZ2VzXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0VGFyZ2V0UmVjdCh0YXJnZXRSZWY/LmN1cnJlbnQ/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpKTtcbiAgfSwgW3RhcmdldFJlZiwgaXNPcGVuLCB3aW5XLCB3aW5ILCB3aW5YLCB3aW5ZXSk7XG5cbiAgLy8gVXBkYXRlIHRhcmdldCByZWN0YW5nbGUgd2hlbiBwYXJlbnQgc2l6ZS9zY3JvbGwgY2hhbmdlc1xuICBjb25zdCB1cGRhdGVUYXJnZXRQb3NpdGlvbiA9IHVzZUNhbGxiYWNrKFxuICAgIChyZWN0PzogRE9NUmVjdCkgPT4ge1xuICAgICAgY29uc3QgdGFyZ2V0ID0gdGFyZ2V0UmVmPy5jdXJyZW50O1xuICAgICAgaWYgKCF0YXJnZXQpIHJldHVybjtcblxuICAgICAgY29uc3QgbmV3UmVjdCA9IHJlY3QgfHwgdGFyZ2V0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgc2V0VGFyZ2V0UmVjdChuZXdSZWN0KTtcblxuICAgICAgY29uc3QgY3VycmVudFNjcm9sbFggPVxuICAgICAgICB3aW5kb3cucGFnZVhPZmZzZXQgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQ7XG4gICAgICBjb25zdCBjdXJyZW50U2Nyb2xsWSA9XG4gICAgICAgIHdpbmRvdy5wYWdlWU9mZnNldCB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wO1xuXG4gICAgICBzZXRDb250YWluZXJzKFxuICAgICAgICBnZXRDb250YWluZXJzKHRhcmdldCwgaW5saW5lLCB7IHg6IGN1cnJlbnRTY3JvbGxYLCB5OiBjdXJyZW50U2Nyb2xsWSB9KVxuICAgICAgKTtcbiAgICB9LFxuICAgIFt0YXJnZXRSZWYsIGlubGluZV1cbiAgKTtcblxuICB1c2VTY3JvbGxpbmdQYXJlbnRzRWZmZWN0KHRhcmdldFJlZiwgdXBkYXRlVGFyZ2V0UG9zaXRpb24pO1xuXG4gIHVzZVJlc2l6aW5nUGFyZW50RWZmZWN0KHRhcmdldFJlZiwgc2V0VGFyZ2V0UmVjdCk7XG5cbiAgLy8gSGFuZGxlIGNsb3NlT25WaWV3cG9ydEV4aXQgd2l0aCBjYWNoZWQgc2Nyb2xsaW5nIHBhcmVudHMgZm9yIHBlcmZvcm1hbmNlXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFjbG9zZU9uVmlld3BvcnRFeGl0KSByZXR1cm47XG5cbiAgICBjb25zdCByZWN0ID0gdGFyZ2V0UmVjdCB8fCBjb250YWluZXJzPy52aWV3cG9ydDtcbiAgICBpZiAoIXJlY3QpIHJldHVybjtcblxuICAgIGNvbnN0IGlzT3V0ID0gaXNPdXRPZlZpZXcoXG4gICAgICByZWN0LFxuICAgICAgdGFyZ2V0UmVmPy5jdXJyZW50IGFzIEhUTUxFbGVtZW50LFxuICAgICAgc2Nyb2xsaW5nUGFyZW50c1xuICAgICk7XG5cbiAgICBpZiAoaXNPdXQgJiYgIWhhc1JlcXVlc3RlZENsb3NlUmVmLmN1cnJlbnQpIHtcbiAgICAgIGhhc1JlcXVlc3RlZENsb3NlUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgb25SZXF1ZXN0Q2xvc2VSZWYuY3VycmVudD8uKCk7XG4gICAgfSBlbHNlIGlmICghaXNPdXQpIHtcbiAgICAgIGhhc1JlcXVlc3RlZENsb3NlUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICB9XG4gIH0sIFtcbiAgICB0YXJnZXRSZWN0LFxuICAgIGNvbnRhaW5lcnM/LnZpZXdwb3J0LFxuICAgIHRhcmdldFJlZixcbiAgICBjbG9zZU9uVmlld3BvcnRFeGl0LFxuICAgIHNjcm9sbGluZ1BhcmVudHMsXG4gIF0pO1xuICAvKipcbiAgICogQWxsb3dzIHRhcmdldFJlZiB0byBiZSBvciBjb250YWluIGEgYnV0dG9uIHRoYXQgdG9nZ2xlcyB0aGUgcG9wb3ZlciBvcGVuIGFuZCBjbG9zZWQuXG4gICAqIFdpdGhvdXQgdGhpcyBjaGVjayBpdCB3b3VsZCB0b2dnbGUgY2xvc2VkIHRoZW4gYmFjayBvcGVuIGltbWVkaWF0ZWx5LlxuICAgKi9cbiAgY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlID0gdXNlQ2FsbGJhY2soXG4gICAgKGU6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KSA9PiB7XG4gICAgICBjb25zdCB0YXJnZXQgPSBlLnRhcmdldCBhcyBOb2RlO1xuICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IHRhcmdldFJlZi5jdXJyZW50O1xuXG4gICAgICBpZiAoIXRhcmdldEVsZW1lbnQpIHJldHVybjtcbiAgICAgIGlmICh0YXJnZXRFbGVtZW50LmNvbnRhaW5zKHRhcmdldCkpIHJldHVybjtcbiAgICAgIGlmIChwb3BvdmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKHRhcmdldCkpIHJldHVybjtcblxuICAgICAgLy8gSWYgd2UgZ2V0IGhlcmUsIGl0J3MgYSBnZW51aW5lIG91dHNpZGUgY2xpY2tcbiAgICAgIG9uUmVxdWVzdENsb3NlPy4oKTtcbiAgICB9LFxuICAgIFtvblJlcXVlc3RDbG9zZSwgdGFyZ2V0UmVmXVxuICApO1xuXG4gIC8qKlxuICAgKiBCYWNrdXAgY2xpY2sgb3V0c2lkZSBoYW5kbGVyIGZvciBjYXNlcyB3aGVyZSBGb2N1c1RyYXAgZGV0ZWN0aW9uIG1pZ2h0IGJlIGludGVyZmVyZWQgd2l0aFxuICAgKiBieSBvdXIgb3duIGZsb2F0aW5nIGVsZW1lbnRzXG4gICAqL1xuICBjb25zdCBoYW5kbGVHbG9iYWxDbGlja091dHNpZGUgPSB1c2VDYWxsYmFjayhcbiAgICAoZTogTW91c2VFdmVudCkgPT4ge1xuICAgICAgY29uc3QgdGFyZ2V0ID0gZS50YXJnZXQgYXMgTm9kZTtcbiAgICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSB0YXJnZXRSZWYuY3VycmVudDtcblxuICAgICAgaWYgKCF0YXJnZXRFbGVtZW50IHx8ICFpc09wZW4pIHJldHVybjtcblxuICAgICAgaWYgKFxuICAgICAgICB0YXJnZXRFbGVtZW50LmNvbnRhaW5zKHRhcmdldCkgfHxcbiAgICAgICAgcG9wb3ZlclJlZi5jdXJyZW50Py5jb250YWlucyh0YXJnZXQpXG4gICAgICApXG4gICAgICAgIHJldHVybjtcblxuICAgICAgLy8gQ2hlY2sgaWYgdGhlIGNsaWNrZWQgZWxlbWVudCBpcyB3aXRoaW4gYW4gT3ZlcmxheSBjb21wb25lbnRcbiAgICAgIGNvbnN0IGNsaWNrZWRFbGVtZW50ID0gdGFyZ2V0IGFzIEVsZW1lbnQ7XG4gICAgICBpZiAoY2xpY2tlZEVsZW1lbnQuY2xvc2VzdCgnW2RhdGEtZmxvYXRpbmc9XCJvdmVybGF5XCJdJykpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBDaGVjayBpZiB0aGUgY2xpY2tlZCBlbGVtZW50IGlzIHdpdGhpbiBhbm90aGVyIFBvcG92ZXIgb3IgUG9wb3ZlckNvbnRhaW5lclxuICAgICAgY29uc3QgaXNGbG9hdGluZ0VsZW1lbnQgPSBjbGlja2VkRWxlbWVudC5jbG9zZXN0KFxuICAgICAgICAnW2RhdGEtZmxvYXRpbmc9XCJwb3BvdmVyXCJdJ1xuICAgICAgKTtcbiAgICAgIGlmIChcbiAgICAgICAgaXNGbG9hdGluZ0VsZW1lbnQgJiZcbiAgICAgICAgIXBvcG92ZXJSZWYuY3VycmVudD8uY29udGFpbnMoaXNGbG9hdGluZ0VsZW1lbnQpXG4gICAgICApIHtcbiAgICAgICAgb25SZXF1ZXN0Q2xvc2U/LigpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIG9uUmVxdWVzdENsb3NlPy4oKTtcbiAgICB9LFxuICAgIFtvblJlcXVlc3RDbG9zZSwgdGFyZ2V0UmVmLCBpc09wZW5dXG4gICk7XG5cbiAgLy8gQmFja3VwIGdsb2JhbCBjbGljayBsaXN0ZW5lciBmb3Igd2hlbiBhIFBvcG92ZXIgb3IgUG9wb3ZlckNvbnRhaW5lciBpcyBvcGVuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzT3Blbikge1xuICAgICAgLy8gVXNlIGEgc21hbGwgZGVsYXkgdG8gZW5zdXJlIHRoaXMgZG9lc24ndCBpbnRlcmZlcmUgd2l0aCB0aGUgRm9jdXNUcmFwJ3Mgb3duIGRldGVjdGlvblxuICAgICAgY29uc3QgdGltZW91dElkID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIGhhbmRsZUdsb2JhbENsaWNrT3V0c2lkZSwgdHJ1ZSk7XG4gICAgICB9LCA1MCk7XG5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0SWQpO1xuICAgICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKFxuICAgICAgICAgICdtb3VzZWRvd24nLFxuICAgICAgICAgIGhhbmRsZUdsb2JhbENsaWNrT3V0c2lkZSxcbiAgICAgICAgICB0cnVlXG4gICAgICAgICk7XG4gICAgICB9O1xuICAgIH1cbiAgfSwgW2lzT3BlbiwgaGFuZGxlR2xvYmFsQ2xpY2tPdXRzaWRlXSk7XG5cbiAgaWYgKCFpc09wZW4gfHwgIXRhcmdldFJlZikgcmV0dXJuIG51bGw7XG5cbiAgY29uc3Qge1xuICAgIGNoaWxkcmVuLFxuICAgIHN0eWxlOiByZXN0U3R5bGUsXG4gICAgLi4ucmVzdFByb3BzXG4gIH0gPSByZXN0IGFzIFJlYWN0LkhUTUxBdHRyaWJ1dGVzPEhUTUxEaXZFbGVtZW50PjtcblxuICBjb25zdCB7IGRpck5ldXRyYWxTdHlsZXMsIHN0eWxlczogcGxhY2VtZW50U3R5bGVzIH0gPSBwb3BvdmVyUG9zaXRpb247XG5cbiAgLyoqXG4gICAqIE5vbi1lbXB0eSBgcGxhY2VtZW50U3R5bGVzYCBtZXJnZWQgaW50byBpbmxpbmUgYHN0eWxlYFxuICAgKiBkaXJOZXV0cmFsU3R5bGVzYCBsYXllcmVkIGxhc3QsIHNlZSB7QGxpbmsgZ2V0UG9zaXRpb259XG4gICAqL1xuICBjb25zdCBwbGFjZW1lbnRTdHlsZXNUb01lcmdlID1cbiAgICBPYmplY3Qua2V5cyhwbGFjZW1lbnRTdHlsZXMpLmxlbmd0aCA+IDAgPyBwbGFjZW1lbnRTdHlsZXMgOiBudWxsO1xuXG4gIGNvbnN0IGhhc01lcmdlZFN0eWxlID0gQm9vbGVhbihcbiAgICByZXN0U3R5bGUgfHwgZGlyTmV1dHJhbFN0eWxlcyB8fCBwbGFjZW1lbnRTdHlsZXNUb01lcmdlXG4gICk7XG4gIGNvbnN0IG1lcmdlZFN0eWxlID0gaGFzTWVyZ2VkU3R5bGVcbiAgICA/IHtcbiAgICAgICAgLi4uKHR5cGVvZiByZXN0U3R5bGUgPT09ICdvYmplY3QnICYmIHJlc3RTdHlsZSA/IHJlc3RTdHlsZSA6IHt9KSxcbiAgICAgICAgLi4uKHBsYWNlbWVudFN0eWxlc1RvTWVyZ2UgPz8ge30pLFxuICAgICAgICAuLi5kaXJOZXV0cmFsU3R5bGVzLFxuICAgICAgfVxuICAgIDogdW5kZWZpbmVkO1xuXG4gIGNvbnN0IGNvbnRlbnQgPSAoXG4gICAgPEZvY3VzVHJhcFxuICAgICAgYWxsb3dQYWdlSW50ZXJhY3Rpb249e2lubGluZSB8fCBhbGxvd1BhZ2VJbnRlcmFjdGlvbn1cbiAgICAgIG9uQ2xpY2tPdXRzaWRlPXtoYW5kbGVDbGlja091dHNpZGV9XG4gICAgICBvbkVzY2FwZUtleT17b25SZXF1ZXN0Q2xvc2V9XG4gICAgPlxuICAgICAgPFBvcG92ZXJDb250ZW50XG4gICAgICAgIGRhdGEtZmxvYXRpbmc9XCJwb3BvdmVyXCJcbiAgICAgICAgZGF0YS10ZXN0aWQ9XCJwb3BvdmVyLWNvbnRlbnQtY29udGFpbmVyXCJcbiAgICAgICAgcG9zaXRpb249XCJhYnNvbHV0ZVwiXG4gICAgICAgIHJlZj17cG9wb3ZlclJlZn1cbiAgICAgICAgLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGdhbXV0L25vLWlubGluZS1zdHlsZSAqL1xuICAgICAgICBzdHlsZT17bWVyZ2VkU3R5bGV9XG4gICAgICAgIHRhYkluZGV4PXstMX1cbiAgICAgICAgekluZGV4PXtpbmxpbmUgPyA1IDogJ2luaXRpYWwnfVxuICAgICAgICB7Li4ucmVzdFByb3BzfVxuICAgICAgPlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L1BvcG92ZXJDb250ZW50PlxuICAgIDwvRm9jdXNUcmFwPlxuICApO1xuXG4gIGlmIChpbmxpbmUpIHJldHVybiBjb250ZW50O1xuXG4gIHJldHVybiA8Qm9keVBvcnRhbD57Y29udGVudH08L0JvZHlQb3J0YWw+O1xufTtcbiJdfQ== */");
+})), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Qb3BvdmVyQ29udGFpbmVyL1BvcG92ZXJDb250YWluZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1CdUIiLCJmaWxlIjoiLi4vLi4vc3JjL1BvcG92ZXJDb250YWluZXIvUG9wb3ZlckNvbnRhaW5lci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBlbGVtZW50RGlyLCBzeXN0ZW0sIHVzZUVsZW1lbnREaXIgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHsgdmFyaWFuY2UgfSBmcm9tICdAY29kZWNhZGVteS92YXJpYW5jZSc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlV2luZG93U2Nyb2xsLCB1c2VXaW5kb3dTaXplIH0gZnJvbSAncmVhY3QtdXNlJztcblxuaW1wb3J0IHsgQm9keVBvcnRhbCB9IGZyb20gJy4uL0JvZHlQb3J0YWwnO1xuaW1wb3J0IHsgRm9jdXNUcmFwIH0gZnJvbSAnLi4vRm9jdXNUcmFwJztcbmltcG9ydCB7XG4gIGdldFJlZkVsZW1lbnQsXG4gIGdldFRhcmdldEFzRWxlbWVudCxcbiAgdXNlUmVzaXppbmdQYXJlbnRFZmZlY3QsXG4gIHVzZVNjcm9sbGluZ1BhcmVudHMsXG4gIHVzZVNjcm9sbGluZ1BhcmVudHNFZmZlY3QsXG59IGZyb20gJy4vaG9va3MnO1xuaW1wb3J0IHsgQ29udGFpbmVyU3RhdGUsIFBvcG92ZXJDb250YWluZXJQcm9wcywgVGFyZ2V0UmVmIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBnZXRDb250YWluZXJzLCBnZXRQb3NpdGlvbiwgaXNPdXRPZlZpZXcgfSBmcm9tICcuL3V0aWxzJztcblxuY29uc3QgUG9wb3ZlckNvbnRlbnQgPSBzdHlsZWQuZGl2KFxuICB2YXJpYW5jZS5jb21wb3NlKFxuICAgIHN5c3RlbS5wb3NpdGlvbmluZyxcbiAgICB2YXJpYW5jZS5jcmVhdGUoe1xuICAgICAgdHJhbnNmb3JtOiB7XG4gICAgICAgIHByb3BlcnR5OiAndHJhbnNmb3JtJyxcbiAgICAgIH0sXG4gICAgfSlcbiAgKVxuKTtcblxuZXhwb3J0IGNvbnN0IFBvcG92ZXJDb250YWluZXI6IFJlYWN0LkZDPFBvcG92ZXJDb250YWluZXJQcm9wcz4gPSAoe1xuICBhbGlnbm1lbnQgPSAnYm90dG9tLWxlZnQnLFxuICBvZmZzZXQgPSAyMCxcbiAgeSA9IDAsXG4gIHggPSAwLFxuICBpbnZlcnRBeGlzLFxuICBpbmxpbmUgPSBmYWxzZSxcbiAgaXNPcGVuLFxuICBvblJlcXVlc3RDbG9zZSxcbiAgdGFyZ2V0UmVmLFxuICBhbGxvd1BhZ2VJbnRlcmFjdGlvbixcbiAgY2xvc2VPblZpZXdwb3J0RXhpdCA9IGZhbHNlLFxuICAuLi5yZXN0XG59KSA9PiB7XG4gIGNvbnN0IHBvcG92ZXJSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCBoYXNSZXF1ZXN0ZWRDbG9zZVJlZiA9IHVzZVJlZihmYWxzZSk7XG4gIGNvbnN0IG9uUmVxdWVzdENsb3NlUmVmID0gdXNlUmVmKG9uUmVxdWVzdENsb3NlKTtcbiAgY29uc3QgeyB3aWR0aDogd2luVywgaGVpZ2h0OiB3aW5IIH0gPSB1c2VXaW5kb3dTaXplKCk7XG4gIGNvbnN0IHsgeDogd2luWCwgeTogd2luWSB9ID0gdXNlV2luZG93U2Nyb2xsKCk7XG4gIGNvbnN0IFtjb250YWluZXJzLCBzZXRDb250YWluZXJzXSA9IHVzZVN0YXRlPENvbnRhaW5lclN0YXRlPigpO1xuICBjb25zdCBbdGFyZ2V0UmVjdCwgc2V0VGFyZ2V0UmVjdF0gPSB1c2VTdGF0ZTxET01SZWN0PigpO1xuICBjb25zdCBwYXJlbnQgPSBjb250YWluZXJzPy5wYXJlbnQ7XG5cbiAgLy8gTWVtb2l6ZSBzY3JvbGxpbmcgcGFyZW50cyB0byBhdm9pZCBleHBlbnNpdmUgRE9NIHRyYXZlcnNhbHNcbiAgY29uc3Qgc2Nyb2xsaW5nUGFyZW50cyA9IHVzZVNjcm9sbGluZ1BhcmVudHModGFyZ2V0UmVmKTtcblxuICAvLyBLZWVwIG9uUmVxdWVzdENsb3NlIHJlZiB1cCB0byBkYXRlXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgb25SZXF1ZXN0Q2xvc2VSZWYuY3VycmVudCA9IG9uUmVxdWVzdENsb3NlO1xuICB9LCBbb25SZXF1ZXN0Q2xvc2VdKTtcblxuICBjb25zdCB0YXJnZXREaXIgPSB1c2VFbGVtZW50RGlyKHRhcmdldFJlZik7XG5cbiAgY29uc3QgdGFyZ2V0RWwgPSB0YXJnZXRSZWY/LmN1cnJlbnQ7XG4gIC8qKlxuICAgKiBTZWUge0BsaW5rIGdldENvbnRhaW5lcnN9IGZvciBtb3JlIGluZm9ybWF0aW9uXG4gICAqIElubGluZTogYGxheW91dFNvdXJjZWAgaXMgZGVyaXZlZCBmcm9tIGBvZmZzZXRQYXJlbnRgLlxuICAgKiBQb3J0YWw6IGkuZS4gaXNuJ3QgaW5saW5lIHNvIHdlIGNhbiB1c2UgdGhlIHRhcmdldCBpdHNlbGYuXG4gICAqL1xuICBjb25zdCBsYXlvdXRTb3VyY2UgPVxuICAgIGlubGluZSAmJiB0YXJnZXRFbD8ub2Zmc2V0UGFyZW50IGluc3RhbmNlb2YgRWxlbWVudFxuICAgICAgPyB0YXJnZXRFbC5vZmZzZXRQYXJlbnRcbiAgICAgIDogdGFyZ2V0RWw7XG4gIGNvbnN0IGlzUnRsID0gaW5saW5lXG4gICAgPyBsYXlvdXRTb3VyY2UgaW5zdGFuY2VvZiBFbGVtZW50ICYmIGVsZW1lbnREaXIobGF5b3V0U291cmNlKSA9PT0gJ3J0bCdcbiAgICA6IHRhcmdldERpciA9PT0gJ3J0bCc7XG5cbiAgY29uc3QgcG9wb3ZlclBvc2l0aW9uID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKHBhcmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gZ2V0UG9zaXRpb24oe1xuICAgICAgICBhbGlnbm1lbnQsXG4gICAgICAgIGNvbnRhaW5lcjogcGFyZW50LFxuICAgICAgICBpbnZlcnRBeGlzLFxuICAgICAgICBpc1J0bCxcbiAgICAgICAgb2Zmc2V0LFxuICAgICAgICB4LFxuICAgICAgICB5LFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiB7IHN0eWxlczoge30sIGRpck5ldXRyYWxTdHlsZXM6IHVuZGVmaW5lZCB9O1xuICB9LCBbcGFyZW50LCB4LCB5LCBvZmZzZXQsIGFsaWdubWVudCwgaW52ZXJ0QXhpcywgaXNSdGxdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IHRhcmdldCA9IGdldFJlZkVsZW1lbnQodGFyZ2V0UmVmKTtcbiAgICBpZiAoIXRhcmdldCkgcmV0dXJuO1xuICAgIHNldENvbnRhaW5lcnMoXG4gICAgICBnZXRDb250YWluZXJzKHRhcmdldCBhcyBUYXJnZXRSZWYsIGlubGluZSwgeyB4OiB3aW5YLCB5OiB3aW5ZIH0pXG4gICAgKTtcbiAgfSwgW3RhcmdldFJlZiwgaW5saW5lLCB3aW5XLCB3aW5ILCB3aW5YLCB3aW5ZLCB0YXJnZXRSZWN0XSk7XG5cbiAgLy8gVXBkYXRlIHRhcmdldCByZWN0YW5nbGUgd2hlbiB3aW5kb3cgc2l6ZS9zY3JvbGwgY2hhbmdlc1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldFRhcmdldFJlY3QoZ2V0UmVmRWxlbWVudCh0YXJnZXRSZWYpPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSk7XG4gIH0sIFt0YXJnZXRSZWYsIGlzT3Blbiwgd2luVywgd2luSCwgd2luWCwgd2luWV0pO1xuXG4gIC8vIFVwZGF0ZSB0YXJnZXQgcmVjdGFuZ2xlIHdoZW4gcGFyZW50IHNpemUvc2Nyb2xsIGNoYW5nZXNcbiAgY29uc3QgdXBkYXRlVGFyZ2V0UG9zaXRpb24gPSB1c2VDYWxsYmFjayhcbiAgICAocmVjdD86IERPTVJlY3QpID0+IHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IGdldFJlZkVsZW1lbnQodGFyZ2V0UmVmKTtcbiAgICAgIGlmICghdGFyZ2V0KSByZXR1cm47XG5cbiAgICAgIGNvbnN0IG5ld1JlY3QgPSByZWN0IHx8IHRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgIHNldFRhcmdldFJlY3QobmV3UmVjdCk7XG5cbiAgICAgIGNvbnN0IGN1cnJlbnRTY3JvbGxYID1cbiAgICAgICAgd2luZG93LnBhZ2VYT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0O1xuICAgICAgY29uc3QgY3VycmVudFNjcm9sbFkgPVxuICAgICAgICB3aW5kb3cucGFnZVlPZmZzZXQgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcDtcblxuICAgICAgc2V0Q29udGFpbmVycyhcbiAgICAgICAgZ2V0Q29udGFpbmVycyh0YXJnZXQgYXMgVGFyZ2V0UmVmLCBpbmxpbmUsIHtcbiAgICAgICAgICB4OiBjdXJyZW50U2Nyb2xsWCxcbiAgICAgICAgICB5OiBjdXJyZW50U2Nyb2xsWSxcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfSxcbiAgICBbdGFyZ2V0UmVmLCBpbmxpbmVdXG4gICk7XG5cbiAgdXNlU2Nyb2xsaW5nUGFyZW50c0VmZmVjdCh0YXJnZXRSZWYsIHVwZGF0ZVRhcmdldFBvc2l0aW9uKTtcbiAgdXNlUmVzaXppbmdQYXJlbnRFZmZlY3QodGFyZ2V0UmVmLCBzZXRUYXJnZXRSZWN0KTtcblxuICAvLyBIYW5kbGUgY2xvc2VPblZpZXdwb3J0RXhpdCB3aXRoIGNhY2hlZCBzY3JvbGxpbmcgcGFyZW50cyBmb3IgcGVyZm9ybWFuY2VcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWNsb3NlT25WaWV3cG9ydEV4aXQpIHJldHVybjtcblxuICAgIGNvbnN0IHJlY3QgPSB0YXJnZXRSZWN0IHx8IGNvbnRhaW5lcnM/LnZpZXdwb3J0O1xuICAgIGlmICghcmVjdCkgcmV0dXJuO1xuXG4gICAgY29uc3QgaXNPdXQgPSBpc091dE9mVmlldyhcbiAgICAgIHJlY3QsXG4gICAgICBnZXRUYXJnZXRBc0VsZW1lbnQoZ2V0UmVmRWxlbWVudCh0YXJnZXRSZWYpKSA/PyB1bmRlZmluZWQsXG4gICAgICBzY3JvbGxpbmdQYXJlbnRzXG4gICAgKTtcblxuICAgIGlmIChpc091dCAmJiAhaGFzUmVxdWVzdGVkQ2xvc2VSZWYuY3VycmVudCkge1xuICAgICAgaGFzUmVxdWVzdGVkQ2xvc2VSZWYuY3VycmVudCA9IHRydWU7XG4gICAgICBvblJlcXVlc3RDbG9zZVJlZi5jdXJyZW50Py4oKTtcbiAgICB9IGVsc2UgaWYgKCFpc091dCkge1xuICAgICAgaGFzUmVxdWVzdGVkQ2xvc2VSZWYuY3VycmVudCA9IGZhbHNlO1xuICAgIH1cbiAgfSwgW1xuICAgIHRhcmdldFJlY3QsXG4gICAgY29udGFpbmVycz8udmlld3BvcnQsXG4gICAgdGFyZ2V0UmVmLFxuICAgIGNsb3NlT25WaWV3cG9ydEV4aXQsXG4gICAgc2Nyb2xsaW5nUGFyZW50cyxcbiAgXSk7XG4gIC8qKlxuICAgKiBBbGxvd3MgdGFyZ2V0UmVmIHRvIGJlIG9yIGNvbnRhaW4gYSBidXR0b24gdGhhdCB0b2dnbGVzIHRoZSBwb3BvdmVyIG9wZW4gYW5kIGNsb3NlZC5cbiAgICogV2l0aG91dCB0aGlzIGNoZWNrIGl0IHdvdWxkIHRvZ2dsZSBjbG9zZWQgdGhlbiBiYWNrIG9wZW4gaW1tZWRpYXRlbHkuXG4gICAqL1xuICBjb25zdCBoYW5kbGVDbGlja091dHNpZGUgPSB1c2VDYWxsYmFjayhcbiAgICAoZTogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpID0+IHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IGUudGFyZ2V0IGFzIE5vZGU7XG4gICAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gZ2V0UmVmRWxlbWVudCh0YXJnZXRSZWYpO1xuXG4gICAgICBpZiAoIXRhcmdldEVsZW1lbnQpIHJldHVybjtcbiAgICAgIGlmICh0YXJnZXRFbGVtZW50LmNvbnRhaW5zKHRhcmdldCkpIHJldHVybjtcbiAgICAgIGlmIChwb3BvdmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKHRhcmdldCkpIHJldHVybjtcblxuICAgICAgLy8gSWYgd2UgZ2V0IGhlcmUsIGl0J3MgYSBnZW51aW5lIG91dHNpZGUgY2xpY2tcbiAgICAgIG9uUmVxdWVzdENsb3NlPy4oKTtcbiAgICB9LFxuICAgIFtvblJlcXVlc3RDbG9zZSwgdGFyZ2V0UmVmXVxuICApO1xuXG4gIC8qKlxuICAgKiBCYWNrdXAgY2xpY2sgb3V0c2lkZSBoYW5kbGVyIGZvciBjYXNlcyB3aGVyZSBGb2N1c1RyYXAgZGV0ZWN0aW9uIG1pZ2h0IGJlIGludGVyZmVyZWQgd2l0aFxuICAgKiBieSBvdXIgb3duIGZsb2F0aW5nIGVsZW1lbnRzXG4gICAqL1xuICBjb25zdCBoYW5kbGVHbG9iYWxDbGlja091dHNpZGUgPSB1c2VDYWxsYmFjayhcbiAgICAoZTogTW91c2VFdmVudCkgPT4ge1xuICAgICAgY29uc3QgdGFyZ2V0ID0gZS50YXJnZXQgYXMgTm9kZTtcbiAgICAgIGNvbnN0IHRhcmdldEVsZW1lbnQgPSBnZXRSZWZFbGVtZW50KHRhcmdldFJlZik7XG5cbiAgICAgIGlmICghdGFyZ2V0RWxlbWVudCB8fCAhaXNPcGVuKSByZXR1cm47XG5cbiAgICAgIGlmIChcbiAgICAgICAgdGFyZ2V0RWxlbWVudC5jb250YWlucyh0YXJnZXQpIHx8XG4gICAgICAgIHBvcG92ZXJSZWYuY3VycmVudD8uY29udGFpbnModGFyZ2V0KVxuICAgICAgKVxuICAgICAgICByZXR1cm47XG5cbiAgICAgIC8vIENoZWNrIGlmIHRoZSBjbGlja2VkIGVsZW1lbnQgaXMgd2l0aGluIGFuIE92ZXJsYXkgY29tcG9uZW50XG4gICAgICBjb25zdCBjbGlja2VkRWxlbWVudCA9IHRhcmdldCBhcyBFbGVtZW50O1xuICAgICAgaWYgKGNsaWNrZWRFbGVtZW50LmNsb3Nlc3QoJ1tkYXRhLWZsb2F0aW5nPVwib3ZlcmxheVwiXScpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gQ2hlY2sgaWYgdGhlIGNsaWNrZWQgZWxlbWVudCBpcyB3aXRoaW4gYW5vdGhlciBQb3BvdmVyIG9yIFBvcG92ZXJDb250YWluZXJcbiAgICAgIGNvbnN0IGlzRmxvYXRpbmdFbGVtZW50ID0gY2xpY2tlZEVsZW1lbnQuY2xvc2VzdChcbiAgICAgICAgJ1tkYXRhLWZsb2F0aW5nPVwicG9wb3ZlclwiXSdcbiAgICAgICk7XG4gICAgICBpZiAoXG4gICAgICAgIGlzRmxvYXRpbmdFbGVtZW50ICYmXG4gICAgICAgICFwb3BvdmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKGlzRmxvYXRpbmdFbGVtZW50KVxuICAgICAgKSB7XG4gICAgICAgIG9uUmVxdWVzdENsb3NlPy4oKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBvblJlcXVlc3RDbG9zZT8uKCk7XG4gICAgfSxcbiAgICBbb25SZXF1ZXN0Q2xvc2UsIHRhcmdldFJlZiwgaXNPcGVuXVxuICApO1xuXG4gIC8vIEJhY2t1cCBnbG9iYWwgY2xpY2sgbGlzdGVuZXIgZm9yIHdoZW4gYSBQb3BvdmVyIG9yIFBvcG92ZXJDb250YWluZXIgaXMgb3BlblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpc09wZW4pIHtcbiAgICAgIC8vIFVzZSBhIHNtYWxsIGRlbGF5IHRvIGVuc3VyZSB0aGlzIGRvZXNuJ3QgaW50ZXJmZXJlIHdpdGggdGhlIEZvY3VzVHJhcCdzIG93biBkZXRlY3Rpb25cbiAgICAgIGNvbnN0IHRpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCBoYW5kbGVHbG9iYWxDbGlja091dHNpZGUsIHRydWUpO1xuICAgICAgfSwgNTApO1xuXG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dElkKTtcbiAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihcbiAgICAgICAgICAnbW91c2Vkb3duJyxcbiAgICAgICAgICBoYW5kbGVHbG9iYWxDbGlja091dHNpZGUsXG4gICAgICAgICAgdHJ1ZVxuICAgICAgICApO1xuICAgICAgfTtcbiAgICB9XG4gIH0sIFtpc09wZW4sIGhhbmRsZUdsb2JhbENsaWNrT3V0c2lkZV0pO1xuXG4gIGlmICghaXNPcGVuIHx8ICF0YXJnZXRSZWYuY3VycmVudCkgcmV0dXJuIG51bGw7XG5cbiAgY29uc3Qge1xuICAgIGNoaWxkcmVuLFxuICAgIHN0eWxlOiByZXN0U3R5bGUsXG4gICAgLi4ucmVzdFByb3BzXG4gIH0gPSByZXN0IGFzIFJlYWN0LkhUTUxBdHRyaWJ1dGVzPEhUTUxEaXZFbGVtZW50PjtcblxuICBjb25zdCB7IGRpck5ldXRyYWxTdHlsZXMsIHN0eWxlczogcGxhY2VtZW50U3R5bGVzIH0gPSBwb3BvdmVyUG9zaXRpb247XG5cbiAgLyoqXG4gICAqIE5vbi1lbXB0eSBgcGxhY2VtZW50U3R5bGVzYCBtZXJnZWQgaW50byBpbmxpbmUgYHN0eWxlYFxuICAgKiBkaXJOZXV0cmFsU3R5bGVzYCBsYXllcmVkIGxhc3QsIHNlZSB7QGxpbmsgZ2V0UG9zaXRpb259XG4gICAqL1xuICBjb25zdCBwbGFjZW1lbnRTdHlsZXNUb01lcmdlID1cbiAgICBPYmplY3Qua2V5cyhwbGFjZW1lbnRTdHlsZXMpLmxlbmd0aCA+IDAgPyBwbGFjZW1lbnRTdHlsZXMgOiBudWxsO1xuXG4gIGNvbnN0IGhhc01lcmdlZFN0eWxlID0gQm9vbGVhbihcbiAgICByZXN0U3R5bGUgfHwgZGlyTmV1dHJhbFN0eWxlcyB8fCBwbGFjZW1lbnRTdHlsZXNUb01lcmdlXG4gICk7XG4gIGNvbnN0IG1lcmdlZFN0eWxlID0gaGFzTWVyZ2VkU3R5bGVcbiAgICA/IHtcbiAgICAgICAgLi4uKHR5cGVvZiByZXN0U3R5bGUgPT09ICdvYmplY3QnICYmIHJlc3RTdHlsZSA/IHJlc3RTdHlsZSA6IHt9KSxcbiAgICAgICAgLi4uKHBsYWNlbWVudFN0eWxlc1RvTWVyZ2UgPz8ge30pLFxuICAgICAgICAuLi5kaXJOZXV0cmFsU3R5bGVzLFxuICAgICAgfVxuICAgIDogdW5kZWZpbmVkO1xuXG4gIGNvbnN0IGNvbnRlbnQgPSAoXG4gICAgPEZvY3VzVHJhcFxuICAgICAgYWxsb3dQYWdlSW50ZXJhY3Rpb249e2lubGluZSB8fCBhbGxvd1BhZ2VJbnRlcmFjdGlvbn1cbiAgICAgIG9uQ2xpY2tPdXRzaWRlPXtoYW5kbGVDbGlja091dHNpZGV9XG4gICAgICBvbkVzY2FwZUtleT17b25SZXF1ZXN0Q2xvc2V9XG4gICAgPlxuICAgICAgPFBvcG92ZXJDb250ZW50XG4gICAgICAgIGRhdGEtZmxvYXRpbmc9XCJwb3BvdmVyXCJcbiAgICAgICAgZGF0YS10ZXN0aWQ9XCJwb3BvdmVyLWNvbnRlbnQtY29udGFpbmVyXCJcbiAgICAgICAgcG9zaXRpb249XCJhYnNvbHV0ZVwiXG4gICAgICAgIHJlZj17cG9wb3ZlclJlZn1cbiAgICAgICAgLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGdhbXV0L25vLWlubGluZS1zdHlsZSAqL1xuICAgICAgICBzdHlsZT17bWVyZ2VkU3R5bGV9XG4gICAgICAgIHRhYkluZGV4PXstMX1cbiAgICAgICAgekluZGV4PXtpbmxpbmUgPyA1IDogJ2luaXRpYWwnfVxuICAgICAgICB7Li4ucmVzdFByb3BzfVxuICAgICAgPlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L1BvcG92ZXJDb250ZW50PlxuICAgIDwvRm9jdXNUcmFwPlxuICApO1xuXG4gIGlmIChpbmxpbmUpIHJldHVybiBjb250ZW50O1xuXG4gIHJldHVybiA8Qm9keVBvcnRhbD57Y29udGVudH08L0JvZHlQb3J0YWw+O1xufTtcbiJdfQ== */");
export const PopoverContainer = ({
alignment = 'bottom-left',
offset = 20,
y = 0,
@@ -79,9 +79,9 @@
dirNeutralStyles: undefined
};
}, [parent, x, y, offset, alignment, invertAxis, isRtl]);
useEffect(() => {
- const target = targetRef?.current;
+ const target = getRefElement(targetRef);
if (!target) return;
setContainers(getContainers(target, inline, {
x: winX,
y: winY
@@ -89,14 +89,14 @@
}, [targetRef, inline, winW, winH, winX, winY, targetRect]);
// Update target rectangle when window size/scroll changes
useEffect(() => {
- setTargetRect(targetRef?.current?.getBoundingClientRect());
+ setTargetRect(getRefElement(targetRef)?.getBoundingClientRect());
}, [targetRef, isOpen, winW, winH, winX, winY]);
// Update target rectangle when parent size/scroll changes
const updateTargetPosition = useCallback(rect => {
- const target = targetRef?.current;
+ const target = getRefElement(targetRef);
if (!target) return;
const newRect = rect || target.getBoundingClientRect();
setTargetRect(newRect);
const currentScrollX = window.pageXOffset || document.documentElement.scrollLeft;
@@ -113,9 +113,9 @@
useEffect(() => {
if (!closeOnViewportExit) return;
const rect = targetRect || containers?.viewport;
if (!rect) return;
- const isOut = isOutOfView(rect, targetRef?.current, scrollingParents);
+ const isOut = isOutOfView(rect, getTargetAsElement(getRefElement(targetRef)) ?? undefined, scrollingParents);
if (isOut && !hasRequestedCloseRef.current) {
hasRequestedCloseRef.current = true;
onRequestCloseRef.current?.();
} else if (!isOut) {
@@ -127,9 +127,9 @@
* Without this check it would toggle closed then back open immediately.
*/
const handleClickOutside = useCallback(e => {
const target = e.target;
- const targetElement = targetRef.current;
+ const targetElement = getRefElement(targetRef);
if (!targetElement) return;
if (targetElement.contains(target)) return;
if (popoverRef.current?.contains(target)) return;
@@ -142,9 +142,9 @@
* by our own floating elements
*/
const handleGlobalClickOutside = useCallback(e => {
const target = e.target;
- const targetElement = targetRef.current;
+ const targetElement = getRefElement(targetRef);
if (!targetElement || !isOpen) return;
if (targetElement.contains(target) || popoverRef.current?.contains(target)) return;
// Check if the clicked element is within an Overlay component
@@ -174,9 +174,9 @@
document.removeEventListener('mousedown', handleGlobalClickOutside, true);
};
}
}, [isOpen, handleGlobalClickOutside]);
- if (!isOpen || !targetRef) return null;
+ if (!isOpen || !targetRef.current) return null;
const {
children,
style: restStyle,
...restProps