{"version":3,"sources":["webpack:///./node_modules/@react-aria/ssr/dist/module.js","webpack:///./node_modules/clsx/dist/clsx.m.js","webpack:///./node_modules/@react-stately/utils/dist/module.js","webpack:///./node_modules/@react-aria/utils/dist/module.js","webpack:///./node_modules/@react-aria/interactions/dist/module.js","webpack:///./node_modules/@react-aria/focus/dist/module.js","webpack:///./node_modules/body-scroll-lock/lib/bodyScrollLock.esm.js"],"names":["$parcel$export","e","n","v","s","Object","defineProperty","get","set","enumerable","configurable","$704cf1d3b684cc5c$exports","$704cf1d3b684cc5c$export$9f8ac96af4b1b2ae","$704cf1d3b684cc5c$export$619500959fc48b26","$704cf1d3b684cc5c$export$535bd6ca7f90a273","$704cf1d3b684cc5c$var$defaultContext","prefix","String","Math","round","random","current","$704cf1d3b684cc5c$var$SSRContext","createContext","props","cur","value","createElement","Provider","children","$704cf1d3b684cc5c$var$canUseDOM","Boolean","window","document","defaultId","ctx","console","warn","isInSSRContext","isSSR","setIsSSR","r","t","f","Array","isArray","length","arguments","$458b0a5536c1a7cf$export$40bfa8c7b0832715","value1","defaultValue","onChange","stateValue","setStateValue","ref","undefined","wasControlled","isControlled","stateRef","setValue","value2","args","onChangeCaller","onChangeArgs","is","oldValue","functionArgs","interceptedValue","$9446cca9a3875146$exports","$9446cca9a3875146$export$7d15b64cf5a3a4c4","min","Infinity","max","$9446cca9a3875146$export$cb6e0bb50bc19463","step","remainder","isNaN","snappedValue","abs","sign","floor","string","toString","index","indexOf","precision","pow","$9446cca9a3875146$export$b6268554fba451f","digits","base","$bdb11010cef70236$exports","$bdb11010cef70236$export$f680877a34711e37","$bdb11010cef70236$export$cd8c9cb68f842629","$bdb11010cef70236$export$b4cc09c592e8fdb8","$f0a04ccd8dbdd83b$export$e5c5a5f917a5871c","useLayoutEffect","$bdb11010cef70236$var$idsUpdaterMap","Map","nextId","res","updateValue","val","delete","newId","idA","idB","setIdA","setIdB","depArray","id","resolvedId","setResolvedId","$1dbecbe27a04f9af$export$14d238f342723f25","updateId","getElementById","$ff5963eb1fccf552$export$e08e3b67e392101e","callbacks","callback","$3ef42575df84b30b$export$9d1611c77c2fe928","result","i","key","a","b","charCodeAt","$5dc95899b306f630$export$c9058316764c140e","refs","$65484d02dcb7eb3e$export$457c3d6518dd4c6f","$65484d02dcb7eb3e$var$DOMPropNames","Set","$65484d02dcb7eb3e$var$labelablePropNames","$65484d02dcb7eb3e$var$propRe","opts","labelable","propNames","filteredProps","prop","prototype","hasOwnProperty","call","has","test","$7215afc6de606d6b$export$de79e2c695e052f3","element","$7215afc6de606d6b$var$supportsPreventScrollCached","focus","$7215afc6de606d6b$var$supportsPreventScroll","preventScroll","scrollableElements","parent","parentNode","rootScrollingElement","scrollingElement","documentElement","HTMLElement","offsetHeight","scrollHeight","offsetWidth","scrollWidth","push","scrollTop","scrollLeft","$7215afc6de606d6b$var$getScrollableElements","$7215afc6de606d6b$var$restoreScrollPosition","$ab71dadb03a6fb2e$export$622cea445a1c5b7d","reverse","orientation","rect","getBoundingClientRect","right","bottom","left","top","$103b0e103f1b5952$exports","$bbed8b41f857bcc0$export$24490316f764c430","$bbed8b41f857bcc0$var$transitionsByElement","$bbed8b41f857bcc0$var$transitionCallbacks","$bbed8b41f857bcc0$var$setupGlobalEvents","onTransitionEnd","properties","target","propertyName","size","removeEventListener","cb","clear","body","addEventListener","transitions","add","fn","requestAnimationFrame","readyState","$9cc09df9fd7676be$export$7bbed75feba39706","$9cc09df9fd7676be$var$draggingElements","containerRef","onHover","onDrag","onPositionChange","onIncrement","onDecrement","onIncrementToMax","onDecrementToMin","onCollapseToggle","getNextOffset","containerOffset","mouseOffset","clientX","clientY","getPosition","dragging","prevPosition","handlers","onMouseDragged","preventDefault","nextOffset","onMouseUp","splice","onMouseDown","currentTarget","some","elt","contains","onMouseEnter","onMouseOut","onKeyDown","$03deb23ff14920c4$export$4eaf04e54aa8eed6","globalListeners","addGlobalListener","eventTarget","type","listener","options","once","removeGlobalListener","removeAllGlobalListeners","forEach","$313b98861ee5dd6c$export$d6875122194c7b44","defaultLabel","label","labelledBy","ids","trim","split","join","$df56164dff5785e2$export$4338b53315abf666","forwardedRef","objRef","$4f58c5f72bcf79f7$export$496315a1608d9602","effect","dependencies","isInitialMount","$9daab02d461809db$export$683480f191c0e3ea","onResize","ResizeObserver","resizeObserverInstance","entries","observe","unobserve","$e7801be82b4b2a53$export$4debdb1a3f0fa79e","context","$62d8ded9296f3872$export$cfa2225e87938781","node","$62d8ded9296f3872$var$isScrollable","parentElement","style","getComputedStyle","overflow","overflowX","overflowY","$5df64b3807dc15ee$export$d699905dd57c73ca","$5df64b3807dc15ee$var$visualViewport","visualViewport","size1","setSize","$5df64b3807dc15ee$var$getViewportSize","newSize","width","height","innerWidth","innerHeight","$ef06256079686ba0$export$f8aeda7b10753fa1","$ef06256079686ba0$var$descriptionId","$ef06256079686ba0$var$descriptionNodes","description","id1","setId","desc","display","textContent","appendChild","refCount","remove","$c87311424ea30a05$exports","$c87311424ea30a05$var$testUserAgent","re","navigator","brands","brand","userAgent","$c87311424ea30a05$var$testPlatform","platform","$c87311424ea30a05$export$9ac100e40613ea10","$c87311424ea30a05$export$186c6964ca17d99","$c87311424ea30a05$export$7bef049ce92e4224","maxTouchPoints","$c87311424ea30a05$export$fedb369cb70207f1","$c87311424ea30a05$export$e1865c3bedcd822b","$c87311424ea30a05$export$78551043582a6a98","$c87311424ea30a05$export$6446a186d09e379e","$c87311424ea30a05$export$a11b0059900ceec8","$e9faafb641e167db$export$90fc3a17d93f704c","event","handler1","handlerRef","isDisabled","handler","this","valueRef","nextRef","newValue","next","done","queue","$2f04cbc44ee30ce0$export$53a0910f038337bd","scrollView","offsetX","$2f04cbc44ee30ce0$var$relativeOffset","offsetY","x","y","maxX","maxY","ancestor","child","axis","sum","offsetParent","$3b117e43dc0ca95d$export$27c701ed9e449e99","$f6c31cce2adf654f$export$45712eceda6fad21","$14c0b72509d70225$var$state","$14c0b72509d70225$var$savedUserSelect","$14c0b72509d70225$var$modifiedElementMap","WeakMap","$14c0b72509d70225$export$16a4697467175487","webkitUserSelect","userSelect","$14c0b72509d70225$export$b0d6fa1ab32e3295","setTimeout","targetOldUserSelect","getAttribute","removeAttribute","$8a9cb279dc87e130$export$60278871457622de","mozInputSource","isTrusted","detail","pointerType","$8a9cb279dc87e130$export$905e7fc544a71f36","nativeEvent","defaultPrevented","stopPropagation","isPropagationStopped","relatedTarget","bubbles","cancelable","eventPhase","timeStamp","$8a9cb279dc87e130$export$715c682d09d639cc","onBlur","isFocused","observer","state","disconnect","e1","HTMLButtonElement","HTMLInputElement","HTMLTextAreaElement","HTMLSelectElement","onBlurHandler","_current","disabled","MutationObserver","dispatchEvent","FocusEvent","attributes","attributeFilter","$ae1eeba8b9eafd08$export$5165eccb35aaadb5","onPress","onPress1","onPressChange","onPressChange1","onPressStart","onPressStart1","onPressEnd","onPressEnd1","onPressUp","onPressUp1","isDisabled1","isPressed","isPressedProp","preventFocusOnPress","shouldCancelOnPointerExit","allowTextSelectionOnPress","_","domProps","register","contextProps","$f6c31cce2adf654f$var$usePressResponderContext","propsRef","setPressed","ignoreEmulatedMouseEvents","ignoreClickAfterPress","didFirePressStart","activePointerId","isOverTarget","pressProps1","triggerPressStart","originalEvent","shiftKey","metaKey","ctrlKey","altKey","triggerPressEnd","wasPressed","triggerPressUp","cancel","$f6c31cce2adf654f$var$createEvent","pressProps","$f6c31cce2adf654f$var$isValidKeyboardEvent","$f6c31cce2adf654f$var$shouldPreventDefaultKeyboard","repeat","onKeyUp","button","$f6c31cce2adf654f$var$isHTMLAnchorLink","click","PointerEvent","onPointerDown","pressure","$f6c31cce2adf654f$var$shouldPreventDefault","pointerId","onPointerMove","onPointerUp","onPointerCancel","$f6c31cce2adf654f$var$isOverTarget","onDragStart","onMouseLeave","onTouchStart","touch","targetTouches","$f6c31cce2adf654f$var$getTouchFromEvent","identifier","onScroll","onTouchMove","$f6c31cce2adf654f$var$getTouchById","onTouchEnd","onTouchCancel","tagName","hasAttribute","code","isContentEditable","role","changedTouches","point","pointRect","radiusX","radiusY","$f6c31cce2adf654f$var$getPointClientRect","draggable","displayName","forwardRef","newRef","Children","only","cloneElement","$f1ab8c75478c6f73$export$3351871ee4b288b8","isRegistered","prevContext","$a1ea59d68270f0dd$export$f8168d8dd8fd66e6","onFocus","onFocusProp","onBlurProp","onFocusChange","onSyntheticFocus","focusProps","$507fabe10e71c6fb$exports","$507fabe10e71c6fb$export$b9b3dfddab17db27","$507fabe10e71c6fb$export$630ff653c5ada6a9","$507fabe10e71c6fb$export$8397ddfc504fdb9a","$507fabe10e71c6fb$export$98e20ec92f614cfe","$507fabe10e71c6fb$export$ffd9e5021c1fb2d6","$507fabe10e71c6fb$export$ec71b4b83ac08ec3","$507fabe10e71c6fb$var$currentModality","$507fabe10e71c6fb$var$changeHandlers","$507fabe10e71c6fb$var$hasSetupGlobalListeners","$507fabe10e71c6fb$var$hasEventBeforeFocus","$507fabe10e71c6fb$var$hasBlurredWindowRecently","$507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS","Tab","Escape","$507fabe10e71c6fb$var$triggerChangeHandlers","modality","$507fabe10e71c6fb$var$handleKeyboardEvent","$507fabe10e71c6fb$var$isValidKey","$507fabe10e71c6fb$var$handlePointerEvent","$507fabe10e71c6fb$var$handleClickEvent","$507fabe10e71c6fb$var$handleFocusEvent","$507fabe10e71c6fb$var$handleWindowBlur","$507fabe10e71c6fb$var$setupGlobalFocusEvents","apply","setModality","isTextInput","autoFocus","isFocusVisibleState","setFocusVisible","isFocusVisible","deps","KeyboardEvent","$507fabe10e71c6fb$var$isKeyboardFocusEvent","$9ab94262bd0047c7$export$420e68273165f4ec","onBlurWithin","onFocusWithin","onFocusWithinChange","isFocusWithin","focusWithinProps","$6179b936705e76d3$export$ae780daf29e6d456","$6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents","$6179b936705e76d3$var$hoverCount","$6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents","$6179b936705e76d3$var$handleGlobalPointerEvent","$6179b936705e76d3$var$setupGlobalTouchEvents","onHoverStart","onHoverChange","onHoverEnd","isHovered","setHovered","hoverProps","hoverProps1","triggerHoverEnd","triggerHoverEnd1","triggerHoverStart","onPointerEnter","onPointerLeave","$e0b6e0b68ec7f50f$export$872b660ac5a1ff98","onInteractOutside","onInteractOutsideStart","isPointerDown","$e0b6e0b68ec7f50f$var$isValidEvent","ownerDocument","$93925083ecbb358c$export$48d1ea6320830260","shouldStopPropagation","isDefaultPrevented","error","$46d819fcbaf35654$export$8f71654801c2f7cd","keyboardProps","$e8a7022cf87cba2a$export$36da96379f79f245","onMoveStart","onMove","onMoveEnd","didMove","lastPosition","moveProps","start","move","deltaX","deltaY","end","onMouseMove","pageX","pageY","findIndex","triggerKeyboardMove","$7d0a636d7a4dcefd$export$2123ff2b87c81ca","onScrollHandler","$8a26561d2877236e$export$c24ed0104d07eab9","$8a26561d2877236e$var$DEFAULT_THRESHOLD","onLongPressStart","onLongPressEnd","onLongPress","threshold","accessibilityDescription","timeRef","onContextMenu","clearTimeout","longPressProps","$9bf71ea28793e738$exports","$9bf71ea28793e738$export$20e40289641fbbb6","$9bf71ea28793e738$export$10c5169755ce7bd7","$9bf71ea28793e738$export$2d6ec8fc375ceafa","$9bf71ea28793e738$export$c5251b9e124bf29","$6a99195332edec8b$export$80f3e147d781571c","lastFocusedElement","activeElement","$645f2e67b85a24c9$export$e989c0fffaa6b27a","childElement","nodeName","SVGElement","visibility","isVisible","defaultView","computedDisplay","computedVisibility","$645f2e67b85a24c9$var$isStyleVisible","$645f2e67b85a24c9$var$isAttributeVisible","$9bf71ea28793e738$var$FocusContext","$9bf71ea28793e738$var$activeScope","$9bf71ea28793e738$var$scopes","contain","restoreFocus","startRef","endRef","scopeRef","parentScope","nextSibling","nodes","$9bf71ea28793e738$var$isAncestorScope","focusedNode","raf","scope1","focusedElement","scope","$9bf71ea28793e738$var$isElementInScope","walker","$9bf71ea28793e738$var$getScopeRoot","tabbable","currentNode","nextElement","previousNode","nextNode","nextElementSibling","previousElementSibling","$9bf71ea28793e738$var$focusElement","$9bf71ea28793e738$var$isElementInChildScope","$9bf71ea28793e738$var$focusFirstInScope","cancelAnimationFrame","$9bf71ea28793e738$var$useFocusContainment","nodeToRestoreRef","nodeToRestore","keys","$9bf71ea28793e738$var$isElementInAnyScope","blur","$9bf71ea28793e738$var$useRestoreFocus","autoFocusRef","useRef","$9bf71ea28793e738$var$useAutoFocus","focusManager","from","wrap","sentinel","$9bf71ea28793e738$var$createFocusManagerForScope","hidden","$9bf71ea28793e738$var$focusableElements","$9bf71ea28793e738$var$FOCUSABLE_ELEMENT_SELECTOR","$9bf71ea28793e738$var$TABBABLE_ELEMENT_SELECTOR","scroll","err1","err","root","selector","createTreeWalker","NodeFilter","SHOW_ELEMENT","FILTER_REJECT","matches","accept","FILTER_SKIP","FILTER_ACCEPT","defaultOptions","$9bf71ea28793e738$var$last","last","lastChild","$907718708eab68af$export$1a38b4ad7f578e1d","$f7dceffc5ad7768b$export$4e328f61c538687f","within","isFocused1","setFocused","updateState","focusClass","focusRingClass","className","$e6afbd83fe6ebbd2$exports","$e6afbd83fe6ebbd2$export$13f3202a3e5ddd5","$e6afbd83fe6ebbd2$export$4c014de7c8940b4c","$e6afbd83fe6ebbd2$var$FocusableContext","$e6afbd83fe6ebbd2$var$FocusableProvider","otherProps","domRef","interactions","$e6afbd83fe6ebbd2$var$useFocusableContext","interactionProps","focusableProps","tabIndex","excludeFromTabOrder","hasPassiveEvents","passiveTestOptions","isIosDevice","locks","documentListenerAdded","initialClientY","previousBodyOverflowSetting","previousBodyPaddingRight","allowTouchMove","el","lock","rawEvent","touches","restoreOverflowSetting","paddingRight","disableBodyScroll","targetElement","concat","arr","arr2","_toConsumableArray","ontouchstart","ontouchmove","clientHeight","isTargetElementTotallyScrolled","handleScroll","passive","_reserveScrollBarGap","reserveScrollBarGap","scrollBarGap","clientWidth","setOverflowHidden","clearAllBodyScrollLocks","enableBodyScroll","filter"],"mappings":"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","file":"defaultVendors~CustomerReviewCarousel~Header~QuotesListing~VacancyListing-f100b7c4f56e4a7aa43e.js","sourcesContent":["import $89yE2$react, {useContext as $89yE2$useContext, useMemo as $89yE2$useMemo, useState as $89yE2$useState, useLayoutEffect as $89yE2$useLayoutEffect} from \"react\";\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $704cf1d3b684cc5c$exports = {};\n\n$parcel$export($704cf1d3b684cc5c$exports, \"SSRProvider\", () => $704cf1d3b684cc5c$export$9f8ac96af4b1b2ae);\n$parcel$export($704cf1d3b684cc5c$exports, \"useSSRSafeId\", () => $704cf1d3b684cc5c$export$619500959fc48b26);\n$parcel$export($704cf1d3b684cc5c$exports, \"useIsSSR\", () => $704cf1d3b684cc5c$export$535bd6ca7f90a273);\n\n// Default context value to use in case there is no SSRProvider. This is fine for\n// client-only apps. In order to support multiple copies of React Aria potentially\n// being on the page at once, the prefix is set to a random number. SSRProvider\n// will reset this to zero for consistency between server and client, so in the\n// SSR case multiple copies of React Aria is not supported.\nconst $704cf1d3b684cc5c$var$defaultContext = {\n prefix: String(Math.round(Math.random() * 10000000000)),\n current: 0\n};\nconst $704cf1d3b684cc5c$var$SSRContext = /*#__PURE__*/ $89yE2$react.createContext($704cf1d3b684cc5c$var$defaultContext);\nfunction $704cf1d3b684cc5c$export$9f8ac96af4b1b2ae(props) {\n let cur = $89yE2$useContext($704cf1d3b684cc5c$var$SSRContext);\n let value = $89yE2$useMemo(()=>({\n // If this is the first SSRProvider, start with an empty string prefix, otherwise\n // append and increment the counter.\n prefix: cur === $704cf1d3b684cc5c$var$defaultContext ? '' : `${cur.prefix}-${++cur.current}`,\n current: 0\n })\n , [\n cur\n ]);\n return(/*#__PURE__*/ $89yE2$react.createElement($704cf1d3b684cc5c$var$SSRContext.Provider, {\n value: value\n }, props.children));\n}\nlet $704cf1d3b684cc5c$var$canUseDOM = Boolean(typeof window !== 'undefined' && window.document && window.document.createElement);\nfunction $704cf1d3b684cc5c$export$619500959fc48b26(defaultId) {\n let ctx = $89yE2$useContext($704cf1d3b684cc5c$var$SSRContext);\n // If we are rendering in a non-DOM environment, and there's no SSRProvider,\n // provide a warning to hint to the developer to add one.\n if (ctx === $704cf1d3b684cc5c$var$defaultContext && !$704cf1d3b684cc5c$var$canUseDOM) console.warn('When server rendering, you must wrap your application in an to ensure consistent ids are generated between the client and server.');\n return $89yE2$useMemo(()=>defaultId || `react-aria${ctx.prefix}-${++ctx.current}`\n , [\n defaultId\n ]);\n}\nfunction $704cf1d3b684cc5c$export$535bd6ca7f90a273() {\n let cur = $89yE2$useContext($704cf1d3b684cc5c$var$SSRContext);\n let isInSSRContext = cur !== $704cf1d3b684cc5c$var$defaultContext;\n let [isSSR, setIsSSR] = $89yE2$useState(isInSSRContext);\n // If on the client, and the component was initially server rendered,\n // then schedule a layout effect to update the component after hydration.\n if (typeof window !== 'undefined' && isInSSRContext) // This if statement technically breaks the rules of hooks, but is safe\n // because the condition never changes after mounting.\n // eslint-disable-next-line react-hooks/rules-of-hooks\n $89yE2$useLayoutEffect(()=>{\n setIsSSR(false);\n }, []);\n return isSSR;\n}\n\n\n\n\nexport {$704cf1d3b684cc5c$export$9f8ac96af4b1b2ae as SSRProvider, $704cf1d3b684cc5c$export$619500959fc48b26 as useSSRSafeId, $704cf1d3b684cc5c$export$535bd6ca7f90a273 as useIsSSR};\n//# sourceMappingURL=module.js.map\n","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e))for(t=0;t $458b0a5536c1a7cf$export$40bfa8c7b0832715);\n\nfunction $458b0a5536c1a7cf$export$40bfa8c7b0832715(value1, defaultValue, onChange) {\n let [stateValue, setStateValue] = $6imuh$useState(value1 || defaultValue);\n let ref = $6imuh$useRef(value1 !== undefined);\n let wasControlled = ref.current;\n let isControlled = value1 !== undefined;\n // Internal state reference for useCallback\n let stateRef = $6imuh$useRef(stateValue);\n if (wasControlled !== isControlled) console.warn(`WARN: A component changed from ${wasControlled ? 'controlled' : 'uncontrolled'} to ${isControlled ? 'controlled' : 'uncontrolled'}.`);\n ref.current = isControlled;\n let setValue = $6imuh$useCallback((value2, ...args)=>{\n let onChangeCaller = (value, ...onChangeArgs)=>{\n if (onChange) {\n if (!Object.is(stateRef.current, value)) onChange(value, ...onChangeArgs);\n }\n if (!isControlled) stateRef.current = value;\n };\n if (typeof value2 === 'function') {\n console.warn('We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320');\n // this supports functional updates https://reactjs.org/docs/hooks-reference.html#functional-updates\n // when someone using useControlledState calls setControlledState(myFunc)\n // this will call our useState setState with a function as well which invokes myFunc and calls onChange with the value from myFunc\n // if we're in an uncontrolled state, then we also return the value of myFunc which to setState looks as though it was just called with myFunc from the beginning\n // otherwise we just return the controlled value, which won't cause a rerender because React knows to bail out when the value is the same\n let updateFunction = (oldValue, ...functionArgs)=>{\n let interceptedValue = value2(isControlled ? stateRef.current : oldValue, ...functionArgs);\n onChangeCaller(interceptedValue, ...args);\n if (!isControlled) return interceptedValue;\n return oldValue;\n };\n setStateValue(updateFunction);\n } else {\n if (!isControlled) setStateValue(value2);\n onChangeCaller(value2, ...args);\n }\n }, [\n isControlled,\n onChange\n ]);\n // If a controlled component's value prop changes, we need to update stateRef\n if (isControlled) stateRef.current = value1;\n else value1 = stateValue;\n return [\n value1,\n setValue\n ];\n}\n\n\nvar $9446cca9a3875146$exports = {};\n\n$parcel$export($9446cca9a3875146$exports, \"clamp\", () => $9446cca9a3875146$export$7d15b64cf5a3a4c4);\n$parcel$export($9446cca9a3875146$exports, \"snapValueToStep\", () => $9446cca9a3875146$export$cb6e0bb50bc19463);\n$parcel$export($9446cca9a3875146$exports, \"toFixedNumber\", () => $9446cca9a3875146$export$b6268554fba451f);\nfunction $9446cca9a3875146$export$7d15b64cf5a3a4c4(value, min = -Infinity, max = Infinity) {\n let newValue = Math.min(Math.max(value, min), max);\n return newValue;\n}\nfunction $9446cca9a3875146$export$cb6e0bb50bc19463(value, min, max, step) {\n let remainder = (value - (isNaN(min) ? 0 : min)) % step;\n let snappedValue = Math.abs(remainder) * 2 >= step ? value + Math.sign(remainder) * (step - Math.abs(remainder)) : value - remainder;\n if (!isNaN(min)) {\n if (snappedValue < min) snappedValue = min;\n else if (!isNaN(max) && snappedValue > max) snappedValue = min + Math.floor((max - min) / step) * step;\n } else if (!isNaN(max) && snappedValue > max) snappedValue = Math.floor(max / step) * step;\n // correct floating point behavior by rounding to step precision\n let string = step.toString();\n let index = string.indexOf('.');\n let precision = index >= 0 ? string.length - index : 0;\n if (precision > 0) {\n let pow = Math.pow(10, precision);\n snappedValue = Math.round(snappedValue * pow) / pow;\n }\n return snappedValue;\n}\nfunction $9446cca9a3875146$export$b6268554fba451f(value, digits, base = 10) {\n const pow = Math.pow(base, digits);\n return Math.round(value * pow) / pow;\n}\n\n\n\n\nexport {$458b0a5536c1a7cf$export$40bfa8c7b0832715 as useControlledState, $9446cca9a3875146$export$7d15b64cf5a3a4c4 as clamp, $9446cca9a3875146$export$cb6e0bb50bc19463 as snapValueToStep, $9446cca9a3875146$export$b6268554fba451f as toFixedNumber};\n//# sourceMappingURL=module.js.map\n","import $12uGp$react, {useState as $12uGp$useState, useRef as $12uGp$useRef, useCallback as $12uGp$useCallback, useEffect as $12uGp$useEffect} from \"react\";\nimport {useSSRSafeId as $12uGp$useSSRSafeId} from \"@react-aria/ssr\";\nimport $12uGp$clsx from \"clsx\";\nimport {clamp as $103b0e103f1b5952$re_export$clamp, snapValueToStep as $103b0e103f1b5952$re_export$snapValueToStep} from \"@react-stately/utils\";\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $bdb11010cef70236$exports = {};\n\n$parcel$export($bdb11010cef70236$exports, \"useId\", () => $bdb11010cef70236$export$f680877a34711e37);\n$parcel$export($bdb11010cef70236$exports, \"mergeIds\", () => $bdb11010cef70236$export$cd8c9cb68f842629);\n$parcel$export($bdb11010cef70236$exports, \"useSlotId\", () => $bdb11010cef70236$export$b4cc09c592e8fdb8);\n\nvar $f0a04ccd8dbdd83b$exports = {};\n\n$parcel$export($f0a04ccd8dbdd83b$exports, \"useLayoutEffect\", () => $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c);\n\nconst $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c = typeof window !== 'undefined' ? $12uGp$react.useLayoutEffect : ()=>{\n};\n\n\n\n\nlet $bdb11010cef70236$var$idsUpdaterMap = new Map();\nfunction $bdb11010cef70236$export$f680877a34711e37(defaultId) {\n let [value, setValue] = $12uGp$useState(defaultId);\n let nextId = $12uGp$useRef(null);\n let res = $12uGp$useSSRSafeId(value);\n let updateValue = $12uGp$useCallback((val)=>{\n nextId.current = val;\n }, []);\n $bdb11010cef70236$var$idsUpdaterMap.set(res, updateValue);\n $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(()=>{\n let r = res;\n return ()=>{\n $bdb11010cef70236$var$idsUpdaterMap.delete(r);\n };\n }, [\n res\n ]);\n // This cannot cause an infinite loop because the ref is updated first.\n // eslint-disable-next-line\n $12uGp$useEffect(()=>{\n let newId = nextId.current;\n if (newId) {\n nextId.current = null;\n setValue(newId);\n }\n });\n return res;\n}\nfunction $bdb11010cef70236$export$cd8c9cb68f842629(idA, idB) {\n if (idA === idB) return idA;\n let setIdA = $bdb11010cef70236$var$idsUpdaterMap.get(idA);\n if (setIdA) {\n setIdA(idB);\n return idB;\n }\n let setIdB = $bdb11010cef70236$var$idsUpdaterMap.get(idB);\n if (setIdB) {\n setIdB(idA);\n return idA;\n }\n return idB;\n}\nfunction $bdb11010cef70236$export$b4cc09c592e8fdb8(depArray = []) {\n let id = $bdb11010cef70236$export$f680877a34711e37();\n let [resolvedId, setResolvedId] = $1dbecbe27a04f9af$export$14d238f342723f25(id);\n let updateId = $12uGp$useCallback(()=>{\n setResolvedId(function*() {\n yield id;\n yield document.getElementById(id) ? id : null;\n });\n }, [\n id,\n setResolvedId\n ]);\n $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(updateId, [\n id,\n updateId,\n ...depArray\n ]);\n return resolvedId;\n}\n\n\nvar $ff5963eb1fccf552$exports = {};\n\n$parcel$export($ff5963eb1fccf552$exports, \"chain\", () => $ff5963eb1fccf552$export$e08e3b67e392101e);\nfunction $ff5963eb1fccf552$export$e08e3b67e392101e(...callbacks) {\n return (...args)=>{\n for (let callback of callbacks)if (typeof callback === 'function') callback(...args);\n };\n}\n\n\nvar $3ef42575df84b30b$exports = {};\n\n$parcel$export($3ef42575df84b30b$exports, \"mergeProps\", () => $3ef42575df84b30b$export$9d1611c77c2fe928);\n\n\n\nfunction $3ef42575df84b30b$export$9d1611c77c2fe928(...args) {\n // Start with a base clone of the first argument. This is a lot faster than starting\n // with an empty object and adding properties as we go.\n let result = {\n ...args[0]\n };\n for(let i = 1; i < args.length; i++){\n let props = args[i];\n for(let key in props){\n let a = result[key];\n let b = props[key];\n // Chain events\n if (typeof a === 'function' && typeof b === 'function' && // This is a lot faster than a regex.\n key[0] === 'o' && key[1] === 'n' && key.charCodeAt(2) >= /* 'A' */ 65 && key.charCodeAt(2) <= /* 'Z' */ 90) result[key] = $ff5963eb1fccf552$export$e08e3b67e392101e(a, b);\n else if ((key === 'className' || key === 'UNSAFE_className') && typeof a === 'string' && typeof b === 'string') result[key] = $12uGp$clsx(a, b);\n else if (key === 'id' && a && b) result.id = $bdb11010cef70236$export$cd8c9cb68f842629(a, b);\n else result[key] = b !== undefined ? b : a;\n }\n }\n return result;\n}\n\n\nvar $5dc95899b306f630$exports = {};\n\n$parcel$export($5dc95899b306f630$exports, \"mergeRefs\", () => $5dc95899b306f630$export$c9058316764c140e);\nfunction $5dc95899b306f630$export$c9058316764c140e(...refs) {\n return (value)=>{\n for (let ref of refs){\n if (typeof ref === 'function') ref(value);\n else if (ref != null) ref.current = value;\n }\n };\n}\n\n\nvar $65484d02dcb7eb3e$exports = {};\n\n$parcel$export($65484d02dcb7eb3e$exports, \"filterDOMProps\", () => $65484d02dcb7eb3e$export$457c3d6518dd4c6f);\nconst $65484d02dcb7eb3e$var$DOMPropNames = new Set([\n 'id'\n]);\nconst $65484d02dcb7eb3e$var$labelablePropNames = new Set([\n 'aria-label',\n 'aria-labelledby',\n 'aria-describedby',\n 'aria-details'\n]);\nconst $65484d02dcb7eb3e$var$propRe = /^(data-.*)$/;\nfunction $65484d02dcb7eb3e$export$457c3d6518dd4c6f(props, opts = {\n}) {\n let { labelable: labelable , propNames: propNames } = opts;\n let filteredProps = {\n };\n for(const prop in props)if (Object.prototype.hasOwnProperty.call(props, prop) && ($65484d02dcb7eb3e$var$DOMPropNames.has(prop) || labelable && $65484d02dcb7eb3e$var$labelablePropNames.has(prop) || (propNames === null || propNames === void 0 ? void 0 : propNames.has(prop)) || $65484d02dcb7eb3e$var$propRe.test(prop))) filteredProps[prop] = props[prop];\n return filteredProps;\n}\n\n\nvar $7215afc6de606d6b$exports = {};\n\n$parcel$export($7215afc6de606d6b$exports, \"focusWithoutScrolling\", () => $7215afc6de606d6b$export$de79e2c695e052f3);\nfunction $7215afc6de606d6b$export$de79e2c695e052f3(element) {\n if ($7215afc6de606d6b$var$supportsPreventScroll()) element.focus({\n preventScroll: true\n });\n else {\n let scrollableElements = $7215afc6de606d6b$var$getScrollableElements(element);\n element.focus();\n $7215afc6de606d6b$var$restoreScrollPosition(scrollableElements);\n }\n}\nlet $7215afc6de606d6b$var$supportsPreventScrollCached = null;\nfunction $7215afc6de606d6b$var$supportsPreventScroll() {\n if ($7215afc6de606d6b$var$supportsPreventScrollCached == null) {\n $7215afc6de606d6b$var$supportsPreventScrollCached = false;\n try {\n var focusElem = document.createElement('div');\n focusElem.focus({\n get preventScroll () {\n $7215afc6de606d6b$var$supportsPreventScrollCached = true;\n return true;\n }\n });\n } catch (e) {\n // Ignore\n }\n }\n return $7215afc6de606d6b$var$supportsPreventScrollCached;\n}\nfunction $7215afc6de606d6b$var$getScrollableElements(element) {\n var parent = element.parentNode;\n var scrollableElements = [];\n var rootScrollingElement = document.scrollingElement || document.documentElement;\n while(parent instanceof HTMLElement && parent !== rootScrollingElement){\n if (parent.offsetHeight < parent.scrollHeight || parent.offsetWidth < parent.scrollWidth) scrollableElements.push({\n element: parent,\n scrollTop: parent.scrollTop,\n scrollLeft: parent.scrollLeft\n });\n parent = parent.parentNode;\n }\n if (rootScrollingElement instanceof HTMLElement) scrollableElements.push({\n element: rootScrollingElement,\n scrollTop: rootScrollingElement.scrollTop,\n scrollLeft: rootScrollingElement.scrollLeft\n });\n return scrollableElements;\n}\nfunction $7215afc6de606d6b$var$restoreScrollPosition(scrollableElements) {\n for (let { element: element , scrollTop: scrollTop , scrollLeft: scrollLeft } of scrollableElements){\n element.scrollTop = scrollTop;\n element.scrollLeft = scrollLeft;\n }\n}\n\n\nvar $ab71dadb03a6fb2e$exports = {};\n\n$parcel$export($ab71dadb03a6fb2e$exports, \"getOffset\", () => $ab71dadb03a6fb2e$export$622cea445a1c5b7d);\nfunction $ab71dadb03a6fb2e$export$622cea445a1c5b7d(element, reverse, orientation = 'horizontal') {\n let rect = element.getBoundingClientRect();\n if (reverse) return orientation === 'horizontal' ? rect.right : rect.bottom;\n return orientation === 'horizontal' ? rect.left : rect.top;\n}\n\n\nvar $103b0e103f1b5952$exports = {};\n\n$parcel$export($103b0e103f1b5952$exports, \"clamp\", () => $103b0e103f1b5952$re_export$clamp);\n$parcel$export($103b0e103f1b5952$exports, \"snapValueToStep\", () => $103b0e103f1b5952$re_export$snapValueToStep);\n\n\n\nvar $bbed8b41f857bcc0$exports = {};\n\n$parcel$export($bbed8b41f857bcc0$exports, \"runAfterTransition\", () => $bbed8b41f857bcc0$export$24490316f764c430);\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // We store a global list of elements that are currently transitioning,\n// mapped to a set of CSS properties that are transitioning for that element.\n// This is necessary rather than a simple count of transitions because of browser\n// bugs, e.g. Chrome sometimes fires both transitionend and transitioncancel rather\n// than one or the other. So we need to track what's actually transitioning so that\n// we can ignore these duplicate events.\nlet $bbed8b41f857bcc0$var$transitionsByElement = new Map();\n// A list of callbacks to call once there are no transitioning elements.\nlet $bbed8b41f857bcc0$var$transitionCallbacks = new Set();\nfunction $bbed8b41f857bcc0$var$setupGlobalEvents() {\n if (typeof window === 'undefined') return;\n let onTransitionStart = (e)=>{\n // Add the transitioning property to the list for this element.\n let transitions = $bbed8b41f857bcc0$var$transitionsByElement.get(e.target);\n if (!transitions) {\n transitions = new Set();\n $bbed8b41f857bcc0$var$transitionsByElement.set(e.target, transitions);\n // The transitioncancel event must be registered on the element itself, rather than as a global\n // event. This enables us to handle when the node is deleted from the document while it is transitioning.\n // In that case, the cancel event would have nowhere to bubble to so we need to handle it directly.\n e.target.addEventListener('transitioncancel', onTransitionEnd);\n }\n transitions.add(e.propertyName);\n };\n let onTransitionEnd = (e)=>{\n // Remove property from list of transitioning properties.\n let properties = $bbed8b41f857bcc0$var$transitionsByElement.get(e.target);\n if (!properties) return;\n properties.delete(e.propertyName);\n // If empty, remove transitioncancel event, and remove the element from the list of transitioning elements.\n if (properties.size === 0) {\n e.target.removeEventListener('transitioncancel', onTransitionEnd);\n $bbed8b41f857bcc0$var$transitionsByElement.delete(e.target);\n }\n // If no transitioning elements, call all of the queued callbacks.\n if ($bbed8b41f857bcc0$var$transitionsByElement.size === 0) {\n for (let cb of $bbed8b41f857bcc0$var$transitionCallbacks)cb();\n $bbed8b41f857bcc0$var$transitionCallbacks.clear();\n }\n };\n document.body.addEventListener('transitionrun', onTransitionStart);\n document.body.addEventListener('transitionend', onTransitionEnd);\n}\nif (typeof document !== 'undefined') {\n if (document.readyState !== 'loading') $bbed8b41f857bcc0$var$setupGlobalEvents();\n else document.addEventListener('DOMContentLoaded', $bbed8b41f857bcc0$var$setupGlobalEvents);\n}\nfunction $bbed8b41f857bcc0$export$24490316f764c430(fn) {\n // Wait one frame to see if an animation starts, e.g. a transition on mount.\n requestAnimationFrame(()=>{\n // If no transitions are running, call the function immediately.\n // Otherwise, add it to a list of callbacks to run at the end of the animation.\n if ($bbed8b41f857bcc0$var$transitionsByElement.size === 0) fn();\n else $bbed8b41f857bcc0$var$transitionCallbacks.add(fn);\n });\n}\n\n\nvar $9cc09df9fd7676be$exports = {};\n\n$parcel$export($9cc09df9fd7676be$exports, \"useDrag1D\", () => $9cc09df9fd7676be$export$7bbed75feba39706);\n\n\n// Keep track of elements that we are currently handling dragging for via useDrag1D.\n// If there's an ancestor and a descendant both using useDrag1D(), and the user starts\n// dragging the descendant, we don't want useDrag1D events to fire for the ancestor.\nconst $9cc09df9fd7676be$var$draggingElements = [];\nfunction $9cc09df9fd7676be$export$7bbed75feba39706(props) {\n console.warn('useDrag1D is deprecated, please use `useMove` instead https://react-spectrum.adobe.com/react-aria/useMove.html');\n let { containerRef: containerRef , reverse: reverse , orientation: orientation , onHover: onHover , onDrag: onDrag , onPositionChange: onPositionChange , onIncrement: onIncrement , onDecrement: onDecrement , onIncrementToMax: onIncrementToMax , onDecrementToMin: onDecrementToMin , onCollapseToggle: onCollapseToggle } = props;\n let getPosition = (e)=>orientation === 'horizontal' ? e.clientX : e.clientY\n ;\n let getNextOffset = (e)=>{\n let containerOffset = $ab71dadb03a6fb2e$export$622cea445a1c5b7d(containerRef.current, reverse, orientation);\n let mouseOffset = getPosition(e);\n let nextOffset = reverse ? containerOffset - mouseOffset : mouseOffset - containerOffset;\n return nextOffset;\n };\n let dragging = $12uGp$useRef(false);\n let prevPosition = $12uGp$useRef(0);\n // Keep track of the current handlers in a ref so that the events can access them.\n let handlers = $12uGp$useRef({\n onPositionChange: onPositionChange,\n onDrag: onDrag\n });\n handlers.current.onDrag = onDrag;\n handlers.current.onPositionChange = onPositionChange;\n let onMouseDragged = (e)=>{\n e.preventDefault();\n let nextOffset = getNextOffset(e);\n if (!dragging.current) {\n dragging.current = true;\n if (handlers.current.onDrag) handlers.current.onDrag(true);\n if (handlers.current.onPositionChange) handlers.current.onPositionChange(nextOffset);\n }\n if (prevPosition.current === nextOffset) return;\n prevPosition.current = nextOffset;\n if (onPositionChange) onPositionChange(nextOffset);\n };\n let onMouseUp = (e)=>{\n const target = e.target;\n dragging.current = false;\n let nextOffset = getNextOffset(e);\n if (handlers.current.onDrag) handlers.current.onDrag(false);\n if (handlers.current.onPositionChange) handlers.current.onPositionChange(nextOffset);\n $9cc09df9fd7676be$var$draggingElements.splice($9cc09df9fd7676be$var$draggingElements.indexOf(target), 1);\n window.removeEventListener('mouseup', onMouseUp, false);\n window.removeEventListener('mousemove', onMouseDragged, false);\n };\n let onMouseDown = (e)=>{\n const target = e.currentTarget;\n // If we're already handling dragging on a descendant with useDrag1D, then\n // we don't want to handle the drag motion on this target as well.\n if ($9cc09df9fd7676be$var$draggingElements.some((elt)=>target.contains(elt)\n )) return;\n $9cc09df9fd7676be$var$draggingElements.push(target);\n window.addEventListener('mousemove', onMouseDragged, false);\n window.addEventListener('mouseup', onMouseUp, false);\n };\n let onMouseEnter = ()=>{\n if (onHover) onHover(true);\n };\n let onMouseOut = ()=>{\n if (onHover) onHover(false);\n };\n let onKeyDown = (e)=>{\n switch(e.key){\n case 'Left':\n case 'ArrowLeft':\n if (orientation === 'horizontal') {\n e.preventDefault();\n if (onDecrement && !reverse) onDecrement();\n else if (onIncrement && reverse) onIncrement();\n }\n break;\n case 'Up':\n case 'ArrowUp':\n if (orientation === 'vertical') {\n e.preventDefault();\n if (onDecrement && !reverse) onDecrement();\n else if (onIncrement && reverse) onIncrement();\n }\n break;\n case 'Right':\n case 'ArrowRight':\n if (orientation === 'horizontal') {\n e.preventDefault();\n if (onIncrement && !reverse) onIncrement();\n else if (onDecrement && reverse) onDecrement();\n }\n break;\n case 'Down':\n case 'ArrowDown':\n if (orientation === 'vertical') {\n e.preventDefault();\n if (onIncrement && !reverse) onIncrement();\n else if (onDecrement && reverse) onDecrement();\n }\n break;\n case 'Home':\n e.preventDefault();\n if (onDecrementToMin) onDecrementToMin();\n break;\n case 'End':\n e.preventDefault();\n if (onIncrementToMax) onIncrementToMax();\n break;\n case 'Enter':\n e.preventDefault();\n if (onCollapseToggle) onCollapseToggle();\n break;\n }\n };\n return {\n onMouseDown: onMouseDown,\n onMouseEnter: onMouseEnter,\n onMouseOut: onMouseOut,\n onKeyDown: onKeyDown\n };\n}\n\n\nvar $03deb23ff14920c4$exports = {};\n\n$parcel$export($03deb23ff14920c4$exports, \"useGlobalListeners\", () => $03deb23ff14920c4$export$4eaf04e54aa8eed6);\n\nfunction $03deb23ff14920c4$export$4eaf04e54aa8eed6() {\n let globalListeners = $12uGp$useRef(new Map());\n let addGlobalListener = $12uGp$useCallback((eventTarget, type, listener, options)=>{\n // Make sure we remove the listener after it is called with the `once` option.\n let fn = (options === null || options === void 0 ? void 0 : options.once) ? (...args)=>{\n globalListeners.current.delete(listener);\n listener(...args);\n } : listener;\n globalListeners.current.set(listener, {\n type: type,\n eventTarget: eventTarget,\n fn: fn,\n options: options\n });\n eventTarget.addEventListener(type, listener, options);\n }, []);\n let removeGlobalListener = $12uGp$useCallback((eventTarget, type, listener, options)=>{\n var ref;\n let fn = ((ref = globalListeners.current.get(listener)) === null || ref === void 0 ? void 0 : ref.fn) || listener;\n eventTarget.removeEventListener(type, fn, options);\n globalListeners.current.delete(listener);\n }, []);\n let removeAllGlobalListeners = $12uGp$useCallback(()=>{\n globalListeners.current.forEach((value, key)=>{\n removeGlobalListener(value.eventTarget, value.type, key, value.options);\n });\n }, [\n removeGlobalListener\n ]);\n // eslint-disable-next-line arrow-body-style\n $12uGp$useEffect(()=>{\n return removeAllGlobalListeners;\n }, [\n removeAllGlobalListeners\n ]);\n return {\n addGlobalListener: addGlobalListener,\n removeGlobalListener: removeGlobalListener,\n removeAllGlobalListeners: removeAllGlobalListeners\n };\n}\n\n\nvar $313b98861ee5dd6c$exports = {};\n\n$parcel$export($313b98861ee5dd6c$exports, \"useLabels\", () => $313b98861ee5dd6c$export$d6875122194c7b44);\n\nfunction $313b98861ee5dd6c$export$d6875122194c7b44(props, defaultLabel) {\n let { id: id , 'aria-label': label , 'aria-labelledby': labelledBy } = props;\n // If there is both an aria-label and aria-labelledby,\n // combine them by pointing to the element itself.\n id = $bdb11010cef70236$export$f680877a34711e37(id);\n if (labelledBy && label) {\n let ids = new Set([\n ...labelledBy.trim().split(/\\s+/),\n id\n ]);\n labelledBy = [\n ...ids\n ].join(' ');\n } else if (labelledBy) labelledBy = labelledBy.trim().split(/\\s+/).join(' ');\n // If no labels are provided, use the default\n if (!label && !labelledBy && defaultLabel) label = defaultLabel;\n return {\n id: id,\n 'aria-label': label,\n 'aria-labelledby': labelledBy\n };\n}\n\n\nvar $df56164dff5785e2$exports = {};\n\n$parcel$export($df56164dff5785e2$exports, \"useObjectRef\", () => $df56164dff5785e2$export$4338b53315abf666);\n\n\nfunction $df56164dff5785e2$export$4338b53315abf666(forwardedRef) {\n const objRef = $12uGp$useRef();\n /**\n * We're using `useLayoutEffect` here instead of `useEffect` because we want\n * to make sure that the `ref` value is up to date before other places in the\n * the execution cycle try to read it.\n */ $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(()=>{\n if (!forwardedRef) return;\n if (typeof forwardedRef === 'function') forwardedRef(objRef.current);\n else forwardedRef.current = objRef.current;\n }, [\n forwardedRef\n ]);\n return objRef;\n}\n\n\nvar $4f58c5f72bcf79f7$exports = {};\n\n$parcel$export($4f58c5f72bcf79f7$exports, \"useUpdateEffect\", () => $4f58c5f72bcf79f7$export$496315a1608d9602);\n\nfunction $4f58c5f72bcf79f7$export$496315a1608d9602(effect, dependencies) {\n const isInitialMount = $12uGp$useRef(true);\n $12uGp$useEffect(()=>{\n if (isInitialMount.current) isInitialMount.current = false;\n else effect();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, dependencies);\n}\n\n\n\nvar $9daab02d461809db$exports = {};\n\n$parcel$export($9daab02d461809db$exports, \"useResizeObserver\", () => $9daab02d461809db$export$683480f191c0e3ea);\n\nfunction $9daab02d461809db$var$hasResizeObserver() {\n return typeof window.ResizeObserver !== 'undefined';\n}\nfunction $9daab02d461809db$export$683480f191c0e3ea(options) {\n const { ref: ref , onResize: onResize } = options;\n $12uGp$useEffect(()=>{\n let element = ref === null || ref === void 0 ? void 0 : ref.current;\n if (!element) return;\n if (!$9daab02d461809db$var$hasResizeObserver()) {\n window.addEventListener('resize', onResize, false);\n return ()=>{\n window.removeEventListener('resize', onResize, false);\n };\n } else {\n const resizeObserverInstance = new window.ResizeObserver((entries)=>{\n if (!entries.length) return;\n onResize();\n });\n resizeObserverInstance.observe(element);\n return ()=>{\n if (element) resizeObserverInstance.unobserve(element);\n };\n }\n }, [\n onResize,\n ref\n ]);\n}\n\n\nvar $e7801be82b4b2a53$exports = {};\n\n$parcel$export($e7801be82b4b2a53$exports, \"useSyncRef\", () => $e7801be82b4b2a53$export$4debdb1a3f0fa79e);\n\nfunction $e7801be82b4b2a53$export$4debdb1a3f0fa79e(context, ref) {\n $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(()=>{\n if (context && context.ref && ref) {\n context.ref.current = ref.current;\n return ()=>{\n context.ref.current = null;\n };\n }\n }, [\n context,\n ref\n ]);\n}\n\n\nvar $62d8ded9296f3872$exports = {};\n\n$parcel$export($62d8ded9296f3872$exports, \"getScrollParent\", () => $62d8ded9296f3872$export$cfa2225e87938781);\nfunction $62d8ded9296f3872$export$cfa2225e87938781(node) {\n while(node && !$62d8ded9296f3872$var$isScrollable(node))node = node.parentElement;\n return node || document.scrollingElement || document.documentElement;\n}\nfunction $62d8ded9296f3872$var$isScrollable(node) {\n let style = window.getComputedStyle(node);\n return /(auto|scroll)/.test(style.overflow + style.overflowX + style.overflowY);\n}\n\n\nvar $5df64b3807dc15ee$exports = {};\n\n$parcel$export($5df64b3807dc15ee$exports, \"useViewportSize\", () => $5df64b3807dc15ee$export$d699905dd57c73ca);\n\n// @ts-ignore\nlet $5df64b3807dc15ee$var$visualViewport = typeof window !== 'undefined' && window.visualViewport;\nfunction $5df64b3807dc15ee$export$d699905dd57c73ca() {\n let [size1, setSize] = $12uGp$useState(()=>$5df64b3807dc15ee$var$getViewportSize()\n );\n $12uGp$useEffect(()=>{\n // Use visualViewport api to track available height even on iOS virtual keyboard opening\n let onResize = ()=>{\n setSize((size)=>{\n let newSize = $5df64b3807dc15ee$var$getViewportSize();\n if (newSize.width === size.width && newSize.height === size.height) return size;\n return newSize;\n });\n };\n if (!$5df64b3807dc15ee$var$visualViewport) window.addEventListener('resize', onResize);\n else $5df64b3807dc15ee$var$visualViewport.addEventListener('resize', onResize);\n return ()=>{\n if (!$5df64b3807dc15ee$var$visualViewport) window.removeEventListener('resize', onResize);\n else $5df64b3807dc15ee$var$visualViewport.removeEventListener('resize', onResize);\n };\n }, []);\n return size1;\n}\nfunction $5df64b3807dc15ee$var$getViewportSize() {\n return {\n width: ($5df64b3807dc15ee$var$visualViewport === null || $5df64b3807dc15ee$var$visualViewport === void 0 ? void 0 : $5df64b3807dc15ee$var$visualViewport.width) || window.innerWidth,\n height: ($5df64b3807dc15ee$var$visualViewport === null || $5df64b3807dc15ee$var$visualViewport === void 0 ? void 0 : $5df64b3807dc15ee$var$visualViewport.height) || window.innerHeight\n };\n}\n\n\nvar $ef06256079686ba0$exports = {};\n\n$parcel$export($ef06256079686ba0$exports, \"useDescription\", () => $ef06256079686ba0$export$f8aeda7b10753fa1);\n\n\nlet $ef06256079686ba0$var$descriptionId = 0;\nconst $ef06256079686ba0$var$descriptionNodes = new Map();\nfunction $ef06256079686ba0$export$f8aeda7b10753fa1(description) {\n let [id1, setId] = $12uGp$useState(null);\n $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(()=>{\n if (!description) return;\n let desc = $ef06256079686ba0$var$descriptionNodes.get(description);\n if (!desc) {\n let id = `react-aria-description-${$ef06256079686ba0$var$descriptionId++}`;\n setId(id);\n let node = document.createElement('div');\n node.id = id;\n node.style.display = 'none';\n node.textContent = description;\n document.body.appendChild(node);\n desc = {\n refCount: 0,\n element: node\n };\n $ef06256079686ba0$var$descriptionNodes.set(description, desc);\n } else setId(desc.element.id);\n desc.refCount++;\n return ()=>{\n if (--desc.refCount === 0) {\n desc.element.remove();\n $ef06256079686ba0$var$descriptionNodes.delete(description);\n }\n };\n }, [\n description\n ]);\n return {\n 'aria-describedby': description ? id1 : undefined\n };\n}\n\n\nvar $c87311424ea30a05$exports = {};\n\n$parcel$export($c87311424ea30a05$exports, \"isMac\", () => $c87311424ea30a05$export$9ac100e40613ea10);\n$parcel$export($c87311424ea30a05$exports, \"isIPhone\", () => $c87311424ea30a05$export$186c6964ca17d99);\n$parcel$export($c87311424ea30a05$exports, \"isIPad\", () => $c87311424ea30a05$export$7bef049ce92e4224);\n$parcel$export($c87311424ea30a05$exports, \"isIOS\", () => $c87311424ea30a05$export$fedb369cb70207f1);\n$parcel$export($c87311424ea30a05$exports, \"isAppleDevice\", () => $c87311424ea30a05$export$e1865c3bedcd822b);\n$parcel$export($c87311424ea30a05$exports, \"isWebKit\", () => $c87311424ea30a05$export$78551043582a6a98);\n$parcel$export($c87311424ea30a05$exports, \"isChrome\", () => $c87311424ea30a05$export$6446a186d09e379e);\n$parcel$export($c87311424ea30a05$exports, \"isAndroid\", () => $c87311424ea30a05$export$a11b0059900ceec8);\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ function $c87311424ea30a05$var$testUserAgent(re) {\n var ref;\n if (typeof window === 'undefined' || window.navigator == null) return false;\n return ((ref = window.navigator['userAgentData']) === null || ref === void 0 ? void 0 : ref.brands.some((brand)=>re.test(brand.brand)\n )) || re.test(window.navigator.userAgent);\n}\nfunction $c87311424ea30a05$var$testPlatform(re) {\n return typeof window !== 'undefined' && window.navigator != null ? re.test((window.navigator['userAgentData'] || window.navigator).platform) : false;\n}\nfunction $c87311424ea30a05$export$9ac100e40613ea10() {\n return $c87311424ea30a05$var$testPlatform(/^Mac/i);\n}\nfunction $c87311424ea30a05$export$186c6964ca17d99() {\n return $c87311424ea30a05$var$testPlatform(/^iPhone/i);\n}\nfunction $c87311424ea30a05$export$7bef049ce92e4224() {\n return $c87311424ea30a05$var$testPlatform(/^iPad/i) || $c87311424ea30a05$export$9ac100e40613ea10() && navigator.maxTouchPoints > 1;\n}\nfunction $c87311424ea30a05$export$fedb369cb70207f1() {\n return $c87311424ea30a05$export$186c6964ca17d99() || $c87311424ea30a05$export$7bef049ce92e4224();\n}\nfunction $c87311424ea30a05$export$e1865c3bedcd822b() {\n return $c87311424ea30a05$export$9ac100e40613ea10() || $c87311424ea30a05$export$fedb369cb70207f1();\n}\nfunction $c87311424ea30a05$export$78551043582a6a98() {\n return $c87311424ea30a05$var$testUserAgent(/AppleWebKit/i) && !$c87311424ea30a05$export$6446a186d09e379e();\n}\nfunction $c87311424ea30a05$export$6446a186d09e379e() {\n return $c87311424ea30a05$var$testUserAgent(/Chrome/i);\n}\nfunction $c87311424ea30a05$export$a11b0059900ceec8() {\n return $c87311424ea30a05$var$testUserAgent(/Android/i);\n}\n\n\nvar $e9faafb641e167db$exports = {};\n\n$parcel$export($e9faafb641e167db$exports, \"useEvent\", () => $e9faafb641e167db$export$90fc3a17d93f704c);\n\nfunction $e9faafb641e167db$export$90fc3a17d93f704c(ref, event, handler1, options) {\n let handlerRef = $12uGp$useRef(handler1);\n handlerRef.current = handler1;\n let isDisabled = handler1 == null;\n $12uGp$useEffect(()=>{\n if (isDisabled) return;\n let element = ref.current;\n let handler = (e)=>handlerRef.current.call(this, e)\n ;\n element.addEventListener(event, handler, options);\n return ()=>{\n element.removeEventListener(event, handler, options);\n };\n }, [\n ref,\n event,\n options,\n isDisabled\n ]);\n}\n\n\nvar $1dbecbe27a04f9af$exports = {};\n\n$parcel$export($1dbecbe27a04f9af$exports, \"useValueEffect\", () => $1dbecbe27a04f9af$export$14d238f342723f25);\n\n\nfunction $1dbecbe27a04f9af$export$14d238f342723f25(defaultValue) {\n let [value, setValue] = $12uGp$useState(defaultValue);\n let valueRef = $12uGp$useRef(value);\n let effect = $12uGp$useRef(null);\n valueRef.current = value;\n // Store the function in a ref so we can always access the current version\n // which has the proper `value` in scope.\n let nextRef = $12uGp$useRef(null);\n nextRef.current = ()=>{\n // Run the generator to the next yield.\n let newValue = effect.current.next();\n // If the generator is done, reset the effect.\n if (newValue.done) {\n effect.current = null;\n return;\n }\n // If the value is the same as the current value,\n // then continue to the next yield. Otherwise,\n // set the value in state and wait for the next layout effect.\n if (value === newValue.value) nextRef.current();\n else setValue(newValue.value);\n };\n $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c(()=>{\n // If there is an effect currently running, continue to the next yield.\n if (effect.current) nextRef.current();\n });\n let queue = $12uGp$useCallback((fn)=>{\n effect.current = fn(valueRef.current);\n nextRef.current();\n }, [\n effect,\n nextRef\n ]);\n return [\n value,\n queue\n ];\n}\n\n\nvar $2f04cbc44ee30ce0$exports = {};\n\n$parcel$export($2f04cbc44ee30ce0$exports, \"scrollIntoView\", () => $2f04cbc44ee30ce0$export$53a0910f038337bd);\nfunction $2f04cbc44ee30ce0$export$53a0910f038337bd(scrollView, element) {\n let offsetX = $2f04cbc44ee30ce0$var$relativeOffset(scrollView, element, 'left');\n let offsetY = $2f04cbc44ee30ce0$var$relativeOffset(scrollView, element, 'top');\n let width = element.offsetWidth;\n let height = element.offsetHeight;\n let x = scrollView.scrollLeft;\n let y = scrollView.scrollTop;\n let maxX = x + scrollView.offsetWidth;\n let maxY = y + scrollView.offsetHeight;\n if (offsetX <= x) x = offsetX;\n else if (offsetX + width > maxX) x += offsetX + width - maxX;\n if (offsetY <= y) y = offsetY;\n else if (offsetY + height > maxY) y += offsetY + height - maxY;\n scrollView.scrollLeft = x;\n scrollView.scrollTop = y;\n}\n/**\n * Computes the offset left or top from child to ancestor by accumulating\n * offsetLeft or offsetTop through intervening offsetParents.\n */ function $2f04cbc44ee30ce0$var$relativeOffset(ancestor, child, axis) {\n const prop = axis === 'left' ? 'offsetLeft' : 'offsetTop';\n let sum = 0;\n while(child.offsetParent){\n sum += child[prop];\n if (child.offsetParent === ancestor) break;\n else if (child.offsetParent.contains(ancestor)) {\n // If the ancestor is not `position:relative`, then we stop at\n // _its_ offset parent, and we subtract off _its_ offset, so that\n // we end up with the proper offset from child to ancestor.\n sum -= ancestor[prop];\n break;\n }\n child = child.offsetParent;\n }\n return sum;\n}\n\n\n\n\nexport {$bdb11010cef70236$export$f680877a34711e37 as useId, $bdb11010cef70236$export$cd8c9cb68f842629 as mergeIds, $bdb11010cef70236$export$b4cc09c592e8fdb8 as useSlotId, $ff5963eb1fccf552$export$e08e3b67e392101e as chain, $3ef42575df84b30b$export$9d1611c77c2fe928 as mergeProps, $5dc95899b306f630$export$c9058316764c140e as mergeRefs, $65484d02dcb7eb3e$export$457c3d6518dd4c6f as filterDOMProps, $7215afc6de606d6b$export$de79e2c695e052f3 as focusWithoutScrolling, $ab71dadb03a6fb2e$export$622cea445a1c5b7d as getOffset, $103b0e103f1b5952$re_export$clamp as clamp, $103b0e103f1b5952$re_export$snapValueToStep as snapValueToStep, $bbed8b41f857bcc0$export$24490316f764c430 as runAfterTransition, $9cc09df9fd7676be$export$7bbed75feba39706 as useDrag1D, $03deb23ff14920c4$export$4eaf04e54aa8eed6 as useGlobalListeners, $313b98861ee5dd6c$export$d6875122194c7b44 as useLabels, $df56164dff5785e2$export$4338b53315abf666 as useObjectRef, $4f58c5f72bcf79f7$export$496315a1608d9602 as useUpdateEffect, $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c as useLayoutEffect, $9daab02d461809db$export$683480f191c0e3ea as useResizeObserver, $e7801be82b4b2a53$export$4debdb1a3f0fa79e as useSyncRef, $62d8ded9296f3872$export$cfa2225e87938781 as getScrollParent, $5df64b3807dc15ee$export$d699905dd57c73ca as useViewportSize, $ef06256079686ba0$export$f8aeda7b10753fa1 as useDescription, $c87311424ea30a05$export$9ac100e40613ea10 as isMac, $c87311424ea30a05$export$186c6964ca17d99 as isIPhone, $c87311424ea30a05$export$7bef049ce92e4224 as isIPad, $c87311424ea30a05$export$fedb369cb70207f1 as isIOS, $c87311424ea30a05$export$e1865c3bedcd822b as isAppleDevice, $c87311424ea30a05$export$78551043582a6a98 as isWebKit, $c87311424ea30a05$export$6446a186d09e379e as isChrome, $c87311424ea30a05$export$a11b0059900ceec8 as isAndroid, $e9faafb641e167db$export$90fc3a17d93f704c as useEvent, $1dbecbe27a04f9af$export$14d238f342723f25 as useValueEffect, $2f04cbc44ee30ce0$export$53a0910f038337bd as scrollIntoView};\n//# sourceMappingURL=module.js.map\n","import {mergeProps as $bx7SL$mergeProps, useSyncRef as $bx7SL$useSyncRef, useGlobalListeners as $bx7SL$useGlobalListeners, focusWithoutScrolling as $bx7SL$focusWithoutScrolling, isIOS as $bx7SL$isIOS, runAfterTransition as $bx7SL$runAfterTransition, useLayoutEffect as $bx7SL$useLayoutEffect, isMac as $bx7SL$isMac, useEvent as $bx7SL$useEvent, useDescription as $bx7SL$useDescription} from \"@react-aria/utils\";\nimport $bx7SL$react, {useRef as $bx7SL$useRef, useContext as $bx7SL$useContext, useState as $bx7SL$useState, useMemo as $bx7SL$useMemo, useEffect as $bx7SL$useEffect, useCallback as $bx7SL$useCallback} from \"react\";\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $3b117e43dc0ca95d$exports = {};\n\n$parcel$export($3b117e43dc0ca95d$exports, \"Pressable\", () => $3b117e43dc0ca95d$export$27c701ed9e449e99);\n\nvar $f6c31cce2adf654f$exports = {};\n\n$parcel$export($f6c31cce2adf654f$exports, \"usePress\", () => $f6c31cce2adf654f$export$45712eceda6fad21);\n\n// Note that state only matters here for iOS. Non-iOS gets user-select: none applied to the target element\n// rather than at the document level so we just need to apply/remove user-select: none for each pressed element individually\nlet $14c0b72509d70225$var$state = 'default';\nlet $14c0b72509d70225$var$savedUserSelect = '';\nlet $14c0b72509d70225$var$modifiedElementMap = new WeakMap();\nfunction $14c0b72509d70225$export$16a4697467175487(target) {\n if ($bx7SL$isIOS()) {\n if ($14c0b72509d70225$var$state === 'default') {\n $14c0b72509d70225$var$savedUserSelect = document.documentElement.style.webkitUserSelect;\n document.documentElement.style.webkitUserSelect = 'none';\n }\n $14c0b72509d70225$var$state = 'disabled';\n } else if (target) {\n // If not iOS, store the target's original user-select and change to user-select: none\n // Ignore state since it doesn't apply for non iOS\n $14c0b72509d70225$var$modifiedElementMap.set(target, target.style.userSelect);\n target.style.userSelect = 'none';\n }\n}\nfunction $14c0b72509d70225$export$b0d6fa1ab32e3295(target) {\n if ($bx7SL$isIOS()) {\n // If the state is already default, there's nothing to do.\n // If it is restoring, then there's no need to queue a second restore.\n if ($14c0b72509d70225$var$state !== 'disabled') return;\n $14c0b72509d70225$var$state = 'restoring';\n // There appears to be a delay on iOS where selection still might occur\n // after pointer up, so wait a bit before removing user-select.\n setTimeout(()=>{\n // Wait for any CSS transitions to complete so we don't recompute style\n // for the whole page in the middle of the animation and cause jank.\n $bx7SL$runAfterTransition(()=>{\n // Avoid race conditions\n if ($14c0b72509d70225$var$state === 'restoring') {\n if (document.documentElement.style.webkitUserSelect === 'none') document.documentElement.style.webkitUserSelect = $14c0b72509d70225$var$savedUserSelect || '';\n $14c0b72509d70225$var$savedUserSelect = '';\n $14c0b72509d70225$var$state = 'default';\n }\n });\n }, 300);\n } else // If not iOS, restore the target's original user-select if any\n // Ignore state since it doesn't apply for non iOS\n if (target && $14c0b72509d70225$var$modifiedElementMap.has(target)) {\n let targetOldUserSelect = $14c0b72509d70225$var$modifiedElementMap.get(target);\n if (target.style.userSelect === 'none') target.style.userSelect = targetOldUserSelect;\n if (target.getAttribute('style') === '') target.removeAttribute('style');\n $14c0b72509d70225$var$modifiedElementMap.delete(target);\n }\n}\n\n\n\n\n\n\nfunction $8a9cb279dc87e130$export$60278871457622de(event) {\n // JAWS/NVDA with Firefox.\n if (event.mozInputSource === 0 && event.isTrusted) return true;\n return event.detail === 0 && !event.pointerType;\n}\nclass $8a9cb279dc87e130$export$905e7fc544a71f36 {\n isDefaultPrevented() {\n return this.nativeEvent.defaultPrevented;\n }\n preventDefault() {\n this.defaultPrevented = true;\n this.nativeEvent.preventDefault();\n }\n stopPropagation() {\n this.nativeEvent.stopPropagation();\n this.isPropagationStopped = ()=>true\n ;\n }\n isPropagationStopped() {\n return false;\n }\n persist() {\n }\n constructor(type, nativeEvent){\n this.nativeEvent = nativeEvent;\n this.target = nativeEvent.target;\n this.currentTarget = nativeEvent.currentTarget;\n this.relatedTarget = nativeEvent.relatedTarget;\n this.bubbles = nativeEvent.bubbles;\n this.cancelable = nativeEvent.cancelable;\n this.defaultPrevented = nativeEvent.defaultPrevented;\n this.eventPhase = nativeEvent.eventPhase;\n this.isTrusted = nativeEvent.isTrusted;\n this.timeStamp = nativeEvent.timeStamp;\n this.type = type;\n }\n}\nfunction $8a9cb279dc87e130$export$715c682d09d639cc(onBlur) {\n let stateRef = $bx7SL$useRef({\n isFocused: false,\n onBlur: onBlur,\n observer: null\n });\n stateRef.current.onBlur = onBlur;\n // Clean up MutationObserver on unmount. See below.\n // eslint-disable-next-line arrow-body-style\n $bx7SL$useLayoutEffect(()=>{\n const state = stateRef.current;\n return ()=>{\n if (state.observer) {\n state.observer.disconnect();\n state.observer = null;\n }\n };\n }, []);\n // This function is called during a React onFocus event.\n return $bx7SL$useCallback((e1)=>{\n // React does not fire onBlur when an element is disabled. https://github.com/facebook/react/issues/9142\n // Most browsers fire a native focusout event in this case, except for Firefox. In that case, we use a\n // MutationObserver to watch for the disabled attribute, and dispatch these events ourselves.\n // For browsers that do, focusout fires before the MutationObserver, so onBlur should not fire twice.\n if (e1.target instanceof HTMLButtonElement || e1.target instanceof HTMLInputElement || e1.target instanceof HTMLTextAreaElement || e1.target instanceof HTMLSelectElement) {\n stateRef.current.isFocused = true;\n let target = e1.target;\n let onBlurHandler = (e)=>{\n var // For backward compatibility, dispatch a (fake) React synthetic event.\n _current, ref;\n stateRef.current.isFocused = false;\n if (target.disabled) (ref = (_current = stateRef.current).onBlur) === null || ref === void 0 ? void 0 : ref.call(_current, new $8a9cb279dc87e130$export$905e7fc544a71f36('blur', e));\n // We no longer need the MutationObserver once the target is blurred.\n if (stateRef.current.observer) {\n stateRef.current.observer.disconnect();\n stateRef.current.observer = null;\n }\n };\n target.addEventListener('focusout', onBlurHandler, {\n once: true\n });\n stateRef.current.observer = new MutationObserver(()=>{\n if (stateRef.current.isFocused && target.disabled) {\n stateRef.current.observer.disconnect();\n target.dispatchEvent(new FocusEvent('blur'));\n target.dispatchEvent(new FocusEvent('focusout', {\n bubbles: true\n }));\n }\n });\n stateRef.current.observer.observe(target, {\n attributes: true,\n attributeFilter: [\n 'disabled'\n ]\n });\n }\n }, []);\n}\n\n\n\nconst $ae1eeba8b9eafd08$export$5165eccb35aaadb5 = $bx7SL$react.createContext(null);\n$ae1eeba8b9eafd08$export$5165eccb35aaadb5.displayName = 'PressResponderContext';\n\n\nfunction $f6c31cce2adf654f$var$usePressResponderContext(props) {\n // Consume context from and merge with props.\n let context = $bx7SL$useContext($ae1eeba8b9eafd08$export$5165eccb35aaadb5);\n if (context) {\n let { register: register , ...contextProps } = context;\n props = $bx7SL$mergeProps(contextProps, props);\n register();\n }\n $bx7SL$useSyncRef(context, props.ref);\n return props;\n}\nfunction $f6c31cce2adf654f$export$45712eceda6fad21(props) {\n let { onPress: onPress1 , onPressChange: onPressChange1 , onPressStart: onPressStart1 , onPressEnd: onPressEnd1 , onPressUp: onPressUp1 , isDisabled: isDisabled1 , isPressed: isPressedProp , preventFocusOnPress: preventFocusOnPress , shouldCancelOnPointerExit: shouldCancelOnPointerExit , allowTextSelectionOnPress: allowTextSelectionOnPress , // eslint-disable-next-line @typescript-eslint/no-unused-vars\n ref: _ , ...domProps } = $f6c31cce2adf654f$var$usePressResponderContext(props);\n let propsRef = $bx7SL$useRef(null);\n propsRef.current = {\n onPress: onPress1,\n onPressChange: onPressChange1,\n onPressStart: onPressStart1,\n onPressEnd: onPressEnd1,\n onPressUp: onPressUp1,\n isDisabled: isDisabled1,\n shouldCancelOnPointerExit: shouldCancelOnPointerExit\n };\n let [isPressed, setPressed] = $bx7SL$useState(false);\n let ref = $bx7SL$useRef({\n isPressed: false,\n ignoreEmulatedMouseEvents: false,\n ignoreClickAfterPress: false,\n didFirePressStart: false,\n activePointerId: null,\n target: null,\n isOverTarget: false,\n pointerType: null\n });\n let { addGlobalListener: addGlobalListener , removeAllGlobalListeners: removeAllGlobalListeners } = $bx7SL$useGlobalListeners();\n let pressProps1 = $bx7SL$useMemo(()=>{\n let state = ref.current;\n let triggerPressStart = (originalEvent, pointerType)=>{\n let { onPressStart: onPressStart , onPressChange: onPressChange , isDisabled: isDisabled } = propsRef.current;\n if (isDisabled || state.didFirePressStart) return;\n if (onPressStart) onPressStart({\n type: 'pressstart',\n pointerType: pointerType,\n target: originalEvent.currentTarget,\n shiftKey: originalEvent.shiftKey,\n metaKey: originalEvent.metaKey,\n ctrlKey: originalEvent.ctrlKey,\n altKey: originalEvent.altKey\n });\n if (onPressChange) onPressChange(true);\n state.didFirePressStart = true;\n setPressed(true);\n };\n let triggerPressEnd = (originalEvent, pointerType, wasPressed = true)=>{\n let { onPressEnd: onPressEnd , onPressChange: onPressChange , onPress: onPress , isDisabled: isDisabled } = propsRef.current;\n if (!state.didFirePressStart) return;\n state.ignoreClickAfterPress = true;\n state.didFirePressStart = false;\n if (onPressEnd) onPressEnd({\n type: 'pressend',\n pointerType: pointerType,\n target: originalEvent.currentTarget,\n shiftKey: originalEvent.shiftKey,\n metaKey: originalEvent.metaKey,\n ctrlKey: originalEvent.ctrlKey,\n altKey: originalEvent.altKey\n });\n if (onPressChange) onPressChange(false);\n setPressed(false);\n if (onPress && wasPressed && !isDisabled) onPress({\n type: 'press',\n pointerType: pointerType,\n target: originalEvent.currentTarget,\n shiftKey: originalEvent.shiftKey,\n metaKey: originalEvent.metaKey,\n ctrlKey: originalEvent.ctrlKey,\n altKey: originalEvent.altKey\n });\n };\n let triggerPressUp = (originalEvent, pointerType)=>{\n let { onPressUp: onPressUp , isDisabled: isDisabled } = propsRef.current;\n if (isDisabled) return;\n if (onPressUp) onPressUp({\n type: 'pressup',\n pointerType: pointerType,\n target: originalEvent.currentTarget,\n shiftKey: originalEvent.shiftKey,\n metaKey: originalEvent.metaKey,\n ctrlKey: originalEvent.ctrlKey,\n altKey: originalEvent.altKey\n });\n };\n let cancel = (e)=>{\n if (state.isPressed) {\n if (state.isOverTarget) triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);\n state.isPressed = false;\n state.isOverTarget = false;\n state.activePointerId = null;\n state.pointerType = null;\n removeAllGlobalListeners();\n if (!allowTextSelectionOnPress) $14c0b72509d70225$export$b0d6fa1ab32e3295(state.target);\n }\n };\n let pressProps = {\n onKeyDown (e) {\n if ($f6c31cce2adf654f$var$isValidKeyboardEvent(e.nativeEvent) && e.currentTarget.contains(e.target)) {\n if ($f6c31cce2adf654f$var$shouldPreventDefaultKeyboard(e.target)) e.preventDefault();\n e.stopPropagation();\n // If the event is repeating, it may have started on a different element\n // after which focus moved to the current element. Ignore these events and\n // only handle the first key down event.\n if (!state.isPressed && !e.repeat) {\n state.target = e.currentTarget;\n state.isPressed = true;\n triggerPressStart(e, 'keyboard');\n // Focus may move before the key up event, so register the event on the document\n // instead of the same element where the key down event occurred.\n addGlobalListener(document, 'keyup', onKeyUp, false);\n }\n }\n },\n onKeyUp (e) {\n if ($f6c31cce2adf654f$var$isValidKeyboardEvent(e.nativeEvent) && !e.repeat && e.currentTarget.contains(e.target)) triggerPressUp($f6c31cce2adf654f$var$createEvent(state.target, e), 'keyboard');\n },\n onClick (e) {\n if (e && !e.currentTarget.contains(e.target)) return;\n if (e && e.button === 0) {\n e.stopPropagation();\n if (isDisabled1) e.preventDefault();\n // If triggered from a screen reader or by using element.click(),\n // trigger as if it were a keyboard click.\n if (!state.ignoreClickAfterPress && !state.ignoreEmulatedMouseEvents && (state.pointerType === 'virtual' || $8a9cb279dc87e130$export$60278871457622de(e.nativeEvent))) {\n // Ensure the element receives focus (VoiceOver on iOS does not do this)\n if (!isDisabled1 && !preventFocusOnPress) $bx7SL$focusWithoutScrolling(e.currentTarget);\n triggerPressStart(e, 'virtual');\n triggerPressUp(e, 'virtual');\n triggerPressEnd(e, 'virtual');\n }\n state.ignoreEmulatedMouseEvents = false;\n state.ignoreClickAfterPress = false;\n }\n }\n };\n let onKeyUp = (e)=>{\n if (state.isPressed && $f6c31cce2adf654f$var$isValidKeyboardEvent(e)) {\n if ($f6c31cce2adf654f$var$shouldPreventDefaultKeyboard(e.target)) e.preventDefault();\n e.stopPropagation();\n state.isPressed = false;\n let target = e.target;\n triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), 'keyboard', state.target.contains(target));\n removeAllGlobalListeners();\n // If the target is a link, trigger the click method to open the URL,\n // but defer triggering pressEnd until onClick event handler.\n if (state.target.contains(target) && $f6c31cce2adf654f$var$isHTMLAnchorLink(state.target) || state.target.getAttribute('role') === 'link') state.target.click();\n }\n };\n if (typeof PointerEvent !== 'undefined') {\n pressProps.onPointerDown = (e)=>{\n // Only handle left clicks, and ignore events that bubbled through portals.\n if (e.button !== 0 || !e.currentTarget.contains(e.target)) return;\n // iOS safari fires pointer events from VoiceOver with incorrect coordinates/target.\n // Ignore and let the onClick handler take care of it instead.\n // https://bugs.webkit.org/show_bug.cgi?id=222627\n // https://bugs.webkit.org/show_bug.cgi?id=223202\n if ($f6c31cce2adf654f$var$isVirtualPointerEvent(e.nativeEvent)) {\n state.pointerType = 'virtual';\n return;\n }\n // Due to browser inconsistencies, especially on mobile browsers, we prevent\n // default on pointer down and handle focusing the pressable element ourselves.\n if ($f6c31cce2adf654f$var$shouldPreventDefault(e.currentTarget)) e.preventDefault();\n state.pointerType = e.pointerType;\n e.stopPropagation();\n if (!state.isPressed) {\n state.isPressed = true;\n state.isOverTarget = true;\n state.activePointerId = e.pointerId;\n state.target = e.currentTarget;\n if (!isDisabled1 && !preventFocusOnPress) $bx7SL$focusWithoutScrolling(e.currentTarget);\n if (!allowTextSelectionOnPress) $14c0b72509d70225$export$16a4697467175487(state.target);\n triggerPressStart(e, state.pointerType);\n addGlobalListener(document, 'pointermove', onPointerMove, false);\n addGlobalListener(document, 'pointerup', onPointerUp, false);\n addGlobalListener(document, 'pointercancel', onPointerCancel, false);\n }\n };\n pressProps.onMouseDown = (e)=>{\n if (!e.currentTarget.contains(e.target)) return;\n if (e.button === 0) {\n // Chrome and Firefox on touch Windows devices require mouse down events\n // to be canceled in addition to pointer events, or an extra asynchronous\n // focus event will be fired.\n if ($f6c31cce2adf654f$var$shouldPreventDefault(e.currentTarget)) e.preventDefault();\n e.stopPropagation();\n }\n };\n pressProps.onPointerUp = (e)=>{\n // iOS fires pointerup with zero width and height, so check the pointerType recorded during pointerdown.\n if (!e.currentTarget.contains(e.target) || state.pointerType === 'virtual') return;\n // Only handle left clicks\n // Safari on iOS sometimes fires pointerup events, even\n // when the touch isn't over the target, so double check.\n if (e.button === 0 && $f6c31cce2adf654f$var$isOverTarget(e, e.currentTarget)) triggerPressUp(e, state.pointerType || e.pointerType);\n };\n // Safari on iOS < 13.2 does not implement pointerenter/pointerleave events correctly.\n // Use pointer move events instead to implement our own hit testing.\n // See https://bugs.webkit.org/show_bug.cgi?id=199803\n let onPointerMove = (e)=>{\n if (e.pointerId !== state.activePointerId) return;\n if ($f6c31cce2adf654f$var$isOverTarget(e, state.target)) {\n if (!state.isOverTarget) {\n state.isOverTarget = true;\n triggerPressStart($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType);\n }\n } else if (state.isOverTarget) {\n state.isOverTarget = false;\n triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);\n if (propsRef.current.shouldCancelOnPointerExit) cancel(e);\n }\n };\n let onPointerUp = (e)=>{\n if (e.pointerId === state.activePointerId && state.isPressed && e.button === 0) {\n if ($f6c31cce2adf654f$var$isOverTarget(e, state.target)) triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType);\n else if (state.isOverTarget) triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);\n state.isPressed = false;\n state.isOverTarget = false;\n state.activePointerId = null;\n state.pointerType = null;\n removeAllGlobalListeners();\n if (!allowTextSelectionOnPress) $14c0b72509d70225$export$b0d6fa1ab32e3295(state.target);\n }\n };\n let onPointerCancel = (e)=>{\n cancel(e);\n };\n pressProps.onDragStart = (e)=>{\n if (!e.currentTarget.contains(e.target)) return;\n // Safari does not call onPointerCancel when a drag starts, whereas Chrome and Firefox do.\n cancel(e);\n };\n } else {\n pressProps.onMouseDown = (e)=>{\n // Only handle left clicks\n if (e.button !== 0 || !e.currentTarget.contains(e.target)) return;\n // Due to browser inconsistencies, especially on mobile browsers, we prevent\n // default on mouse down and handle focusing the pressable element ourselves.\n if ($f6c31cce2adf654f$var$shouldPreventDefault(e.currentTarget)) e.preventDefault();\n e.stopPropagation();\n if (state.ignoreEmulatedMouseEvents) return;\n state.isPressed = true;\n state.isOverTarget = true;\n state.target = e.currentTarget;\n state.pointerType = $8a9cb279dc87e130$export$60278871457622de(e.nativeEvent) ? 'virtual' : 'mouse';\n if (!isDisabled1 && !preventFocusOnPress) $bx7SL$focusWithoutScrolling(e.currentTarget);\n triggerPressStart(e, state.pointerType);\n addGlobalListener(document, 'mouseup', onMouseUp, false);\n };\n pressProps.onMouseEnter = (e)=>{\n if (!e.currentTarget.contains(e.target)) return;\n e.stopPropagation();\n if (state.isPressed && !state.ignoreEmulatedMouseEvents) {\n state.isOverTarget = true;\n triggerPressStart(e, state.pointerType);\n }\n };\n pressProps.onMouseLeave = (e)=>{\n if (!e.currentTarget.contains(e.target)) return;\n e.stopPropagation();\n if (state.isPressed && !state.ignoreEmulatedMouseEvents) {\n state.isOverTarget = false;\n triggerPressEnd(e, state.pointerType, false);\n if (propsRef.current.shouldCancelOnPointerExit) cancel(e);\n }\n };\n pressProps.onMouseUp = (e)=>{\n if (!e.currentTarget.contains(e.target)) return;\n if (!state.ignoreEmulatedMouseEvents && e.button === 0) triggerPressUp(e, state.pointerType);\n };\n let onMouseUp = (e)=>{\n // Only handle left clicks\n if (e.button !== 0) return;\n state.isPressed = false;\n removeAllGlobalListeners();\n if (state.ignoreEmulatedMouseEvents) {\n state.ignoreEmulatedMouseEvents = false;\n return;\n }\n if ($f6c31cce2adf654f$var$isOverTarget(e, state.target)) triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType);\n else if (state.isOverTarget) triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);\n state.isOverTarget = false;\n };\n pressProps.onTouchStart = (e)=>{\n if (!e.currentTarget.contains(e.target)) return;\n e.stopPropagation();\n let touch = $f6c31cce2adf654f$var$getTouchFromEvent(e.nativeEvent);\n if (!touch) return;\n state.activePointerId = touch.identifier;\n state.ignoreEmulatedMouseEvents = true;\n state.isOverTarget = true;\n state.isPressed = true;\n state.target = e.currentTarget;\n state.pointerType = 'touch';\n // Due to browser inconsistencies, especially on mobile browsers, we prevent default\n // on the emulated mouse event and handle focusing the pressable element ourselves.\n if (!isDisabled1 && !preventFocusOnPress) $bx7SL$focusWithoutScrolling(e.currentTarget);\n if (!allowTextSelectionOnPress) $14c0b72509d70225$export$16a4697467175487(state.target);\n triggerPressStart(e, state.pointerType);\n addGlobalListener(window, 'scroll', onScroll, true);\n };\n pressProps.onTouchMove = (e)=>{\n if (!e.currentTarget.contains(e.target)) return;\n e.stopPropagation();\n if (!state.isPressed) return;\n let touch = $f6c31cce2adf654f$var$getTouchById(e.nativeEvent, state.activePointerId);\n if (touch && $f6c31cce2adf654f$var$isOverTarget(touch, e.currentTarget)) {\n if (!state.isOverTarget) {\n state.isOverTarget = true;\n triggerPressStart(e, state.pointerType);\n }\n } else if (state.isOverTarget) {\n state.isOverTarget = false;\n triggerPressEnd(e, state.pointerType, false);\n if (propsRef.current.shouldCancelOnPointerExit) cancel(e);\n }\n };\n pressProps.onTouchEnd = (e)=>{\n if (!e.currentTarget.contains(e.target)) return;\n e.stopPropagation();\n if (!state.isPressed) return;\n let touch = $f6c31cce2adf654f$var$getTouchById(e.nativeEvent, state.activePointerId);\n if (touch && $f6c31cce2adf654f$var$isOverTarget(touch, e.currentTarget)) {\n triggerPressUp(e, state.pointerType);\n triggerPressEnd(e, state.pointerType);\n } else if (state.isOverTarget) triggerPressEnd(e, state.pointerType, false);\n state.isPressed = false;\n state.activePointerId = null;\n state.isOverTarget = false;\n state.ignoreEmulatedMouseEvents = true;\n if (!allowTextSelectionOnPress) $14c0b72509d70225$export$b0d6fa1ab32e3295(state.target);\n removeAllGlobalListeners();\n };\n pressProps.onTouchCancel = (e)=>{\n if (!e.currentTarget.contains(e.target)) return;\n e.stopPropagation();\n if (state.isPressed) cancel(e);\n };\n let onScroll = (e)=>{\n if (state.isPressed && e.target.contains(state.target)) cancel({\n currentTarget: state.target,\n shiftKey: false,\n ctrlKey: false,\n metaKey: false,\n altKey: false\n });\n };\n pressProps.onDragStart = (e)=>{\n if (!e.currentTarget.contains(e.target)) return;\n cancel(e);\n };\n }\n return pressProps;\n }, [\n addGlobalListener,\n isDisabled1,\n preventFocusOnPress,\n removeAllGlobalListeners,\n allowTextSelectionOnPress\n ]);\n // Remove user-select: none in case component unmounts immediately after pressStart\n // eslint-disable-next-line arrow-body-style\n $bx7SL$useEffect(()=>{\n return ()=>{\n if (!allowTextSelectionOnPress) $14c0b72509d70225$export$b0d6fa1ab32e3295(ref.current.target);\n };\n }, [\n allowTextSelectionOnPress\n ]);\n return {\n isPressed: isPressedProp || isPressed,\n pressProps: $bx7SL$mergeProps(domProps, pressProps1)\n };\n}\nfunction $f6c31cce2adf654f$var$isHTMLAnchorLink(target) {\n return target.tagName === 'A' && target.hasAttribute('href');\n}\nfunction $f6c31cce2adf654f$var$isValidKeyboardEvent(event) {\n const { key: key , code: code , target: target } = event;\n const element = target;\n const { tagName: tagName , isContentEditable: isContentEditable } = element;\n const role = element.getAttribute('role');\n // Accessibility for keyboards. Space and Enter only.\n // \"Spacebar\" is for IE 11\n return (key === 'Enter' || key === ' ' || key === 'Spacebar' || code === 'Space') && tagName !== 'INPUT' && tagName !== 'TEXTAREA' && isContentEditable !== true && (!$f6c31cce2adf654f$var$isHTMLAnchorLink(element) || role === 'button' && key !== 'Enter') && // An element with role='link' should only trigger with Enter key\n !(role === 'link' && key !== 'Enter');\n}\nfunction $f6c31cce2adf654f$var$getTouchFromEvent(event) {\n const { targetTouches: targetTouches } = event;\n if (targetTouches.length > 0) return targetTouches[0];\n return null;\n}\nfunction $f6c31cce2adf654f$var$getTouchById(event, pointerId) {\n const changedTouches = event.changedTouches;\n for(let i = 0; i < changedTouches.length; i++){\n const touch = changedTouches[i];\n if (touch.identifier === pointerId) return touch;\n }\n return null;\n}\nfunction $f6c31cce2adf654f$var$createEvent(target, e) {\n return {\n currentTarget: target,\n shiftKey: e.shiftKey,\n ctrlKey: e.ctrlKey,\n metaKey: e.metaKey,\n altKey: e.altKey\n };\n}\nfunction $f6c31cce2adf654f$var$getPointClientRect(point) {\n let offsetX = point.width / 2 || point.radiusX || 0;\n let offsetY = point.height / 2 || point.radiusY || 0;\n return {\n top: point.clientY - offsetY,\n right: point.clientX + offsetX,\n bottom: point.clientY + offsetY,\n left: point.clientX - offsetX\n };\n}\nfunction $f6c31cce2adf654f$var$areRectanglesOverlapping(a, b) {\n // check if they cannot overlap on x axis\n if (a.left > b.right || b.left > a.right) return false;\n // check if they cannot overlap on y axis\n if (a.top > b.bottom || b.top > a.bottom) return false;\n return true;\n}\nfunction $f6c31cce2adf654f$var$isOverTarget(point, target) {\n let rect = target.getBoundingClientRect();\n let pointRect = $f6c31cce2adf654f$var$getPointClientRect(point);\n return $f6c31cce2adf654f$var$areRectanglesOverlapping(rect, pointRect);\n}\nfunction $f6c31cce2adf654f$var$shouldPreventDefault(target) {\n // We cannot prevent default if the target is a draggable element.\n return !target.draggable;\n}\nfunction $f6c31cce2adf654f$var$shouldPreventDefaultKeyboard(target) {\n return !((target.tagName === 'INPUT' || target.tagName === 'BUTTON') && target.type === 'submit');\n}\nfunction $f6c31cce2adf654f$var$isVirtualPointerEvent(event) {\n // If the pointer size is zero, then we assume it's from a screen reader.\n // Android TalkBack double tap will sometimes return a event with width and height of 1\n // and pointerType === 'mouse' so we need to check for a specific combination of event attributes.\n // Cannot use \"event.pressure === 0\" as the sole check due to Safari pointer events always returning pressure === 0\n // instead of .5, see https://bugs.webkit.org/show_bug.cgi?id=206216. event.pointerType === 'mouse' is to distingush\n // Talkback double tap from Windows Firefox touch screen press\n return event.width === 0 && event.height === 0 || event.width === 1 && event.height === 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === 'mouse';\n}\n\n\n\nconst $3b117e43dc0ca95d$export$27c701ed9e449e99 = /*#__PURE__*/ $bx7SL$react.forwardRef(({ children: children , ...props }, ref)=>{\n let newRef = $bx7SL$useRef();\n ref = ref !== null && ref !== void 0 ? ref : newRef;\n let { pressProps: pressProps } = $f6c31cce2adf654f$export$45712eceda6fad21({\n ...props,\n ref: ref\n });\n let child = $bx7SL$react.Children.only(children);\n return(/*#__PURE__*/ $bx7SL$react.cloneElement(child, // @ts-ignore\n {\n ref: ref,\n ...$bx7SL$mergeProps(child.props, pressProps)\n }));\n});\n\n\nvar $f1ab8c75478c6f73$exports = {};\n\n$parcel$export($f1ab8c75478c6f73$exports, \"PressResponder\", () => $f1ab8c75478c6f73$export$3351871ee4b288b8);\n\n\n\nconst $f1ab8c75478c6f73$export$3351871ee4b288b8 = /*#__PURE__*/ $bx7SL$react.forwardRef(({ children: children , ...props }, ref)=>{\n let isRegistered = $bx7SL$useRef(false);\n let prevContext = $bx7SL$useContext($ae1eeba8b9eafd08$export$5165eccb35aaadb5);\n let context = $bx7SL$mergeProps(prevContext || {\n }, {\n ...props,\n ref: ref || (prevContext === null || prevContext === void 0 ? void 0 : prevContext.ref),\n register () {\n isRegistered.current = true;\n if (prevContext) prevContext.register();\n }\n });\n $bx7SL$useSyncRef(prevContext, ref);\n $bx7SL$useEffect(()=>{\n if (!isRegistered.current) console.warn(\"A PressResponder was rendered without a pressable child. Either call the usePress hook, or wrap your DOM node with component.\");\n }, []);\n return(/*#__PURE__*/ $bx7SL$react.createElement($ae1eeba8b9eafd08$export$5165eccb35aaadb5.Provider, {\n value: context\n }, children));\n});\n\n\nvar $a1ea59d68270f0dd$exports = {};\n\n$parcel$export($a1ea59d68270f0dd$exports, \"useFocus\", () => $a1ea59d68270f0dd$export$f8168d8dd8fd66e6);\n\n\nfunction $a1ea59d68270f0dd$export$f8168d8dd8fd66e6(props) {\n let { isDisabled: isDisabled , onFocus: onFocusProp , onBlur: onBlurProp , onFocusChange: onFocusChange } = props;\n const onBlur = $bx7SL$useCallback((e)=>{\n if (e.target === e.currentTarget) {\n if (onBlurProp) onBlurProp(e);\n if (onFocusChange) onFocusChange(false);\n return true;\n }\n }, [\n onBlurProp,\n onFocusChange\n ]);\n const onSyntheticFocus = $8a9cb279dc87e130$export$715c682d09d639cc(onBlur);\n const onFocus = $bx7SL$useCallback((e)=>{\n if (e.target === e.currentTarget) {\n if (onFocusProp) onFocusProp(e);\n if (onFocusChange) onFocusChange(true);\n onSyntheticFocus(e);\n }\n }, [\n onFocusChange,\n onFocusProp,\n onSyntheticFocus\n ]);\n return {\n focusProps: {\n onFocus: !isDisabled && (onFocusProp || onFocusChange || onBlurProp) ? onFocus : undefined,\n onBlur: !isDisabled && (onBlurProp || onFocusChange) ? onBlur : null\n }\n };\n}\n\n\nvar $507fabe10e71c6fb$exports = {};\n\n$parcel$export($507fabe10e71c6fb$exports, \"isFocusVisible\", () => $507fabe10e71c6fb$export$b9b3dfddab17db27);\n$parcel$export($507fabe10e71c6fb$exports, \"getInteractionModality\", () => $507fabe10e71c6fb$export$630ff653c5ada6a9);\n$parcel$export($507fabe10e71c6fb$exports, \"setInteractionModality\", () => $507fabe10e71c6fb$export$8397ddfc504fdb9a);\n$parcel$export($507fabe10e71c6fb$exports, \"useInteractionModality\", () => $507fabe10e71c6fb$export$98e20ec92f614cfe);\n$parcel$export($507fabe10e71c6fb$exports, \"useFocusVisible\", () => $507fabe10e71c6fb$export$ffd9e5021c1fb2d6);\n$parcel$export($507fabe10e71c6fb$exports, \"useFocusVisibleListener\", () => $507fabe10e71c6fb$export$ec71b4b83ac08ec3);\n\n\n\nlet $507fabe10e71c6fb$var$currentModality = null;\nlet $507fabe10e71c6fb$var$changeHandlers = new Set();\nlet $507fabe10e71c6fb$var$hasSetupGlobalListeners = false;\nlet $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\nlet $507fabe10e71c6fb$var$hasBlurredWindowRecently = false;\n// Only Tab or Esc keys will make focus visible on text input elements\nconst $507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS = {\n Tab: true,\n Escape: true\n};\nfunction $507fabe10e71c6fb$var$triggerChangeHandlers(modality, e) {\n for (let handler of $507fabe10e71c6fb$var$changeHandlers)handler(modality, e);\n}\n/**\n * Helper function to determine if a KeyboardEvent is unmodified and could make keyboard focus styles visible.\n */ function $507fabe10e71c6fb$var$isValidKey(e) {\n // Control and Shift keys trigger when navigating back to the tab with keyboard.\n return !(e.metaKey || !$bx7SL$isMac() && e.altKey || e.ctrlKey || e.key === 'Control' || e.key === 'Shift' || e.key === 'Meta');\n}\nfunction $507fabe10e71c6fb$var$handleKeyboardEvent(e) {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n if ($507fabe10e71c6fb$var$isValidKey(e)) {\n $507fabe10e71c6fb$var$currentModality = 'keyboard';\n $507fabe10e71c6fb$var$triggerChangeHandlers('keyboard', e);\n }\n}\nfunction $507fabe10e71c6fb$var$handlePointerEvent(e) {\n $507fabe10e71c6fb$var$currentModality = 'pointer';\n if (e.type === 'mousedown' || e.type === 'pointerdown') {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n $507fabe10e71c6fb$var$triggerChangeHandlers('pointer', e);\n }\n}\nfunction $507fabe10e71c6fb$var$handleClickEvent(e) {\n if ($8a9cb279dc87e130$export$60278871457622de(e)) {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n $507fabe10e71c6fb$var$currentModality = 'virtual';\n }\n}\nfunction $507fabe10e71c6fb$var$handleFocusEvent(e) {\n // Firefox fires two extra focus events when the user first clicks into an iframe:\n // first on the window, then on the document. We ignore these events so they don't\n // cause keyboard focus rings to appear.\n if (e.target === window || e.target === document) return;\n // If a focus event occurs without a preceding keyboard or pointer event, switch to virtual modality.\n // This occurs, for example, when navigating a form with the next/previous buttons on iOS.\n if (!$507fabe10e71c6fb$var$hasEventBeforeFocus && !$507fabe10e71c6fb$var$hasBlurredWindowRecently) {\n $507fabe10e71c6fb$var$currentModality = 'virtual';\n $507fabe10e71c6fb$var$triggerChangeHandlers('virtual', e);\n }\n $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\n $507fabe10e71c6fb$var$hasBlurredWindowRecently = false;\n}\nfunction $507fabe10e71c6fb$var$handleWindowBlur() {\n // When the window is blurred, reset state. This is necessary when tabbing out of the window,\n // for example, since a subsequent focus event won't be fired.\n $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\n $507fabe10e71c6fb$var$hasBlurredWindowRecently = true;\n}\n/**\n * Setup global event listeners to control when keyboard focus style should be visible.\n */ function $507fabe10e71c6fb$var$setupGlobalFocusEvents() {\n if (typeof window === 'undefined' || $507fabe10e71c6fb$var$hasSetupGlobalListeners) return;\n // Programmatic focus() calls shouldn't affect the current input modality.\n // However, we need to detect other cases when a focus event occurs without\n // a preceding user event (e.g. screen reader focus). Overriding the focus\n // method on HTMLElement.prototype is a bit hacky, but works.\n let focus = HTMLElement.prototype.focus;\n HTMLElement.prototype.focus = function() {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n focus.apply(this, arguments);\n };\n document.addEventListener('keydown', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n document.addEventListener('keyup', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n document.addEventListener('click', $507fabe10e71c6fb$var$handleClickEvent, true);\n // Register focus events on the window so they are sure to happen\n // before React's event listeners (registered on the document).\n window.addEventListener('focus', $507fabe10e71c6fb$var$handleFocusEvent, true);\n window.addEventListener('blur', $507fabe10e71c6fb$var$handleWindowBlur, false);\n if (typeof PointerEvent !== 'undefined') {\n document.addEventListener('pointerdown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n document.addEventListener('pointermove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n document.addEventListener('pointerup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n } else {\n document.addEventListener('mousedown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n document.addEventListener('mousemove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n document.addEventListener('mouseup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n }\n $507fabe10e71c6fb$var$hasSetupGlobalListeners = true;\n}\nif (typeof document !== 'undefined') {\n if (document.readyState !== 'loading') $507fabe10e71c6fb$var$setupGlobalFocusEvents();\n else document.addEventListener('DOMContentLoaded', $507fabe10e71c6fb$var$setupGlobalFocusEvents);\n}\nfunction $507fabe10e71c6fb$export$b9b3dfddab17db27() {\n return $507fabe10e71c6fb$var$currentModality !== 'pointer';\n}\nfunction $507fabe10e71c6fb$export$630ff653c5ada6a9() {\n return $507fabe10e71c6fb$var$currentModality;\n}\nfunction $507fabe10e71c6fb$export$8397ddfc504fdb9a(modality) {\n $507fabe10e71c6fb$var$currentModality = modality;\n $507fabe10e71c6fb$var$triggerChangeHandlers(modality, null);\n}\nfunction $507fabe10e71c6fb$export$98e20ec92f614cfe() {\n $507fabe10e71c6fb$var$setupGlobalFocusEvents();\n let [modality, setModality] = $bx7SL$useState($507fabe10e71c6fb$var$currentModality);\n $bx7SL$useEffect(()=>{\n let handler = ()=>{\n setModality($507fabe10e71c6fb$var$currentModality);\n };\n $507fabe10e71c6fb$var$changeHandlers.add(handler);\n return ()=>{\n $507fabe10e71c6fb$var$changeHandlers.delete(handler);\n };\n }, []);\n return modality;\n}\n/**\n * If this is attached to text input component, return if the event is a focus event (Tab/Escape keys pressed) so that\n * focus visible style can be properly set.\n */ function $507fabe10e71c6fb$var$isKeyboardFocusEvent(isTextInput, modality, e) {\n return !(isTextInput && modality === 'keyboard' && e instanceof KeyboardEvent && !$507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS[e.key]);\n}\nfunction $507fabe10e71c6fb$export$ffd9e5021c1fb2d6(props = {\n}) {\n let { isTextInput: isTextInput , autoFocus: autoFocus } = props;\n let [isFocusVisibleState, setFocusVisible] = $bx7SL$useState(autoFocus || $507fabe10e71c6fb$export$b9b3dfddab17db27());\n $507fabe10e71c6fb$export$ec71b4b83ac08ec3(($507fabe10e71c6fb$export$b9b3dfddab17db27)=>{\n setFocusVisible($507fabe10e71c6fb$export$b9b3dfddab17db27);\n }, [\n isTextInput\n ], {\n isTextInput: isTextInput\n });\n return {\n isFocusVisible: isFocusVisibleState\n };\n}\nfunction $507fabe10e71c6fb$export$ec71b4b83ac08ec3(fn, deps, opts) {\n $507fabe10e71c6fb$var$setupGlobalFocusEvents();\n $bx7SL$useEffect(()=>{\n let handler = (modality, e)=>{\n if (!$507fabe10e71c6fb$var$isKeyboardFocusEvent(opts === null || opts === void 0 ? void 0 : opts.isTextInput, modality, e)) return;\n fn($507fabe10e71c6fb$export$b9b3dfddab17db27());\n };\n $507fabe10e71c6fb$var$changeHandlers.add(handler);\n return ()=>{\n $507fabe10e71c6fb$var$changeHandlers.delete(handler);\n };\n }, deps);\n}\n\n\nvar $9ab94262bd0047c7$exports = {};\n\n$parcel$export($9ab94262bd0047c7$exports, \"useFocusWithin\", () => $9ab94262bd0047c7$export$420e68273165f4ec);\n\n\nfunction $9ab94262bd0047c7$export$420e68273165f4ec(props) {\n let { isDisabled: isDisabled , onBlurWithin: onBlurWithin , onFocusWithin: onFocusWithin , onFocusWithinChange: onFocusWithinChange } = props;\n let state = $bx7SL$useRef({\n isFocusWithin: false\n });\n let onBlur = $bx7SL$useCallback((e)=>{\n // We don't want to trigger onBlurWithin and then immediately onFocusWithin again\n // when moving focus inside the element. Only trigger if the currentTarget doesn't\n // include the relatedTarget (where focus is moving).\n if (state.current.isFocusWithin && !e.currentTarget.contains(e.relatedTarget)) {\n state.current.isFocusWithin = false;\n if (onBlurWithin) onBlurWithin(e);\n if (onFocusWithinChange) onFocusWithinChange(false);\n }\n }, [\n onBlurWithin,\n onFocusWithinChange,\n state\n ]);\n let onSyntheticFocus = $8a9cb279dc87e130$export$715c682d09d639cc(onBlur);\n let onFocus = $bx7SL$useCallback((e)=>{\n if (!state.current.isFocusWithin) {\n if (onFocusWithin) onFocusWithin(e);\n if (onFocusWithinChange) onFocusWithinChange(true);\n state.current.isFocusWithin = true;\n onSyntheticFocus(e);\n }\n }, [\n onFocusWithin,\n onFocusWithinChange,\n onSyntheticFocus\n ]);\n if (isDisabled) return {\n focusWithinProps: {\n onFocus: null,\n onBlur: null\n }\n };\n return {\n focusWithinProps: {\n onFocus: onFocus,\n onBlur: onBlur\n }\n };\n}\n\n\nvar $6179b936705e76d3$exports = {};\n\n$parcel$export($6179b936705e76d3$exports, \"useHover\", () => $6179b936705e76d3$export$ae780daf29e6d456);\n\n// iOS fires onPointerEnter twice: once with pointerType=\"touch\" and again with pointerType=\"mouse\".\n// We want to ignore these emulated events so they do not trigger hover behavior.\n// See https://bugs.webkit.org/show_bug.cgi?id=214609.\nlet $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false;\nlet $6179b936705e76d3$var$hoverCount = 0;\nfunction $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents() {\n $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = true;\n // Clear globalIgnoreEmulatedMouseEvents after a short timeout. iOS fires onPointerEnter\n // with pointerType=\"mouse\" immediately after onPointerUp and before onFocus. On other\n // devices that don't have this quirk, we don't want to ignore a mouse hover sometime in\n // the distant future because a user previously touched the element.\n setTimeout(()=>{\n $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false;\n }, 50);\n}\nfunction $6179b936705e76d3$var$handleGlobalPointerEvent(e) {\n if (e.pointerType === 'touch') $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents();\n}\nfunction $6179b936705e76d3$var$setupGlobalTouchEvents() {\n if (typeof document === 'undefined') return;\n if (typeof PointerEvent !== 'undefined') document.addEventListener('pointerup', $6179b936705e76d3$var$handleGlobalPointerEvent);\n else document.addEventListener('touchend', $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents);\n $6179b936705e76d3$var$hoverCount++;\n return ()=>{\n $6179b936705e76d3$var$hoverCount--;\n if ($6179b936705e76d3$var$hoverCount > 0) return;\n if (typeof PointerEvent !== 'undefined') document.removeEventListener('pointerup', $6179b936705e76d3$var$handleGlobalPointerEvent);\n else document.removeEventListener('touchend', $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents);\n };\n}\nfunction $6179b936705e76d3$export$ae780daf29e6d456(props) {\n let { onHoverStart: onHoverStart , onHoverChange: onHoverChange , onHoverEnd: onHoverEnd , isDisabled: isDisabled } = props;\n let [isHovered, setHovered] = $bx7SL$useState(false);\n let state = $bx7SL$useRef({\n isHovered: false,\n ignoreEmulatedMouseEvents: false,\n pointerType: '',\n target: null\n }).current;\n $bx7SL$useEffect($6179b936705e76d3$var$setupGlobalTouchEvents, []);\n let { hoverProps: hoverProps1 , triggerHoverEnd: triggerHoverEnd1 } = $bx7SL$useMemo(()=>{\n let triggerHoverStart = (event, pointerType)=>{\n state.pointerType = pointerType;\n if (isDisabled || pointerType === 'touch' || state.isHovered || !event.currentTarget.contains(event.target)) return;\n state.isHovered = true;\n let target = event.currentTarget;\n state.target = target;\n if (onHoverStart) onHoverStart({\n type: 'hoverstart',\n target: target,\n pointerType: pointerType\n });\n if (onHoverChange) onHoverChange(true);\n setHovered(true);\n };\n let triggerHoverEnd = (event, pointerType)=>{\n state.pointerType = '';\n state.target = null;\n if (pointerType === 'touch' || !state.isHovered) return;\n state.isHovered = false;\n let target = event.currentTarget;\n if (onHoverEnd) onHoverEnd({\n type: 'hoverend',\n target: target,\n pointerType: pointerType\n });\n if (onHoverChange) onHoverChange(false);\n setHovered(false);\n };\n let hoverProps = {\n };\n if (typeof PointerEvent !== 'undefined') {\n hoverProps.onPointerEnter = (e)=>{\n if ($6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents && e.pointerType === 'mouse') return;\n triggerHoverStart(e, e.pointerType);\n };\n hoverProps.onPointerLeave = (e)=>{\n if (!isDisabled && e.currentTarget.contains(e.target)) triggerHoverEnd(e, e.pointerType);\n };\n } else {\n hoverProps.onTouchStart = ()=>{\n state.ignoreEmulatedMouseEvents = true;\n };\n hoverProps.onMouseEnter = (e)=>{\n if (!state.ignoreEmulatedMouseEvents && !$6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents) triggerHoverStart(e, 'mouse');\n state.ignoreEmulatedMouseEvents = false;\n };\n hoverProps.onMouseLeave = (e)=>{\n if (!isDisabled && e.currentTarget.contains(e.target)) triggerHoverEnd(e, 'mouse');\n };\n }\n return {\n hoverProps: hoverProps,\n triggerHoverEnd: triggerHoverEnd\n };\n }, [\n onHoverStart,\n onHoverChange,\n onHoverEnd,\n isDisabled,\n state\n ]);\n $bx7SL$useEffect(()=>{\n // Call the triggerHoverEnd as soon as isDisabled changes to true\n // Safe to call triggerHoverEnd, it will early return if we aren't currently hovering\n if (isDisabled) triggerHoverEnd1({\n currentTarget: state.target\n }, state.pointerType);\n }, [\n isDisabled\n ]);\n return {\n hoverProps: hoverProps1,\n isHovered: isHovered\n };\n}\n\n\nvar $e0b6e0b68ec7f50f$exports = {};\n\n$parcel$export($e0b6e0b68ec7f50f$exports, \"useInteractOutside\", () => $e0b6e0b68ec7f50f$export$872b660ac5a1ff98);\n\nfunction $e0b6e0b68ec7f50f$export$872b660ac5a1ff98(props) {\n let { ref: ref , onInteractOutside: onInteractOutside , isDisabled: isDisabled , onInteractOutsideStart: onInteractOutsideStart } = props;\n let stateRef = $bx7SL$useRef({\n isPointerDown: false,\n ignoreEmulatedMouseEvents: false,\n onInteractOutside: onInteractOutside,\n onInteractOutsideStart: onInteractOutsideStart\n });\n let state = stateRef.current;\n state.onInteractOutside = onInteractOutside;\n state.onInteractOutsideStart = onInteractOutsideStart;\n $bx7SL$useEffect(()=>{\n if (isDisabled) return;\n let onPointerDown = (e)=>{\n if ($e0b6e0b68ec7f50f$var$isValidEvent(e, ref) && state.onInteractOutside) {\n if (state.onInteractOutsideStart) state.onInteractOutsideStart(e);\n state.isPointerDown = true;\n }\n };\n // Use pointer events if available. Otherwise, fall back to mouse and touch events.\n if (typeof PointerEvent !== 'undefined') {\n let onPointerUp = (e)=>{\n if (state.isPointerDown && state.onInteractOutside && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref)) {\n state.isPointerDown = false;\n state.onInteractOutside(e);\n }\n };\n // changing these to capture phase fixed combobox\n document.addEventListener('pointerdown', onPointerDown, true);\n document.addEventListener('pointerup', onPointerUp, true);\n return ()=>{\n document.removeEventListener('pointerdown', onPointerDown, true);\n document.removeEventListener('pointerup', onPointerUp, true);\n };\n } else {\n let onMouseUp = (e)=>{\n if (state.ignoreEmulatedMouseEvents) state.ignoreEmulatedMouseEvents = false;\n else if (state.isPointerDown && state.onInteractOutside && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref)) {\n state.isPointerDown = false;\n state.onInteractOutside(e);\n }\n };\n let onTouchEnd = (e)=>{\n state.ignoreEmulatedMouseEvents = true;\n if (state.onInteractOutside && state.isPointerDown && $e0b6e0b68ec7f50f$var$isValidEvent(e, ref)) {\n state.isPointerDown = false;\n state.onInteractOutside(e);\n }\n };\n document.addEventListener('mousedown', onPointerDown, true);\n document.addEventListener('mouseup', onMouseUp, true);\n document.addEventListener('touchstart', onPointerDown, true);\n document.addEventListener('touchend', onTouchEnd, true);\n return ()=>{\n document.removeEventListener('mousedown', onPointerDown, true);\n document.removeEventListener('mouseup', onMouseUp, true);\n document.removeEventListener('touchstart', onPointerDown, true);\n document.removeEventListener('touchend', onTouchEnd, true);\n };\n }\n }, [\n ref,\n state,\n isDisabled\n ]);\n}\nfunction $e0b6e0b68ec7f50f$var$isValidEvent(event, ref) {\n if (event.button > 0) return false;\n // if the event target is no longer in the document\n if (event.target) {\n const ownerDocument = event.target.ownerDocument;\n if (!ownerDocument || !ownerDocument.documentElement.contains(event.target)) return false;\n }\n return ref.current && !ref.current.contains(event.target);\n}\n\n\nvar $46d819fcbaf35654$exports = {};\n\n$parcel$export($46d819fcbaf35654$exports, \"useKeyboard\", () => $46d819fcbaf35654$export$8f71654801c2f7cd);\nfunction $93925083ecbb358c$export$48d1ea6320830260(handler) {\n if (!handler) return;\n let shouldStopPropagation = true;\n return (e)=>{\n let event = {\n ...e,\n preventDefault () {\n e.preventDefault();\n },\n isDefaultPrevented () {\n return e.isDefaultPrevented();\n },\n stopPropagation () {\n console.error('stopPropagation is now the default behavior for events in React Spectrum. You can use continuePropagation() to revert this behavior.');\n },\n continuePropagation () {\n shouldStopPropagation = false;\n }\n };\n handler(event);\n if (shouldStopPropagation) e.stopPropagation();\n };\n}\n\n\nfunction $46d819fcbaf35654$export$8f71654801c2f7cd(props) {\n return {\n keyboardProps: props.isDisabled ? {\n } : {\n onKeyDown: $93925083ecbb358c$export$48d1ea6320830260(props.onKeyDown),\n onKeyUp: $93925083ecbb358c$export$48d1ea6320830260(props.onKeyUp)\n }\n };\n}\n\n\nvar $e8a7022cf87cba2a$exports = {};\n\n$parcel$export($e8a7022cf87cba2a$exports, \"useMove\", () => $e8a7022cf87cba2a$export$36da96379f79f245);\n\n\n\nfunction $e8a7022cf87cba2a$export$36da96379f79f245(props) {\n let { onMoveStart: onMoveStart , onMove: onMove , onMoveEnd: onMoveEnd } = props;\n let state = $bx7SL$useRef({\n didMove: false,\n lastPosition: null,\n id: null\n });\n let { addGlobalListener: addGlobalListener , removeGlobalListener: removeGlobalListener } = $bx7SL$useGlobalListeners();\n let moveProps1 = $bx7SL$useMemo(()=>{\n let moveProps = {\n };\n let start = ()=>{\n $14c0b72509d70225$export$16a4697467175487();\n state.current.didMove = false;\n };\n let move = (originalEvent, pointerType, deltaX, deltaY)=>{\n if (deltaX === 0 && deltaY === 0) return;\n if (!state.current.didMove) {\n state.current.didMove = true;\n onMoveStart === null || onMoveStart === void 0 ? void 0 : onMoveStart({\n type: 'movestart',\n pointerType: pointerType,\n shiftKey: originalEvent.shiftKey,\n metaKey: originalEvent.metaKey,\n ctrlKey: originalEvent.ctrlKey,\n altKey: originalEvent.altKey\n });\n }\n onMove({\n type: 'move',\n pointerType: pointerType,\n deltaX: deltaX,\n deltaY: deltaY,\n shiftKey: originalEvent.shiftKey,\n metaKey: originalEvent.metaKey,\n ctrlKey: originalEvent.ctrlKey,\n altKey: originalEvent.altKey\n });\n };\n let end = (originalEvent, pointerType)=>{\n $14c0b72509d70225$export$b0d6fa1ab32e3295();\n if (state.current.didMove) onMoveEnd === null || onMoveEnd === void 0 ? void 0 : onMoveEnd({\n type: 'moveend',\n pointerType: pointerType,\n shiftKey: originalEvent.shiftKey,\n metaKey: originalEvent.metaKey,\n ctrlKey: originalEvent.ctrlKey,\n altKey: originalEvent.altKey\n });\n };\n if (typeof PointerEvent === 'undefined') {\n let onMouseMove = (e)=>{\n if (e.button === 0) {\n move(e, 'mouse', e.pageX - state.current.lastPosition.pageX, e.pageY - state.current.lastPosition.pageY);\n state.current.lastPosition = {\n pageX: e.pageX,\n pageY: e.pageY\n };\n }\n };\n let onMouseUp = (e)=>{\n if (e.button === 0) {\n end(e, 'mouse');\n removeGlobalListener(window, 'mousemove', onMouseMove, false);\n removeGlobalListener(window, 'mouseup', onMouseUp, false);\n }\n };\n moveProps.onMouseDown = (e)=>{\n if (e.button === 0) {\n start();\n e.stopPropagation();\n e.preventDefault();\n state.current.lastPosition = {\n pageX: e.pageX,\n pageY: e.pageY\n };\n addGlobalListener(window, 'mousemove', onMouseMove, false);\n addGlobalListener(window, 'mouseup', onMouseUp, false);\n }\n };\n let onTouchMove = (e)=>{\n let touch = [\n ...e.changedTouches\n ].findIndex(({ identifier: identifier })=>identifier === state.current.id\n );\n if (touch >= 0) {\n let { pageX: pageX , pageY: pageY } = e.changedTouches[touch];\n move(e, 'touch', pageX - state.current.lastPosition.pageX, pageY - state.current.lastPosition.pageY);\n state.current.lastPosition = {\n pageX: pageX,\n pageY: pageY\n };\n }\n };\n let onTouchEnd = (e)=>{\n let touch = [\n ...e.changedTouches\n ].findIndex(({ identifier: identifier })=>identifier === state.current.id\n );\n if (touch >= 0) {\n end(e, 'touch');\n state.current.id = null;\n removeGlobalListener(window, 'touchmove', onTouchMove);\n removeGlobalListener(window, 'touchend', onTouchEnd);\n removeGlobalListener(window, 'touchcancel', onTouchEnd);\n }\n };\n moveProps.onTouchStart = (e)=>{\n if (e.changedTouches.length === 0 || state.current.id != null) return;\n let { pageX: pageX , pageY: pageY , identifier: identifier } = e.changedTouches[0];\n start();\n e.stopPropagation();\n e.preventDefault();\n state.current.lastPosition = {\n pageX: pageX,\n pageY: pageY\n };\n state.current.id = identifier;\n addGlobalListener(window, 'touchmove', onTouchMove, false);\n addGlobalListener(window, 'touchend', onTouchEnd, false);\n addGlobalListener(window, 'touchcancel', onTouchEnd, false);\n };\n } else {\n let onPointerMove = (e)=>{\n if (e.pointerId === state.current.id) {\n let pointerType = e.pointerType || 'mouse';\n // Problems with PointerEvent#movementX/movementY:\n // 1. it is always 0 on macOS Safari.\n // 2. On Chrome Android, it's scaled by devicePixelRatio, but not on Chrome macOS\n move(e, pointerType, e.pageX - state.current.lastPosition.pageX, e.pageY - state.current.lastPosition.pageY);\n state.current.lastPosition = {\n pageX: e.pageX,\n pageY: e.pageY\n };\n }\n };\n let onPointerUp = (e)=>{\n if (e.pointerId === state.current.id) {\n let pointerType = e.pointerType || 'mouse';\n end(e, pointerType);\n state.current.id = null;\n removeGlobalListener(window, 'pointermove', onPointerMove, false);\n removeGlobalListener(window, 'pointerup', onPointerUp, false);\n removeGlobalListener(window, 'pointercancel', onPointerUp, false);\n }\n };\n moveProps.onPointerDown = (e)=>{\n if (e.button === 0 && state.current.id == null) {\n start();\n e.stopPropagation();\n e.preventDefault();\n state.current.lastPosition = {\n pageX: e.pageX,\n pageY: e.pageY\n };\n state.current.id = e.pointerId;\n addGlobalListener(window, 'pointermove', onPointerMove, false);\n addGlobalListener(window, 'pointerup', onPointerUp, false);\n addGlobalListener(window, 'pointercancel', onPointerUp, false);\n }\n };\n }\n let triggerKeyboardMove = (e, deltaX, deltaY)=>{\n start();\n move(e, 'keyboard', deltaX, deltaY);\n end(e, 'keyboard');\n };\n moveProps.onKeyDown = (e)=>{\n switch(e.key){\n case 'Left':\n case 'ArrowLeft':\n e.preventDefault();\n e.stopPropagation();\n triggerKeyboardMove(e, -1, 0);\n break;\n case 'Right':\n case 'ArrowRight':\n e.preventDefault();\n e.stopPropagation();\n triggerKeyboardMove(e, 1, 0);\n break;\n case 'Up':\n case 'ArrowUp':\n e.preventDefault();\n e.stopPropagation();\n triggerKeyboardMove(e, 0, -1);\n break;\n case 'Down':\n case 'ArrowDown':\n e.preventDefault();\n e.stopPropagation();\n triggerKeyboardMove(e, 0, 1);\n break;\n }\n };\n return moveProps;\n }, [\n state,\n onMoveStart,\n onMove,\n onMoveEnd,\n addGlobalListener,\n removeGlobalListener\n ]);\n return {\n moveProps: moveProps1\n };\n}\n\n\n\nvar $7d0a636d7a4dcefd$exports = {};\n\n$parcel$export($7d0a636d7a4dcefd$exports, \"useScrollWheel\", () => $7d0a636d7a4dcefd$export$2123ff2b87c81ca);\n\n\nfunction $7d0a636d7a4dcefd$export$2123ff2b87c81ca(props, ref) {\n let { onScroll: onScroll , isDisabled: isDisabled } = props;\n let onScrollHandler = $bx7SL$useCallback((e)=>{\n // If the ctrlKey is pressed, this is a zoom event, do nothing.\n if (e.ctrlKey) return;\n // stop scrolling the page\n e.preventDefault();\n e.stopPropagation();\n if (onScroll) onScroll({\n deltaX: e.deltaX,\n deltaY: e.deltaY\n });\n }, [\n onScroll\n ]);\n $bx7SL$useEvent(ref, 'wheel', isDisabled ? null : onScrollHandler);\n}\n\n\nvar $8a26561d2877236e$exports = {};\n\n$parcel$export($8a26561d2877236e$exports, \"useLongPress\", () => $8a26561d2877236e$export$c24ed0104d07eab9);\n\n\n\nconst $8a26561d2877236e$var$DEFAULT_THRESHOLD = 500;\nfunction $8a26561d2877236e$export$c24ed0104d07eab9(props) {\n let { isDisabled: isDisabled , onLongPressStart: onLongPressStart , onLongPressEnd: onLongPressEnd , onLongPress: onLongPress , threshold: threshold = $8a26561d2877236e$var$DEFAULT_THRESHOLD , accessibilityDescription: accessibilityDescription } = props;\n const timeRef = $bx7SL$useRef(null);\n let { addGlobalListener: addGlobalListener , removeGlobalListener: removeGlobalListener } = $bx7SL$useGlobalListeners();\n let { pressProps: pressProps } = $f6c31cce2adf654f$export$45712eceda6fad21({\n isDisabled: isDisabled,\n onPressStart (e1) {\n if (e1.pointerType === 'mouse' || e1.pointerType === 'touch') {\n if (onLongPressStart) onLongPressStart({\n ...e1,\n type: 'longpressstart'\n });\n timeRef.current = setTimeout(()=>{\n // Prevent other usePress handlers from also handling this event.\n e1.target.dispatchEvent(new PointerEvent('pointercancel', {\n bubbles: true\n }));\n if (onLongPress) onLongPress({\n ...e1,\n type: 'longpress'\n });\n timeRef.current = null;\n }, threshold);\n // Prevent context menu, which may be opened on long press on touch devices\n if (e1.pointerType === 'touch') {\n let onContextMenu = (e)=>{\n e.preventDefault();\n };\n addGlobalListener(e1.target, 'contextmenu', onContextMenu, {\n once: true\n });\n addGlobalListener(window, 'pointerup', ()=>{\n // If no contextmenu event is fired quickly after pointerup, remove the handler\n // so future context menu events outside a long press are not prevented.\n setTimeout(()=>{\n removeGlobalListener(e1.target, 'contextmenu', onContextMenu);\n }, 30);\n }, {\n once: true\n });\n }\n }\n },\n onPressEnd (e) {\n if (timeRef.current) clearTimeout(timeRef.current);\n if (onLongPressEnd && (e.pointerType === 'mouse' || e.pointerType === 'touch')) onLongPressEnd({\n ...e,\n type: 'longpressend'\n });\n }\n });\n let descriptionProps = $bx7SL$useDescription(onLongPress && !isDisabled ? accessibilityDescription : null);\n return {\n longPressProps: $bx7SL$mergeProps(pressProps, descriptionProps)\n };\n}\n\n\n\n\nexport {$3b117e43dc0ca95d$export$27c701ed9e449e99 as Pressable, $f1ab8c75478c6f73$export$3351871ee4b288b8 as PressResponder, $a1ea59d68270f0dd$export$f8168d8dd8fd66e6 as useFocus, $507fabe10e71c6fb$export$b9b3dfddab17db27 as isFocusVisible, $507fabe10e71c6fb$export$630ff653c5ada6a9 as getInteractionModality, $507fabe10e71c6fb$export$8397ddfc504fdb9a as setInteractionModality, $507fabe10e71c6fb$export$98e20ec92f614cfe as useInteractionModality, $507fabe10e71c6fb$export$ffd9e5021c1fb2d6 as useFocusVisible, $507fabe10e71c6fb$export$ec71b4b83ac08ec3 as useFocusVisibleListener, $9ab94262bd0047c7$export$420e68273165f4ec as useFocusWithin, $6179b936705e76d3$export$ae780daf29e6d456 as useHover, $e0b6e0b68ec7f50f$export$872b660ac5a1ff98 as useInteractOutside, $46d819fcbaf35654$export$8f71654801c2f7cd as useKeyboard, $e8a7022cf87cba2a$export$36da96379f79f245 as useMove, $f6c31cce2adf654f$export$45712eceda6fad21 as usePress, $7d0a636d7a4dcefd$export$2123ff2b87c81ca as useScrollWheel, $8a26561d2877236e$export$c24ed0104d07eab9 as useLongPress};\n//# sourceMappingURL=module.js.map\n","import $6nfFC$react, {useRef as $6nfFC$useRef, useContext as $6nfFC$useContext, useEffect as $6nfFC$useEffect, useState as $6nfFC$useState, useCallback as $6nfFC$useCallback} from \"react\";\nimport {useLayoutEffect as $6nfFC$useLayoutEffect, runAfterTransition as $6nfFC$runAfterTransition, focusWithoutScrolling as $6nfFC$focusWithoutScrolling, mergeProps as $6nfFC$mergeProps, useSyncRef as $6nfFC$useSyncRef} from \"@react-aria/utils\";\nimport {getInteractionModality as $6nfFC$getInteractionModality, isFocusVisible as $6nfFC$isFocusVisible, useFocusVisibleListener as $6nfFC$useFocusVisibleListener, useFocus as $6nfFC$useFocus, useFocusWithin as $6nfFC$useFocusWithin, useKeyboard as $6nfFC$useKeyboard} from \"@react-aria/interactions\";\nimport $6nfFC$clsx from \"clsx\";\n\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\nvar $9bf71ea28793e738$exports = {};\n\n$parcel$export($9bf71ea28793e738$exports, \"FocusScope\", () => $9bf71ea28793e738$export$20e40289641fbbb6);\n$parcel$export($9bf71ea28793e738$exports, \"useFocusManager\", () => $9bf71ea28793e738$export$10c5169755ce7bd7);\n$parcel$export($9bf71ea28793e738$exports, \"getFocusableTreeWalker\", () => $9bf71ea28793e738$export$2d6ec8fc375ceafa);\n$parcel$export($9bf71ea28793e738$exports, \"createFocusManager\", () => $9bf71ea28793e738$export$c5251b9e124bf29);\nvar $6a99195332edec8b$exports = {};\n\n$parcel$export($6a99195332edec8b$exports, \"focusSafely\", () => $6a99195332edec8b$export$80f3e147d781571c);\n\n\nfunction $6a99195332edec8b$export$80f3e147d781571c(element) {\n // If the user is interacting with a virtual cursor, e.g. screen reader, then\n // wait until after any animated transitions that are currently occurring on\n // the page before shifting focus. This avoids issues with VoiceOver on iOS\n // causing the page to scroll when moving focus if the element is transitioning\n // from off the screen.\n if ($6nfFC$getInteractionModality() === 'virtual') {\n let lastFocusedElement = document.activeElement;\n $6nfFC$runAfterTransition(()=>{\n // If focus did not move and the element is still in the document, focus it.\n if (document.activeElement === lastFocusedElement && document.contains(element)) $6nfFC$focusWithoutScrolling(element);\n });\n } else $6nfFC$focusWithoutScrolling(element);\n}\n\n\n/*\n * Copyright 2021 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ function $645f2e67b85a24c9$var$isStyleVisible(element) {\n if (!(element instanceof HTMLElement) && !(element instanceof SVGElement)) return false;\n let { display: display , visibility: visibility } = element.style;\n let isVisible = display !== 'none' && visibility !== 'hidden' && visibility !== 'collapse';\n if (isVisible) {\n const { getComputedStyle: getComputedStyle } = element.ownerDocument.defaultView;\n let { display: computedDisplay , visibility: computedVisibility } = getComputedStyle(element);\n isVisible = computedDisplay !== 'none' && computedVisibility !== 'hidden' && computedVisibility !== 'collapse';\n }\n return isVisible;\n}\nfunction $645f2e67b85a24c9$var$isAttributeVisible(element, childElement) {\n return !element.hasAttribute('hidden') && (element.nodeName === 'DETAILS' && childElement && childElement.nodeName !== 'SUMMARY' ? element.hasAttribute('open') : true);\n}\nfunction $645f2e67b85a24c9$export$e989c0fffaa6b27a(element, childElement) {\n return element.nodeName !== '#comment' && $645f2e67b85a24c9$var$isStyleVisible(element) && $645f2e67b85a24c9$var$isAttributeVisible(element, childElement) && (!element.parentElement || $645f2e67b85a24c9$export$e989c0fffaa6b27a(element.parentElement, element));\n}\n\n\n\n\nconst $9bf71ea28793e738$var$FocusContext = /*#__PURE__*/ $6nfFC$react.createContext(null);\nlet $9bf71ea28793e738$var$activeScope = null;\nlet $9bf71ea28793e738$var$scopes = new Map();\nfunction $9bf71ea28793e738$export$20e40289641fbbb6(props) {\n let { children: children , contain: contain , restoreFocus: restoreFocus , autoFocus: autoFocus } = props;\n let startRef = $6nfFC$useRef();\n let endRef = $6nfFC$useRef();\n let scopeRef = $6nfFC$useRef([]);\n let ctx = $6nfFC$useContext($9bf71ea28793e738$var$FocusContext);\n let parentScope = ctx === null || ctx === void 0 ? void 0 : ctx.scopeRef;\n $6nfFC$useLayoutEffect(()=>{\n // Find all rendered nodes between the sentinels and add them to the scope.\n let node = startRef.current.nextSibling;\n let nodes = [];\n while(node && node !== endRef.current){\n nodes.push(node);\n node = node.nextSibling;\n }\n scopeRef.current = nodes;\n }, [\n children,\n parentScope\n ]);\n $6nfFC$useLayoutEffect(()=>{\n $9bf71ea28793e738$var$scopes.set(scopeRef, parentScope);\n return ()=>{\n // Restore the active scope on unmount if this scope or a descendant scope is active.\n // Parent effect cleanups run before children, so we need to check if the\n // parent scope actually still exists before restoring the active scope to it.\n if ((scopeRef === $9bf71ea28793e738$var$activeScope || $9bf71ea28793e738$var$isAncestorScope(scopeRef, $9bf71ea28793e738$var$activeScope)) && (!parentScope || $9bf71ea28793e738$var$scopes.has(parentScope))) $9bf71ea28793e738$var$activeScope = parentScope;\n $9bf71ea28793e738$var$scopes.delete(scopeRef);\n };\n }, [\n scopeRef,\n parentScope\n ]);\n $9bf71ea28793e738$var$useFocusContainment(scopeRef, contain);\n $9bf71ea28793e738$var$useRestoreFocus(scopeRef, restoreFocus, contain);\n $9bf71ea28793e738$var$useAutoFocus(scopeRef, autoFocus);\n let focusManager = $9bf71ea28793e738$var$createFocusManagerForScope(scopeRef);\n return(/*#__PURE__*/ $6nfFC$react.createElement($9bf71ea28793e738$var$FocusContext.Provider, {\n value: {\n scopeRef: scopeRef,\n focusManager: focusManager\n }\n }, /*#__PURE__*/ $6nfFC$react.createElement(\"span\", {\n \"data-focus-scope-start\": true,\n hidden: true,\n ref: startRef\n }), children, /*#__PURE__*/ $6nfFC$react.createElement(\"span\", {\n \"data-focus-scope-end\": true,\n hidden: true,\n ref: endRef\n })));\n}\nfunction $9bf71ea28793e738$export$10c5169755ce7bd7() {\n var ref;\n return (ref = $6nfFC$useContext($9bf71ea28793e738$var$FocusContext)) === null || ref === void 0 ? void 0 : ref.focusManager;\n}\nfunction $9bf71ea28793e738$var$createFocusManagerForScope(scopeRef) {\n return {\n focusNext (opts = {\n }) {\n let scope = scopeRef.current;\n let { from: from , tabbable: tabbable , wrap: wrap } = opts;\n let node = from || document.activeElement;\n let sentinel = scope[0].previousElementSibling;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa($9bf71ea28793e738$var$getScopeRoot(scope), {\n tabbable: tabbable\n }, scope);\n walker.currentNode = $9bf71ea28793e738$var$isElementInScope(node, scope) ? node : sentinel;\n let nextNode = walker.nextNode();\n if (!nextNode && wrap) {\n walker.currentNode = sentinel;\n nextNode = walker.nextNode();\n }\n if (nextNode) $9bf71ea28793e738$var$focusElement(nextNode, true);\n return nextNode;\n },\n focusPrevious (opts = {\n }) {\n let scope = scopeRef.current;\n let { from: from , tabbable: tabbable , wrap: wrap } = opts;\n let node = from || document.activeElement;\n let sentinel = scope[scope.length - 1].nextElementSibling;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa($9bf71ea28793e738$var$getScopeRoot(scope), {\n tabbable: tabbable\n }, scope);\n walker.currentNode = $9bf71ea28793e738$var$isElementInScope(node, scope) ? node : sentinel;\n let previousNode = walker.previousNode();\n if (!previousNode && wrap) {\n walker.currentNode = sentinel;\n previousNode = walker.previousNode();\n }\n if (previousNode) $9bf71ea28793e738$var$focusElement(previousNode, true);\n return previousNode;\n },\n focusFirst (opts = {\n }) {\n let scope = scopeRef.current;\n let { tabbable: tabbable } = opts;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa($9bf71ea28793e738$var$getScopeRoot(scope), {\n tabbable: tabbable\n }, scope);\n walker.currentNode = scope[0].previousElementSibling;\n let nextNode = walker.nextNode();\n if (nextNode) $9bf71ea28793e738$var$focusElement(nextNode, true);\n return nextNode;\n },\n focusLast (opts = {\n }) {\n let scope = scopeRef.current;\n let { tabbable: tabbable } = opts;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa($9bf71ea28793e738$var$getScopeRoot(scope), {\n tabbable: tabbable\n }, scope);\n walker.currentNode = scope[scope.length - 1].nextElementSibling;\n let previousNode = walker.previousNode();\n if (previousNode) $9bf71ea28793e738$var$focusElement(previousNode, true);\n return previousNode;\n }\n };\n}\nconst $9bf71ea28793e738$var$focusableElements = [\n 'input:not([disabled]):not([type=hidden])',\n 'select:not([disabled])',\n 'textarea:not([disabled])',\n 'button:not([disabled])',\n 'a[href]',\n 'area[href]',\n 'summary',\n 'iframe',\n 'object',\n 'embed',\n 'audio[controls]',\n 'video[controls]',\n '[contenteditable]'\n];\nconst $9bf71ea28793e738$var$FOCUSABLE_ELEMENT_SELECTOR = $9bf71ea28793e738$var$focusableElements.join(':not([hidden]),') + ',[tabindex]:not([disabled]):not([hidden])';\n$9bf71ea28793e738$var$focusableElements.push('[tabindex]:not([tabindex=\"-1\"]):not([disabled])');\nconst $9bf71ea28793e738$var$TABBABLE_ELEMENT_SELECTOR = $9bf71ea28793e738$var$focusableElements.join(':not([hidden]):not([tabindex=\"-1\"]),');\nfunction $9bf71ea28793e738$var$getScopeRoot(scope) {\n return scope[0].parentElement;\n}\nfunction $9bf71ea28793e738$var$useFocusContainment(scopeRef, contain) {\n let focusedNode = $6nfFC$useRef();\n let raf = $6nfFC$useRef(null);\n $6nfFC$useLayoutEffect(()=>{\n let scope1 = scopeRef.current;\n if (!contain) return;\n // Handle the Tab key to contain focus within the scope\n let onKeyDown = (e)=>{\n if (e.key !== 'Tab' || e.altKey || e.ctrlKey || e.metaKey || scopeRef !== $9bf71ea28793e738$var$activeScope) return;\n let focusedElement = document.activeElement;\n let scope = scopeRef.current;\n if (!$9bf71ea28793e738$var$isElementInScope(focusedElement, scope)) return;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa($9bf71ea28793e738$var$getScopeRoot(scope), {\n tabbable: true\n }, scope);\n walker.currentNode = focusedElement;\n let nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();\n if (!nextElement) {\n walker.currentNode = e.shiftKey ? scope[scope.length - 1].nextElementSibling : scope[0].previousElementSibling;\n nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();\n }\n e.preventDefault();\n if (nextElement) $9bf71ea28793e738$var$focusElement(nextElement, true);\n };\n let onFocus = (e)=>{\n // If focusing an element in a child scope of the currently active scope, the child becomes active.\n // Moving out of the active scope to an ancestor is not allowed.\n if (!$9bf71ea28793e738$var$activeScope || $9bf71ea28793e738$var$isAncestorScope($9bf71ea28793e738$var$activeScope, scopeRef)) {\n $9bf71ea28793e738$var$activeScope = scopeRef;\n focusedNode.current = e.target;\n } else if (scopeRef === $9bf71ea28793e738$var$activeScope && !$9bf71ea28793e738$var$isElementInChildScope(e.target, scopeRef)) {\n // If a focus event occurs outside the active scope (e.g. user tabs from browser location bar),\n // restore focus to the previously focused node or the first tabbable element in the active scope.\n if (focusedNode.current) focusedNode.current.focus();\n else if ($9bf71ea28793e738$var$activeScope) $9bf71ea28793e738$var$focusFirstInScope($9bf71ea28793e738$var$activeScope.current);\n } else if (scopeRef === $9bf71ea28793e738$var$activeScope) focusedNode.current = e.target;\n };\n let onBlur = (e)=>{\n // Firefox doesn't shift focus back to the Dialog properly without this\n raf.current = requestAnimationFrame(()=>{\n // Use document.activeElement instead of e.relatedTarget so we can tell if user clicked into iframe\n if (scopeRef === $9bf71ea28793e738$var$activeScope && !$9bf71ea28793e738$var$isElementInChildScope(document.activeElement, scopeRef)) {\n $9bf71ea28793e738$var$activeScope = scopeRef;\n focusedNode.current = e.target;\n focusedNode.current.focus();\n }\n });\n };\n document.addEventListener('keydown', onKeyDown, false);\n document.addEventListener('focusin', onFocus, false);\n scope1.forEach((element)=>element.addEventListener('focusin', onFocus, false)\n );\n scope1.forEach((element)=>element.addEventListener('focusout', onBlur, false)\n );\n return ()=>{\n document.removeEventListener('keydown', onKeyDown, false);\n document.removeEventListener('focusin', onFocus, false);\n scope1.forEach((element)=>element.removeEventListener('focusin', onFocus, false)\n );\n scope1.forEach((element)=>element.removeEventListener('focusout', onBlur, false)\n );\n };\n }, [\n scopeRef,\n contain\n ]);\n // eslint-disable-next-line arrow-body-style\n $6nfFC$useEffect(()=>{\n return ()=>cancelAnimationFrame(raf.current)\n ;\n }, [\n raf\n ]);\n}\nfunction $9bf71ea28793e738$var$isElementInAnyScope(element) {\n for (let scope of $9bf71ea28793e738$var$scopes.keys()){\n if ($9bf71ea28793e738$var$isElementInScope(element, scope.current)) return true;\n }\n return false;\n}\nfunction $9bf71ea28793e738$var$isElementInScope(element, scope) {\n return scope.some((node)=>node.contains(element)\n );\n}\nfunction $9bf71ea28793e738$var$isElementInChildScope(element, scope) {\n // node.contains in isElementInScope covers child scopes that are also DOM children,\n // but does not cover child scopes in portals.\n for (let s of $9bf71ea28793e738$var$scopes.keys()){\n if ((s === scope || $9bf71ea28793e738$var$isAncestorScope(scope, s)) && $9bf71ea28793e738$var$isElementInScope(element, s.current)) return true;\n }\n return false;\n}\nfunction $9bf71ea28793e738$var$isAncestorScope(ancestor, scope) {\n let parent = $9bf71ea28793e738$var$scopes.get(scope);\n if (!parent) return false;\n if (parent === ancestor) return true;\n return $9bf71ea28793e738$var$isAncestorScope(ancestor, parent);\n}\nfunction $9bf71ea28793e738$var$focusElement(element, scroll = false) {\n if (element != null && !scroll) try {\n $6a99195332edec8b$export$80f3e147d781571c(element);\n } catch (err) {\n // ignore\n }\n else if (element != null) try {\n element.focus();\n } catch (err1) {\n // ignore\n }\n}\nfunction $9bf71ea28793e738$var$focusFirstInScope(scope) {\n let sentinel = scope[0].previousElementSibling;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa($9bf71ea28793e738$var$getScopeRoot(scope), {\n tabbable: true\n }, scope);\n walker.currentNode = sentinel;\n $9bf71ea28793e738$var$focusElement(walker.nextNode());\n}\nfunction $9bf71ea28793e738$var$useAutoFocus(scopeRef, autoFocus) {\n const autoFocusRef = $6nfFC$react.useRef(autoFocus);\n $6nfFC$useEffect(()=>{\n if (autoFocusRef.current) {\n $9bf71ea28793e738$var$activeScope = scopeRef;\n if (!$9bf71ea28793e738$var$isElementInScope(document.activeElement, $9bf71ea28793e738$var$activeScope.current)) $9bf71ea28793e738$var$focusFirstInScope(scopeRef.current);\n }\n autoFocusRef.current = false;\n }, []);\n}\nfunction $9bf71ea28793e738$var$useRestoreFocus(scopeRef, restoreFocus, contain) {\n // create a ref during render instead of useLayoutEffect so the active element is saved before a child with autoFocus=true mounts.\n const nodeToRestoreRef = $6nfFC$useRef(typeof document !== 'undefined' ? document.activeElement : null);\n // useLayoutEffect instead of useEffect so the active element is saved synchronously instead of asynchronously.\n $6nfFC$useLayoutEffect(()=>{\n let nodeToRestore = nodeToRestoreRef.current;\n if (!restoreFocus) return;\n // Handle the Tab key so that tabbing out of the scope goes to the next element\n // after the node that had focus when the scope mounted. This is important when\n // using portals for overlays, so that focus goes to the expected element when\n // tabbing out of the overlay.\n let onKeyDown = (e)=>{\n if (e.key !== 'Tab' || e.altKey || e.ctrlKey || e.metaKey) return;\n let focusedElement = document.activeElement;\n if (!$9bf71ea28793e738$var$isElementInScope(focusedElement, scopeRef.current)) return;\n // Create a DOM tree walker that matches all tabbable elements\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(document.body, {\n tabbable: true\n });\n // Find the next tabbable element after the currently focused element\n walker.currentNode = focusedElement;\n let nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();\n if (!document.body.contains(nodeToRestore) || nodeToRestore === document.body) nodeToRestore = null;\n // If there is no next element, or it is outside the current scope, move focus to the\n // next element after the node to restore to instead.\n if ((!nextElement || !$9bf71ea28793e738$var$isElementInScope(nextElement, scopeRef.current)) && nodeToRestore) {\n walker.currentNode = nodeToRestore;\n // Skip over elements within the scope, in case the scope immediately follows the node to restore.\n do nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();\n while ($9bf71ea28793e738$var$isElementInScope(nextElement, scopeRef.current))\n e.preventDefault();\n e.stopPropagation();\n if (nextElement) $9bf71ea28793e738$var$focusElement(nextElement, true);\n else // If there is no next element and the nodeToRestore isn't within a FocusScope (i.e. we are leaving the top level focus scope)\n // then move focus to the body.\n // Otherwise restore focus to the nodeToRestore (e.g menu within a popover -> tabbing to close the menu should move focus to menu trigger)\n if (!$9bf71ea28793e738$var$isElementInAnyScope(nodeToRestore)) focusedElement.blur();\n else $9bf71ea28793e738$var$focusElement(nodeToRestore, true);\n }\n };\n if (!contain) document.addEventListener('keydown', onKeyDown, true);\n return ()=>{\n if (!contain) document.removeEventListener('keydown', onKeyDown, true);\n if (restoreFocus && nodeToRestore && $9bf71ea28793e738$var$isElementInScope(document.activeElement, scopeRef.current)) requestAnimationFrame(()=>{\n if (document.body.contains(nodeToRestore)) $9bf71ea28793e738$var$focusElement(nodeToRestore);\n });\n };\n }, [\n scopeRef,\n restoreFocus,\n contain\n ]);\n}\nfunction $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, opts, scope) {\n let selector = (opts === null || opts === void 0 ? void 0 : opts.tabbable) ? $9bf71ea28793e738$var$TABBABLE_ELEMENT_SELECTOR : $9bf71ea28793e738$var$FOCUSABLE_ELEMENT_SELECTOR;\n let walker = document.createTreeWalker(root, NodeFilter.SHOW_ELEMENT, {\n acceptNode (node) {\n var ref;\n // Skip nodes inside the starting node.\n if (opts === null || opts === void 0 ? void 0 : (ref = opts.from) === null || ref === void 0 ? void 0 : ref.contains(node)) return NodeFilter.FILTER_REJECT;\n if (node.matches(selector) && $645f2e67b85a24c9$export$e989c0fffaa6b27a(node) && (!scope || $9bf71ea28793e738$var$isElementInScope(node, scope)) && (!(opts === null || opts === void 0 ? void 0 : opts.accept) || opts.accept(node))) return NodeFilter.FILTER_ACCEPT;\n return NodeFilter.FILTER_SKIP;\n }\n });\n if (opts === null || opts === void 0 ? void 0 : opts.from) walker.currentNode = opts.from;\n return walker;\n}\nfunction $9bf71ea28793e738$export$c5251b9e124bf29(ref, defaultOptions = {\n}) {\n return {\n focusNext (opts = {\n }) {\n let root = ref.current;\n if (!root) return;\n let { from: from , tabbable: tabbable = defaultOptions.tabbable , wrap: wrap = defaultOptions.wrap , accept: accept = defaultOptions.accept } = opts;\n let node = from || document.activeElement;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, {\n tabbable: tabbable,\n accept: accept\n });\n if (root.contains(node)) walker.currentNode = node;\n let nextNode = walker.nextNode();\n if (!nextNode && wrap) {\n walker.currentNode = root;\n nextNode = walker.nextNode();\n }\n if (nextNode) $9bf71ea28793e738$var$focusElement(nextNode, true);\n return nextNode;\n },\n focusPrevious (opts = defaultOptions) {\n let root = ref.current;\n if (!root) return;\n let { from: from , tabbable: tabbable = defaultOptions.tabbable , wrap: wrap = defaultOptions.wrap , accept: accept = defaultOptions.accept } = opts;\n let node = from || document.activeElement;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, {\n tabbable: tabbable,\n accept: accept\n });\n if (root.contains(node)) walker.currentNode = node;\n else {\n let next = $9bf71ea28793e738$var$last(walker);\n if (next) $9bf71ea28793e738$var$focusElement(next, true);\n return next;\n }\n let previousNode = walker.previousNode();\n if (!previousNode && wrap) {\n walker.currentNode = root;\n previousNode = $9bf71ea28793e738$var$last(walker);\n }\n if (previousNode) $9bf71ea28793e738$var$focusElement(previousNode, true);\n return previousNode;\n },\n focusFirst (opts = defaultOptions) {\n let root = ref.current;\n if (!root) return;\n let { tabbable: tabbable = defaultOptions.tabbable , accept: accept = defaultOptions.accept } = opts;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, {\n tabbable: tabbable,\n accept: accept\n });\n let nextNode = walker.nextNode();\n if (nextNode) $9bf71ea28793e738$var$focusElement(nextNode, true);\n return nextNode;\n },\n focusLast (opts = defaultOptions) {\n let root = ref.current;\n if (!root) return;\n let { tabbable: tabbable = defaultOptions.tabbable , accept: accept = defaultOptions.accept } = opts;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, {\n tabbable: tabbable,\n accept: accept\n });\n let next = $9bf71ea28793e738$var$last(walker);\n if (next) $9bf71ea28793e738$var$focusElement(next, true);\n return next;\n }\n };\n}\nfunction $9bf71ea28793e738$var$last(walker) {\n let next;\n let last;\n do {\n last = walker.lastChild();\n if (last) next = last;\n }while (last)\n return next;\n}\n\n\nvar $907718708eab68af$exports = {};\n\n$parcel$export($907718708eab68af$exports, \"FocusRing\", () => $907718708eab68af$export$1a38b4ad7f578e1d);\n\n\n\nvar $f7dceffc5ad7768b$exports = {};\n\n$parcel$export($f7dceffc5ad7768b$exports, \"useFocusRing\", () => $f7dceffc5ad7768b$export$4e328f61c538687f);\n\n\n\nfunction $f7dceffc5ad7768b$export$4e328f61c538687f(props = {\n}) {\n let { autoFocus: autoFocus = false , isTextInput: isTextInput , within: within } = props;\n let state = $6nfFC$useRef({\n isFocused: false,\n isFocusVisible: autoFocus || $6nfFC$isFocusVisible()\n });\n let [isFocused1, setFocused] = $6nfFC$useState(false);\n let [isFocusVisibleState, setFocusVisible] = $6nfFC$useState(()=>state.current.isFocused && state.current.isFocusVisible\n );\n let updateState = $6nfFC$useCallback(()=>setFocusVisible(state.current.isFocused && state.current.isFocusVisible)\n , []);\n let onFocusChange = $6nfFC$useCallback((isFocused)=>{\n state.current.isFocused = isFocused;\n setFocused(isFocused);\n updateState();\n }, [\n updateState\n ]);\n $6nfFC$useFocusVisibleListener((isFocusVisible)=>{\n state.current.isFocusVisible = isFocusVisible;\n updateState();\n }, [], {\n isTextInput: isTextInput\n });\n let { focusProps: focusProps } = $6nfFC$useFocus({\n isDisabled: within,\n onFocusChange: onFocusChange\n });\n let { focusWithinProps: focusWithinProps } = $6nfFC$useFocusWithin({\n isDisabled: !within,\n onFocusWithinChange: onFocusChange\n });\n return {\n isFocused: isFocused1,\n isFocusVisible: state.current.isFocused && isFocusVisibleState,\n focusProps: within ? focusWithinProps : focusProps\n };\n}\n\n\nfunction $907718708eab68af$export$1a38b4ad7f578e1d(props) {\n let { children: children , focusClass: focusClass , focusRingClass: focusRingClass } = props;\n let { isFocused: isFocused , isFocusVisible: isFocusVisible , focusProps: focusProps } = $f7dceffc5ad7768b$export$4e328f61c538687f(props);\n let child = $6nfFC$react.Children.only(children);\n return(/*#__PURE__*/ $6nfFC$react.cloneElement(child, $6nfFC$mergeProps(child.props, {\n ...focusProps,\n className: $6nfFC$clsx({\n [focusClass || '']: isFocused,\n [focusRingClass || '']: isFocusVisible\n })\n })));\n}\n\n\nvar $e6afbd83fe6ebbd2$exports = {};\n\n$parcel$export($e6afbd83fe6ebbd2$exports, \"FocusableProvider\", () => $e6afbd83fe6ebbd2$export$13f3202a3e5ddd5);\n$parcel$export($e6afbd83fe6ebbd2$exports, \"useFocusable\", () => $e6afbd83fe6ebbd2$export$4c014de7c8940b4c);\n\n\n\n\nlet $e6afbd83fe6ebbd2$var$FocusableContext = /*#__PURE__*/ $6nfFC$react.createContext(null);\nfunction $e6afbd83fe6ebbd2$var$useFocusableContext(ref) {\n let context = $6nfFC$useContext($e6afbd83fe6ebbd2$var$FocusableContext) || {\n };\n $6nfFC$useSyncRef(context, ref);\n // eslint-disable-next-line\n let { ref: _ , ...otherProps } = context;\n return otherProps;\n}\n/**\n * Provides DOM props to the nearest focusable child.\n */ function $e6afbd83fe6ebbd2$var$FocusableProvider(props, ref) {\n let { children: children , ...otherProps } = props;\n let context = {\n ...otherProps,\n ref: ref\n };\n return(/*#__PURE__*/ $6nfFC$react.createElement($e6afbd83fe6ebbd2$var$FocusableContext.Provider, {\n value: context\n }, children));\n}\nlet $e6afbd83fe6ebbd2$export$13f3202a3e5ddd5 = /*#__PURE__*/ $6nfFC$react.forwardRef($e6afbd83fe6ebbd2$var$FocusableProvider);\nfunction $e6afbd83fe6ebbd2$export$4c014de7c8940b4c(props, domRef) {\n let { focusProps: focusProps } = $6nfFC$useFocus(props);\n let { keyboardProps: keyboardProps } = $6nfFC$useKeyboard(props);\n let interactions = $6nfFC$mergeProps(focusProps, keyboardProps);\n let domProps = $e6afbd83fe6ebbd2$var$useFocusableContext(domRef);\n let interactionProps = props.isDisabled ? {\n } : domProps;\n let autoFocusRef = $6nfFC$useRef(props.autoFocus);\n $6nfFC$useEffect(()=>{\n if (autoFocusRef.current && domRef.current) $6a99195332edec8b$export$80f3e147d781571c(domRef.current);\n autoFocusRef.current = false;\n }, [\n domRef\n ]);\n return {\n focusableProps: $6nfFC$mergeProps({\n ...interactions,\n tabIndex: props.excludeFromTabOrder && !props.isDisabled ? -1 : undefined\n }, interactionProps)\n };\n}\n\n\n\n\n\n\nexport {$9bf71ea28793e738$export$20e40289641fbbb6 as FocusScope, $9bf71ea28793e738$export$10c5169755ce7bd7 as useFocusManager, $9bf71ea28793e738$export$2d6ec8fc375ceafa as getFocusableTreeWalker, $9bf71ea28793e738$export$c5251b9e124bf29 as createFocusManager, $907718708eab68af$export$1a38b4ad7f578e1d as FocusRing, $e6afbd83fe6ebbd2$export$13f3202a3e5ddd5 as FocusableProvider, $e6afbd83fe6ebbd2$export$4c014de7c8940b4c as useFocusable, $f7dceffc5ad7768b$export$4e328f61c538687f as useFocusRing, $6a99195332edec8b$export$80f3e147d781571c as focusSafely};\n//# sourceMappingURL=module.js.map\n","function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n// Older browsers don't support event options, feature detect it.\n\n// Adopted and modified solution from Bohdan Didukh (2017)\n// https://stackoverflow.com/questions/41594997/ios-10-safari-prevent-scrolling-behind-a-fixed-overlay-and-maintain-scroll-posi\n\nvar hasPassiveEvents = false;\nif (typeof window !== 'undefined') {\n var passiveTestOptions = {\n get passive() {\n hasPassiveEvents = true;\n return undefined;\n }\n };\n window.addEventListener('testPassive', null, passiveTestOptions);\n window.removeEventListener('testPassive', null, passiveTestOptions);\n}\n\nvar isIosDevice = typeof window !== 'undefined' && window.navigator && window.navigator.platform && (/iP(ad|hone|od)/.test(window.navigator.platform) || window.navigator.platform === 'MacIntel' && window.navigator.maxTouchPoints > 1);\n\n\nvar locks = [];\nvar documentListenerAdded = false;\nvar initialClientY = -1;\nvar previousBodyOverflowSetting = void 0;\nvar previousBodyPaddingRight = void 0;\n\n// returns true if `el` should be allowed to receive touchmove events.\nvar allowTouchMove = function allowTouchMove(el) {\n return locks.some(function (lock) {\n if (lock.options.allowTouchMove && lock.options.allowTouchMove(el)) {\n return true;\n }\n\n return false;\n });\n};\n\nvar preventDefault = function preventDefault(rawEvent) {\n var e = rawEvent || window.event;\n\n // For the case whereby consumers adds a touchmove event listener to document.\n // Recall that we do document.addEventListener('touchmove', preventDefault, { passive: false })\n // in disableBodyScroll - so if we provide this opportunity to allowTouchMove, then\n // the touchmove event on document will break.\n if (allowTouchMove(e.target)) {\n return true;\n }\n\n // Do not prevent if the event has more than one touch (usually meaning this is a multi touch gesture like pinch to zoom).\n if (e.touches.length > 1) return true;\n\n if (e.preventDefault) e.preventDefault();\n\n return false;\n};\n\nvar setOverflowHidden = function setOverflowHidden(options) {\n // If previousBodyPaddingRight is already set, don't set it again.\n if (previousBodyPaddingRight === undefined) {\n var _reserveScrollBarGap = !!options && options.reserveScrollBarGap === true;\n var scrollBarGap = window.innerWidth - document.documentElement.clientWidth;\n\n if (_reserveScrollBarGap && scrollBarGap > 0) {\n previousBodyPaddingRight = document.body.style.paddingRight;\n document.body.style.paddingRight = scrollBarGap + 'px';\n }\n }\n\n // If previousBodyOverflowSetting is already set, don't set it again.\n if (previousBodyOverflowSetting === undefined) {\n previousBodyOverflowSetting = document.body.style.overflow;\n document.body.style.overflow = 'hidden';\n }\n};\n\nvar restoreOverflowSetting = function restoreOverflowSetting() {\n if (previousBodyPaddingRight !== undefined) {\n document.body.style.paddingRight = previousBodyPaddingRight;\n\n // Restore previousBodyPaddingRight to undefined so setOverflowHidden knows it\n // can be set again.\n previousBodyPaddingRight = undefined;\n }\n\n if (previousBodyOverflowSetting !== undefined) {\n document.body.style.overflow = previousBodyOverflowSetting;\n\n // Restore previousBodyOverflowSetting to undefined\n // so setOverflowHidden knows it can be set again.\n previousBodyOverflowSetting = undefined;\n }\n};\n\n// https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollHeight#Problems_and_solutions\nvar isTargetElementTotallyScrolled = function isTargetElementTotallyScrolled(targetElement) {\n return targetElement ? targetElement.scrollHeight - targetElement.scrollTop <= targetElement.clientHeight : false;\n};\n\nvar handleScroll = function handleScroll(event, targetElement) {\n var clientY = event.targetTouches[0].clientY - initialClientY;\n\n if (allowTouchMove(event.target)) {\n return false;\n }\n\n if (targetElement && targetElement.scrollTop === 0 && clientY > 0) {\n // element is at the top of its scroll.\n return preventDefault(event);\n }\n\n if (isTargetElementTotallyScrolled(targetElement) && clientY < 0) {\n // element is at the bottom of its scroll.\n return preventDefault(event);\n }\n\n event.stopPropagation();\n return true;\n};\n\nexport var disableBodyScroll = function disableBodyScroll(targetElement, options) {\n // targetElement must be provided\n if (!targetElement) {\n // eslint-disable-next-line no-console\n console.error('disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.');\n return;\n }\n\n // disableBodyScroll must not have been called on this targetElement before\n if (locks.some(function (lock) {\n return lock.targetElement === targetElement;\n })) {\n return;\n }\n\n var lock = {\n targetElement: targetElement,\n options: options || {}\n };\n\n locks = [].concat(_toConsumableArray(locks), [lock]);\n\n if (isIosDevice) {\n targetElement.ontouchstart = function (event) {\n if (event.targetTouches.length === 1) {\n // detect single touch.\n initialClientY = event.targetTouches[0].clientY;\n }\n };\n targetElement.ontouchmove = function (event) {\n if (event.targetTouches.length === 1) {\n // detect single touch.\n handleScroll(event, targetElement);\n }\n };\n\n if (!documentListenerAdded) {\n document.addEventListener('touchmove', preventDefault, hasPassiveEvents ? { passive: false } : undefined);\n documentListenerAdded = true;\n }\n } else {\n setOverflowHidden(options);\n }\n};\n\nexport var clearAllBodyScrollLocks = function clearAllBodyScrollLocks() {\n if (isIosDevice) {\n // Clear all locks ontouchstart/ontouchmove handlers, and the references.\n locks.forEach(function (lock) {\n lock.targetElement.ontouchstart = null;\n lock.targetElement.ontouchmove = null;\n });\n\n if (documentListenerAdded) {\n document.removeEventListener('touchmove', preventDefault, hasPassiveEvents ? { passive: false } : undefined);\n documentListenerAdded = false;\n }\n\n // Reset initial clientY.\n initialClientY = -1;\n } else {\n restoreOverflowSetting();\n }\n\n locks = [];\n};\n\nexport var enableBodyScroll = function enableBodyScroll(targetElement) {\n if (!targetElement) {\n // eslint-disable-next-line no-console\n console.error('enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.');\n return;\n }\n\n locks = locks.filter(function (lock) {\n return lock.targetElement !== targetElement;\n });\n\n if (isIosDevice) {\n targetElement.ontouchstart = null;\n targetElement.ontouchmove = null;\n\n if (documentListenerAdded && locks.length === 0) {\n document.removeEventListener('touchmove', preventDefault, hasPassiveEvents ? { passive: false } : undefined);\n documentListenerAdded = false;\n }\n } else if (!locks.length) {\n restoreOverflowSetting();\n }\n};\n\n"],"sourceRoot":""}