UNPKG

alinea

Version:
893 lines (864 loc) 37.2 kB
// node_modules/@react-aria/interactions/dist/useHover.mjs import { useState as $AWxnT$useState, useRef as $AWxnT$useRef, useEffect as $AWxnT$useEffect, useMemo as $AWxnT$useMemo } from "react"; var $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false; var $6179b936705e76d3$var$hoverCount = 0; function $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents() { $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = true; setTimeout(() => { $6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents = false; }, 50); } function $6179b936705e76d3$var$handleGlobalPointerEvent(e2) { if (e2.pointerType === "touch") $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents(); } function $6179b936705e76d3$var$setupGlobalTouchEvents() { if (typeof document === "undefined") return; if (typeof PointerEvent !== "undefined") document.addEventListener("pointerup", $6179b936705e76d3$var$handleGlobalPointerEvent); else document.addEventListener("touchend", $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents); $6179b936705e76d3$var$hoverCount++; return () => { $6179b936705e76d3$var$hoverCount--; if ($6179b936705e76d3$var$hoverCount > 0) return; if (typeof PointerEvent !== "undefined") document.removeEventListener("pointerup", $6179b936705e76d3$var$handleGlobalPointerEvent); else document.removeEventListener("touchend", $6179b936705e76d3$var$setGlobalIgnoreEmulatedMouseEvents); }; } function $6179b936705e76d3$export$ae780daf29e6d456(props) { let { onHoverStart, onHoverChange, onHoverEnd, isDisabled } = props; let [isHovered, setHovered] = (0, $AWxnT$useState)(false); let state = (0, $AWxnT$useRef)({ isHovered: false, ignoreEmulatedMouseEvents: false, pointerType: "", target: null }).current; (0, $AWxnT$useEffect)($6179b936705e76d3$var$setupGlobalTouchEvents, []); let { hoverProps, triggerHoverEnd } = (0, $AWxnT$useMemo)(() => { let triggerHoverStart = (event, pointerType) => { state.pointerType = pointerType; if (isDisabled || pointerType === "touch" || state.isHovered || !event.currentTarget.contains(event.target)) return; state.isHovered = true; let target = event.currentTarget; state.target = target; if (onHoverStart) onHoverStart({ type: "hoverstart", target, pointerType }); if (onHoverChange) onHoverChange(true); setHovered(true); }; let triggerHoverEnd2 = (event, pointerType) => { state.pointerType = ""; state.target = null; if (pointerType === "touch" || !state.isHovered) return; state.isHovered = false; let target = event.currentTarget; if (onHoverEnd) onHoverEnd({ type: "hoverend", target, pointerType }); if (onHoverChange) onHoverChange(false); setHovered(false); }; let hoverProps2 = {}; if (typeof PointerEvent !== "undefined") { hoverProps2.onPointerEnter = (e2) => { if ($6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents && e2.pointerType === "mouse") return; triggerHoverStart(e2, e2.pointerType); }; hoverProps2.onPointerLeave = (e2) => { if (!isDisabled && e2.currentTarget.contains(e2.target)) triggerHoverEnd2(e2, e2.pointerType); }; } else { hoverProps2.onTouchStart = () => { state.ignoreEmulatedMouseEvents = true; }; hoverProps2.onMouseEnter = (e2) => { if (!state.ignoreEmulatedMouseEvents && !$6179b936705e76d3$var$globalIgnoreEmulatedMouseEvents) triggerHoverStart(e2, "mouse"); state.ignoreEmulatedMouseEvents = false; }; hoverProps2.onMouseLeave = (e2) => { if (!isDisabled && e2.currentTarget.contains(e2.target)) triggerHoverEnd2(e2, "mouse"); }; } return { hoverProps: hoverProps2, triggerHoverEnd: triggerHoverEnd2 }; }, [ onHoverStart, onHoverChange, onHoverEnd, isDisabled, state ]); (0, $AWxnT$useEffect)(() => { if (isDisabled) triggerHoverEnd({ currentTarget: state.target }, state.pointerType); }, [ isDisabled ]); return { hoverProps, isHovered }; } // node_modules/@react-aria/utils/dist/useLayoutEffect.mjs import $HgANd$react from "react"; var $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c = typeof document !== "undefined" ? (0, $HgANd$react).useLayoutEffect : () => { }; // node_modules/@react-aria/utils/dist/useEffectEvent.mjs import { useRef as $lmaYr$useRef, useCallback as $lmaYr$useCallback } from "react"; function $8ae05eaa5c114e9c$export$7f54fc3180508a52(fn) { const ref = (0, $lmaYr$useRef)(null); (0, $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(() => { ref.current = fn; }, [ fn ]); return (0, $lmaYr$useCallback)((...args) => { const f2 = ref.current; return f2 === null || f2 === void 0 ? void 0 : f2(...args); }, []); } // node_modules/@react-aria/utils/dist/domHelpers.mjs var $431fbd86ca7dc216$export$b204af158042fbac = (el) => { var _el_ownerDocument; return (_el_ownerDocument = el === null || el === void 0 ? void 0 : el.ownerDocument) !== null && _el_ownerDocument !== void 0 ? _el_ownerDocument : document; }; var $431fbd86ca7dc216$export$f21a1ffae260145a = (el) => { if (el && "window" in el && el.window === el) return el; const doc = $431fbd86ca7dc216$export$b204af158042fbac(el); return doc.defaultView || window; }; // node_modules/@react-aria/utils/dist/platform.mjs function $c87311424ea30a05$var$testUserAgent(re) { var _window_navigator_userAgentData; if (typeof window === "undefined" || window.navigator == null) return false; return ((_window_navigator_userAgentData = window.navigator["userAgentData"]) === null || _window_navigator_userAgentData === void 0 ? void 0 : _window_navigator_userAgentData.brands.some((brand) => re.test(brand.brand))) || re.test(window.navigator.userAgent); } function $c87311424ea30a05$var$testPlatform(re) { var _window_navigator_userAgentData; return typeof window !== "undefined" && window.navigator != null ? re.test(((_window_navigator_userAgentData = window.navigator["userAgentData"]) === null || _window_navigator_userAgentData === void 0 ? void 0 : _window_navigator_userAgentData.platform) || window.navigator.platform) : false; } function $c87311424ea30a05$var$cached(fn) { let res = null; return () => { if (res == null) res = fn(); return res; }; } var $c87311424ea30a05$export$9ac100e40613ea10 = $c87311424ea30a05$var$cached(function() { return $c87311424ea30a05$var$testPlatform(/^Mac/i); }); var $c87311424ea30a05$export$186c6964ca17d99 = $c87311424ea30a05$var$cached(function() { return $c87311424ea30a05$var$testPlatform(/^iPhone/i); }); var $c87311424ea30a05$export$7bef049ce92e4224 = $c87311424ea30a05$var$cached(function() { return $c87311424ea30a05$var$testPlatform(/^iPad/i) || // iPadOS 13 lies and says it's a Mac, but we can distinguish by detecting touch support. $c87311424ea30a05$export$9ac100e40613ea10() && navigator.maxTouchPoints > 1; }); var $c87311424ea30a05$export$fedb369cb70207f1 = $c87311424ea30a05$var$cached(function() { return $c87311424ea30a05$export$186c6964ca17d99() || $c87311424ea30a05$export$7bef049ce92e4224(); }); var $c87311424ea30a05$export$e1865c3bedcd822b = $c87311424ea30a05$var$cached(function() { return $c87311424ea30a05$export$9ac100e40613ea10() || $c87311424ea30a05$export$fedb369cb70207f1(); }); var $c87311424ea30a05$export$78551043582a6a98 = $c87311424ea30a05$var$cached(function() { return $c87311424ea30a05$var$testUserAgent(/AppleWebKit/i) && !$c87311424ea30a05$export$6446a186d09e379e(); }); var $c87311424ea30a05$export$6446a186d09e379e = $c87311424ea30a05$var$cached(function() { return $c87311424ea30a05$var$testUserAgent(/Chrome/i); }); var $c87311424ea30a05$export$a11b0059900ceec8 = $c87311424ea30a05$var$cached(function() { return $c87311424ea30a05$var$testUserAgent(/Android/i); }); var $c87311424ea30a05$export$b7d78993b74f766d = $c87311424ea30a05$var$cached(function() { return $c87311424ea30a05$var$testUserAgent(/Firefox/i); }); // node_modules/@react-aria/utils/dist/isVirtualEvent.mjs function $6a7db85432448f7f$export$60278871457622de(event) { if (event.mozInputSource === 0 && event.isTrusted) return true; if ((0, $c87311424ea30a05$export$a11b0059900ceec8)() && event.pointerType) return event.type === "click" && event.buttons === 1; return event.detail === 0 && !event.pointerType; } // node_modules/@react-aria/interactions/dist/utils.mjs import { useRef as $6dfIe$useRef, useCallback as $6dfIe$useCallback } from "react"; var $8a9cb279dc87e130$export$905e7fc544a71f36 = class { isDefaultPrevented() { return this.nativeEvent.defaultPrevented; } preventDefault() { this.defaultPrevented = true; this.nativeEvent.preventDefault(); } stopPropagation() { this.nativeEvent.stopPropagation(); this.isPropagationStopped = () => true; } isPropagationStopped() { return false; } persist() { } constructor(type, nativeEvent) { this.nativeEvent = nativeEvent; this.target = nativeEvent.target; this.currentTarget = nativeEvent.currentTarget; this.relatedTarget = nativeEvent.relatedTarget; this.bubbles = nativeEvent.bubbles; this.cancelable = nativeEvent.cancelable; this.defaultPrevented = nativeEvent.defaultPrevented; this.eventPhase = nativeEvent.eventPhase; this.isTrusted = nativeEvent.isTrusted; this.timeStamp = nativeEvent.timeStamp; this.type = type; } }; function $8a9cb279dc87e130$export$715c682d09d639cc(onBlur) { let stateRef = (0, $6dfIe$useRef)({ isFocused: false, observer: null }); (0, $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(() => { const state = stateRef.current; return () => { if (state.observer) { state.observer.disconnect(); state.observer = null; } }; }, []); let dispatchBlur = (0, $8ae05eaa5c114e9c$export$7f54fc3180508a52)((e2) => { onBlur === null || onBlur === void 0 ? void 0 : onBlur(e2); }); return (0, $6dfIe$useCallback)((e2) => { if (e2.target instanceof HTMLButtonElement || e2.target instanceof HTMLInputElement || e2.target instanceof HTMLTextAreaElement || e2.target instanceof HTMLSelectElement) { stateRef.current.isFocused = true; let target = e2.target; let onBlurHandler = (e3) => { stateRef.current.isFocused = false; if (target.disabled) dispatchBlur(new $8a9cb279dc87e130$export$905e7fc544a71f36("blur", e3)); if (stateRef.current.observer) { stateRef.current.observer.disconnect(); stateRef.current.observer = null; } }; target.addEventListener("focusout", onBlurHandler, { once: true }); stateRef.current.observer = new MutationObserver(() => { if (stateRef.current.isFocused && target.disabled) { var _stateRef_current_observer; (_stateRef_current_observer = stateRef.current.observer) === null || _stateRef_current_observer === void 0 ? void 0 : _stateRef_current_observer.disconnect(); let relatedTargetEl = target === document.activeElement ? null : document.activeElement; target.dispatchEvent(new FocusEvent("blur", { relatedTarget: relatedTargetEl })); target.dispatchEvent(new FocusEvent("focusout", { bubbles: true, relatedTarget: relatedTargetEl })); } }); stateRef.current.observer.observe(target, { attributes: true, attributeFilter: [ "disabled" ] }); } }, [ dispatchBlur ]); } // node_modules/@react-aria/interactions/dist/useFocus.mjs import { useCallback as $hf0lj$useCallback } from "react"; function $a1ea59d68270f0dd$export$f8168d8dd8fd66e6(props) { let { isDisabled, onFocus: onFocusProp, onBlur: onBlurProp, onFocusChange } = props; const onBlur = (0, $hf0lj$useCallback)((e2) => { if (e2.target === e2.currentTarget) { if (onBlurProp) onBlurProp(e2); if (onFocusChange) onFocusChange(false); return true; } }, [ onBlurProp, onFocusChange ]); const onSyntheticFocus = (0, $8a9cb279dc87e130$export$715c682d09d639cc)(onBlur); const onFocus = (0, $hf0lj$useCallback)((e2) => { const ownerDocument = (0, $431fbd86ca7dc216$export$b204af158042fbac)(e2.target); if (e2.target === e2.currentTarget && ownerDocument.activeElement === e2.target) { if (onFocusProp) onFocusProp(e2); if (onFocusChange) onFocusChange(true); onSyntheticFocus(e2); } }, [ onFocusChange, onFocusProp, onSyntheticFocus ]); return { focusProps: { onFocus: !isDisabled && (onFocusProp || onFocusChange || onBlurProp) ? onFocus : void 0, onBlur: !isDisabled && (onBlurProp || onFocusChange) ? onBlur : void 0 } }; } // node_modules/@react-aria/interactions/dist/useFocusVisible.mjs import { useState as $28AnR$useState, useEffect as $28AnR$useEffect } from "react"; var $507fabe10e71c6fb$var$currentModality = null; var $507fabe10e71c6fb$var$changeHandlers = /* @__PURE__ */ new Set(); var $507fabe10e71c6fb$export$d90243b58daecda7 = /* @__PURE__ */ new Map(); var $507fabe10e71c6fb$var$hasEventBeforeFocus = false; var $507fabe10e71c6fb$var$hasBlurredWindowRecently = false; var $507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS = { Tab: true, Escape: true }; function $507fabe10e71c6fb$var$triggerChangeHandlers(modality, e2) { for (let handler of $507fabe10e71c6fb$var$changeHandlers) handler(modality, e2); } function $507fabe10e71c6fb$var$isValidKey(e2) { return !(e2.metaKey || !(0, $c87311424ea30a05$export$9ac100e40613ea10)() && e2.altKey || e2.ctrlKey || e2.key === "Control" || e2.key === "Shift" || e2.key === "Meta"); } function $507fabe10e71c6fb$var$handleKeyboardEvent(e2) { $507fabe10e71c6fb$var$hasEventBeforeFocus = true; if ($507fabe10e71c6fb$var$isValidKey(e2)) { $507fabe10e71c6fb$var$currentModality = "keyboard"; $507fabe10e71c6fb$var$triggerChangeHandlers("keyboard", e2); } } function $507fabe10e71c6fb$var$handlePointerEvent(e2) { $507fabe10e71c6fb$var$currentModality = "pointer"; if (e2.type === "mousedown" || e2.type === "pointerdown") { $507fabe10e71c6fb$var$hasEventBeforeFocus = true; $507fabe10e71c6fb$var$triggerChangeHandlers("pointer", e2); } } function $507fabe10e71c6fb$var$handleClickEvent(e2) { if ((0, $6a7db85432448f7f$export$60278871457622de)(e2)) { $507fabe10e71c6fb$var$hasEventBeforeFocus = true; $507fabe10e71c6fb$var$currentModality = "virtual"; } } function $507fabe10e71c6fb$var$handleFocusEvent(e2) { if (e2.target === window || e2.target === document) return; if (!$507fabe10e71c6fb$var$hasEventBeforeFocus && !$507fabe10e71c6fb$var$hasBlurredWindowRecently) { $507fabe10e71c6fb$var$currentModality = "virtual"; $507fabe10e71c6fb$var$triggerChangeHandlers("virtual", e2); } $507fabe10e71c6fb$var$hasEventBeforeFocus = false; $507fabe10e71c6fb$var$hasBlurredWindowRecently = false; } function $507fabe10e71c6fb$var$handleWindowBlur() { $507fabe10e71c6fb$var$hasEventBeforeFocus = false; $507fabe10e71c6fb$var$hasBlurredWindowRecently = true; } function $507fabe10e71c6fb$var$setupGlobalFocusEvents(element) { if (typeof window === "undefined" || $507fabe10e71c6fb$export$d90243b58daecda7.get((0, $431fbd86ca7dc216$export$f21a1ffae260145a)(element))) return; const windowObject = (0, $431fbd86ca7dc216$export$f21a1ffae260145a)(element); const documentObject = (0, $431fbd86ca7dc216$export$b204af158042fbac)(element); let focus = windowObject.HTMLElement.prototype.focus; windowObject.HTMLElement.prototype.focus = function() { $507fabe10e71c6fb$var$hasEventBeforeFocus = true; focus.apply(this, arguments); }; documentObject.addEventListener("keydown", $507fabe10e71c6fb$var$handleKeyboardEvent, true); documentObject.addEventListener("keyup", $507fabe10e71c6fb$var$handleKeyboardEvent, true); documentObject.addEventListener("click", $507fabe10e71c6fb$var$handleClickEvent, true); windowObject.addEventListener("focus", $507fabe10e71c6fb$var$handleFocusEvent, true); windowObject.addEventListener("blur", $507fabe10e71c6fb$var$handleWindowBlur, false); if (typeof PointerEvent !== "undefined") { documentObject.addEventListener("pointerdown", $507fabe10e71c6fb$var$handlePointerEvent, true); documentObject.addEventListener("pointermove", $507fabe10e71c6fb$var$handlePointerEvent, true); documentObject.addEventListener("pointerup", $507fabe10e71c6fb$var$handlePointerEvent, true); } else { documentObject.addEventListener("mousedown", $507fabe10e71c6fb$var$handlePointerEvent, true); documentObject.addEventListener("mousemove", $507fabe10e71c6fb$var$handlePointerEvent, true); documentObject.addEventListener("mouseup", $507fabe10e71c6fb$var$handlePointerEvent, true); } windowObject.addEventListener("beforeunload", () => { $507fabe10e71c6fb$var$tearDownWindowFocusTracking(element); }, { once: true }); $507fabe10e71c6fb$export$d90243b58daecda7.set(windowObject, { focus }); } var $507fabe10e71c6fb$var$tearDownWindowFocusTracking = (element, loadListener) => { const windowObject = (0, $431fbd86ca7dc216$export$f21a1ffae260145a)(element); const documentObject = (0, $431fbd86ca7dc216$export$b204af158042fbac)(element); if (loadListener) documentObject.removeEventListener("DOMContentLoaded", loadListener); if (!$507fabe10e71c6fb$export$d90243b58daecda7.has(windowObject)) return; windowObject.HTMLElement.prototype.focus = $507fabe10e71c6fb$export$d90243b58daecda7.get(windowObject).focus; documentObject.removeEventListener("keydown", $507fabe10e71c6fb$var$handleKeyboardEvent, true); documentObject.removeEventListener("keyup", $507fabe10e71c6fb$var$handleKeyboardEvent, true); documentObject.removeEventListener("click", $507fabe10e71c6fb$var$handleClickEvent, true); windowObject.removeEventListener("focus", $507fabe10e71c6fb$var$handleFocusEvent, true); windowObject.removeEventListener("blur", $507fabe10e71c6fb$var$handleWindowBlur, false); if (typeof PointerEvent !== "undefined") { documentObject.removeEventListener("pointerdown", $507fabe10e71c6fb$var$handlePointerEvent, true); documentObject.removeEventListener("pointermove", $507fabe10e71c6fb$var$handlePointerEvent, true); documentObject.removeEventListener("pointerup", $507fabe10e71c6fb$var$handlePointerEvent, true); } else { documentObject.removeEventListener("mousedown", $507fabe10e71c6fb$var$handlePointerEvent, true); documentObject.removeEventListener("mousemove", $507fabe10e71c6fb$var$handlePointerEvent, true); documentObject.removeEventListener("mouseup", $507fabe10e71c6fb$var$handlePointerEvent, true); } $507fabe10e71c6fb$export$d90243b58daecda7.delete(windowObject); }; function $507fabe10e71c6fb$export$2f1888112f558a7d(element) { const documentObject = (0, $431fbd86ca7dc216$export$b204af158042fbac)(element); let loadListener; if (documentObject.readyState !== "loading") $507fabe10e71c6fb$var$setupGlobalFocusEvents(element); else { loadListener = () => { $507fabe10e71c6fb$var$setupGlobalFocusEvents(element); }; documentObject.addEventListener("DOMContentLoaded", loadListener); } return () => $507fabe10e71c6fb$var$tearDownWindowFocusTracking(element, loadListener); } if (typeof document !== "undefined") $507fabe10e71c6fb$export$2f1888112f558a7d(); function $507fabe10e71c6fb$export$b9b3dfddab17db27() { return $507fabe10e71c6fb$var$currentModality !== "pointer"; } var $507fabe10e71c6fb$var$nonTextInputTypes = /* @__PURE__ */ new Set([ "checkbox", "radio", "range", "color", "file", "image", "button", "submit", "reset" ]); function $507fabe10e71c6fb$var$isKeyboardFocusEvent(isTextInput, modality, e2) { var _e_target; const IHTMLInputElement = typeof window !== "undefined" ? (0, $431fbd86ca7dc216$export$f21a1ffae260145a)(e2 === null || e2 === void 0 ? void 0 : e2.target).HTMLInputElement : HTMLInputElement; const IHTMLTextAreaElement = typeof window !== "undefined" ? (0, $431fbd86ca7dc216$export$f21a1ffae260145a)(e2 === null || e2 === void 0 ? void 0 : e2.target).HTMLTextAreaElement : HTMLTextAreaElement; const IHTMLElement = typeof window !== "undefined" ? (0, $431fbd86ca7dc216$export$f21a1ffae260145a)(e2 === null || e2 === void 0 ? void 0 : e2.target).HTMLElement : HTMLElement; const IKeyboardEvent = typeof window !== "undefined" ? (0, $431fbd86ca7dc216$export$f21a1ffae260145a)(e2 === null || e2 === void 0 ? void 0 : e2.target).KeyboardEvent : KeyboardEvent; isTextInput = isTextInput || (e2 === null || e2 === void 0 ? void 0 : e2.target) instanceof IHTMLInputElement && !$507fabe10e71c6fb$var$nonTextInputTypes.has(e2 === null || e2 === void 0 ? void 0 : (_e_target = e2.target) === null || _e_target === void 0 ? void 0 : _e_target.type) || (e2 === null || e2 === void 0 ? void 0 : e2.target) instanceof IHTMLTextAreaElement || (e2 === null || e2 === void 0 ? void 0 : e2.target) instanceof IHTMLElement && (e2 === null || e2 === void 0 ? void 0 : e2.target.isContentEditable); return !(isTextInput && modality === "keyboard" && e2 instanceof IKeyboardEvent && !$507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS[e2.key]); } function $507fabe10e71c6fb$export$ec71b4b83ac08ec3(fn, deps, opts) { $507fabe10e71c6fb$var$setupGlobalFocusEvents(); (0, $28AnR$useEffect)(() => { let handler = (modality, e2) => { if (!$507fabe10e71c6fb$var$isKeyboardFocusEvent(!!(opts === null || opts === void 0 ? void 0 : opts.isTextInput), modality, e2)) return; fn($507fabe10e71c6fb$export$b9b3dfddab17db27()); }; $507fabe10e71c6fb$var$changeHandlers.add(handler); return () => { $507fabe10e71c6fb$var$changeHandlers.delete(handler); }; }, deps); } // node_modules/@react-aria/interactions/dist/useFocusWithin.mjs import { useRef as $3b9Q0$useRef, useCallback as $3b9Q0$useCallback } from "react"; function $9ab94262bd0047c7$export$420e68273165f4ec(props) { let { isDisabled, onBlurWithin, onFocusWithin, onFocusWithinChange } = props; let state = (0, $3b9Q0$useRef)({ isFocusWithin: false }); let onBlur = (0, $3b9Q0$useCallback)((e2) => { if (state.current.isFocusWithin && !e2.currentTarget.contains(e2.relatedTarget)) { state.current.isFocusWithin = false; if (onBlurWithin) onBlurWithin(e2); if (onFocusWithinChange) onFocusWithinChange(false); } }, [ onBlurWithin, onFocusWithinChange, state ]); let onSyntheticFocus = (0, $8a9cb279dc87e130$export$715c682d09d639cc)(onBlur); let onFocus = (0, $3b9Q0$useCallback)((e2) => { if (!state.current.isFocusWithin && document.activeElement === e2.target) { if (onFocusWithin) onFocusWithin(e2); if (onFocusWithinChange) onFocusWithinChange(true); state.current.isFocusWithin = true; onSyntheticFocus(e2); } }, [ onFocusWithin, onFocusWithinChange, onSyntheticFocus ]); if (isDisabled) return { focusWithinProps: { // These should not have been null, that would conflict in mergeProps onFocus: void 0, onBlur: void 0 } }; return { focusWithinProps: { onFocus, onBlur } }; } // node_modules/@react-aria/focus/dist/useFocusRing.mjs import { useRef as $isWE5$useRef, useState as $isWE5$useState, useCallback as $isWE5$useCallback } from "react"; function $f7dceffc5ad7768b$export$4e328f61c538687f(props = {}) { let { autoFocus = false, isTextInput, within } = props; let state = (0, $isWE5$useRef)({ isFocused: false, isFocusVisible: autoFocus || (0, $507fabe10e71c6fb$export$b9b3dfddab17db27)() }); let [isFocused, setFocused] = (0, $isWE5$useState)(false); let [isFocusVisibleState, setFocusVisible] = (0, $isWE5$useState)(() => state.current.isFocused && state.current.isFocusVisible); let updateState = (0, $isWE5$useCallback)(() => setFocusVisible(state.current.isFocused && state.current.isFocusVisible), []); let onFocusChange = (0, $isWE5$useCallback)((isFocused2) => { state.current.isFocused = isFocused2; setFocused(isFocused2); updateState(); }, [ updateState ]); (0, $507fabe10e71c6fb$export$ec71b4b83ac08ec3)((isFocusVisible) => { state.current.isFocusVisible = isFocusVisible; updateState(); }, [], { isTextInput }); let { focusProps } = (0, $a1ea59d68270f0dd$export$f8168d8dd8fd66e6)({ isDisabled: within, onFocusChange }); let { focusWithinProps } = (0, $9ab94262bd0047c7$export$420e68273165f4ec)({ isDisabled: !within, onFocusWithinChange: onFocusChange }); return { isFocused, isFocusVisible: isFocusVisibleState, focusProps: within ? focusWithinProps : focusProps }; } // node_modules/@headlessui/react/dist/utils/env.js var i = Object.defineProperty; var d = (t4, e2, n2) => e2 in t4 ? i(t4, e2, { enumerable: true, configurable: true, writable: true, value: n2 }) : t4[e2] = n2; var r = (t4, e2, n2) => (d(t4, typeof e2 != "symbol" ? e2 + "" : e2, n2), n2); var o = class { constructor() { r(this, "current", this.detect()); r(this, "handoffState", "pending"); r(this, "currentId", 0); } set(e2) { this.current !== e2 && (this.handoffState = "pending", this.currentId = 0, this.current = e2); } reset() { this.set(this.detect()); } nextId() { return ++this.currentId; } get isServer() { return this.current === "server"; } get isClient() { return this.current === "client"; } detect() { return typeof window == "undefined" || typeof document == "undefined" ? "server" : "client"; } handoff() { this.handoffState === "pending" && (this.handoffState = "complete"); } get isHandoffComplete() { return this.handoffState === "complete"; } }; var s = new o(); // node_modules/@headlessui/react/dist/utils/owner.js function u(r3) { return s.isServer ? null : r3 instanceof Node ? r3.ownerDocument : r3 != null && r3.hasOwnProperty("current") && r3.current instanceof Node ? r3.current.ownerDocument : document; } // node_modules/@headlessui/react/dist/utils/micro-task.js function t(e2) { typeof queueMicrotask == "function" ? queueMicrotask(e2) : Promise.resolve().then(e2).catch((o6) => setTimeout(() => { throw o6; })); } // node_modules/@headlessui/react/dist/utils/disposables.js function o2() { let n2 = [], r3 = { addEventListener(e2, t4, s4, a4) { return e2.addEventListener(t4, s4, a4), r3.add(() => e2.removeEventListener(t4, s4, a4)); }, requestAnimationFrame(...e2) { let t4 = requestAnimationFrame(...e2); return r3.add(() => cancelAnimationFrame(t4)); }, nextFrame(...e2) { return r3.requestAnimationFrame(() => r3.requestAnimationFrame(...e2)); }, setTimeout(...e2) { let t4 = setTimeout(...e2); return r3.add(() => clearTimeout(t4)); }, microTask(...e2) { let t4 = { current: true }; return t(() => { t4.current && e2[0](); }), r3.add(() => { t4.current = false; }); }, style(e2, t4, s4) { let a4 = e2.style.getPropertyValue(t4); return Object.assign(e2.style, { [t4]: s4 }), this.add(() => { Object.assign(e2.style, { [t4]: a4 }); }); }, group(e2) { let t4 = o2(); return e2(t4), this.add(() => t4.dispose()); }, add(e2) { return n2.includes(e2) || n2.push(e2), () => { let t4 = n2.indexOf(e2); if (t4 >= 0) for (let s4 of n2.splice(t4, 1)) s4(); }; }, dispose() { for (let e2 of n2.splice(0)) e2(); } }; return r3; } // node_modules/@headlessui/react/dist/hooks/use-disposables.js import { useEffect as s2, useState as o3 } from "react"; function p() { let [e2] = o3(o2); return s2(() => () => e2.dispose(), [e2]), e2; } // node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js import { useEffect as f, useLayoutEffect as c } from "react"; var n = (e2, t4) => { s.isServer ? f(e2, t4) : c(e2, t4); }; // node_modules/@headlessui/react/dist/hooks/use-latest-value.js import { useRef as t2 } from "react"; function s3(e2) { let r3 = t2(e2); return n(() => { r3.current = e2; }, [e2]), r3; } // node_modules/@headlessui/react/dist/hooks/use-event.js import a from "react"; var o4 = function(t4) { let e2 = s3(t4); return a.useCallback((...r3) => e2.current(...r3), [e2]); }; // node_modules/@headlessui/react/dist/hooks/use-active-press.js import { useRef as a2, useState as m } from "react"; function E(e2) { let t4 = e2.width / 2, n2 = e2.height / 2; return { top: e2.clientY - n2, right: e2.clientX + t4, bottom: e2.clientY + n2, left: e2.clientX - t4 }; } function P(e2, t4) { return !(!e2 || !t4 || e2.right < t4.left || e2.left > t4.right || e2.bottom < t4.top || e2.top > t4.bottom); } function w({ disabled: e2 = false } = {}) { let t4 = a2(null), [n2, l2] = m(false), r3 = p(), o6 = o4(() => { t4.current = null, l2(false), r3.dispose(); }), f2 = o4((s4) => { if (r3.dispose(), t4.current === null) { t4.current = s4.currentTarget, l2(true); { let i3 = u(s4.currentTarget); r3.addEventListener(i3, "pointerup", o6, false), r3.addEventListener(i3, "pointermove", (c2) => { if (t4.current) { let p2 = E(c2); l2(P(p2, t4.current.getBoundingClientRect())); } }, false), r3.addEventListener(i3, "pointercancel", o6, false); } } }); return { pressed: n2, pressProps: e2 ? {} : { onPointerDown: f2, onPointerUp: o6, onClick: o6 } }; } // node_modules/@headlessui/react/dist/utils/match.js function u2(r3, n2, ...a4) { if (r3 in n2) { let e2 = n2[r3]; return typeof e2 == "function" ? e2(...a4) : e2; } let t4 = new Error(`Tried to handle "${r3}" but there is no handler defined. Only defined handlers are: ${Object.keys(n2).map((e2) => `"${e2}"`).join(", ")}.`); throw Error.captureStackTrace && Error.captureStackTrace(t4, u2), t4; } // node_modules/@headlessui/react/dist/utils/render.js import E2, { Fragment as b, cloneElement as j, createElement as v, forwardRef as S, isValidElement as w2, useCallback as x, useRef as k } from "react"; // node_modules/@headlessui/react/dist/utils/class-names.js function t3(...r3) { return Array.from(new Set(r3.flatMap((n2) => typeof n2 == "string" ? n2.split(" ") : []))).filter(Boolean).join(" "); } // node_modules/@headlessui/react/dist/utils/render.js var O = ((a4) => (a4[a4.None = 0] = "None", a4[a4.RenderStrategy = 1] = "RenderStrategy", a4[a4.Static = 2] = "Static", a4))(O || {}); var A = ((e2) => (e2[e2.Unmount = 0] = "Unmount", e2[e2.Hidden = 1] = "Hidden", e2))(A || {}); function L() { let n2 = U(); return x((r3) => C({ mergeRefs: n2, ...r3 }), [n2]); } function C({ ourProps: n2, theirProps: r3, slot: e2, defaultTag: a4, features: s4, visible: t4 = true, name: l2, mergeRefs: i3 }) { i3 = i3 != null ? i3 : $; let o6 = P2(r3, n2); if (t4) return F(o6, e2, a4, l2, i3); let y2 = s4 != null ? s4 : 0; if (y2 & 2) { let { static: f2 = false, ...u4 } = o6; if (f2) return F(u4, e2, a4, l2, i3); } if (y2 & 1) { let { unmount: f2 = true, ...u4 } = o6; return u2(f2 ? 0 : 1, { [0]() { return null; }, [1]() { return F({ ...u4, hidden: true, style: { display: "none" } }, e2, a4, l2, i3); } }); } return F(o6, e2, a4, l2, i3); } function F(n2, r3 = {}, e2, a4, s4) { let { as: t4 = e2, children: l2, refName: i3 = "ref", ...o6 } = h(n2, ["unmount", "static"]), y2 = n2.ref !== void 0 ? { [i3]: n2.ref } : {}, f2 = typeof l2 == "function" ? l2(r3) : l2; "className" in o6 && o6.className && typeof o6.className == "function" && (o6.className = o6.className(r3)), o6["aria-labelledby"] && o6["aria-labelledby"] === o6.id && (o6["aria-labelledby"] = void 0); let u4 = {}; if (r3) { let d2 = false, p2 = []; for (let [c2, T2] of Object.entries(r3)) typeof T2 == "boolean" && (d2 = true), T2 === true && p2.push(c2.replace(/([A-Z])/g, (g) => `-${g.toLowerCase()}`)); if (d2) { u4["data-headlessui-state"] = p2.join(" "); for (let c2 of p2) u4[`data-${c2}`] = ""; } } if (t4 === b && (Object.keys(m2(o6)).length > 0 || Object.keys(m2(u4)).length > 0)) if (!w2(f2) || Array.isArray(f2) && f2.length > 1) { if (Object.keys(m2(o6)).length > 0) throw new Error(['Passing props on "Fragment"!', "", `The current component <${a4} /> is rendering a "Fragment".`, "However we need to passthrough the following props:", Object.keys(m2(o6)).concat(Object.keys(m2(u4))).map((d2) => ` - ${d2}`).join(` `), "", "You can apply a few solutions:", ['Add an `as="..."` prop, to ensure that we render an actual element instead of a "Fragment".', "Render a single element as the child so that we can forward the props onto that element."].map((d2) => ` - ${d2}`).join(` `)].join(` `)); } else { let d2 = f2.props, p2 = d2 == null ? void 0 : d2.className, c2 = typeof p2 == "function" ? (...R) => t3(p2(...R), o6.className) : t3(p2, o6.className), T2 = c2 ? { className: c2 } : {}, g = P2(f2.props, m2(h(o6, ["ref"]))); for (let R in u4) R in g && delete u4[R]; return j(f2, Object.assign({}, g, u4, y2, { ref: s4(H(f2), y2.ref) }, T2)); } return v(t4, Object.assign({}, h(o6, ["ref"]), t4 !== b && y2, t4 !== b && u4), f2); } function U() { let n2 = k([]), r3 = x((e2) => { for (let a4 of n2.current) a4 != null && (typeof a4 == "function" ? a4(e2) : a4.current = e2); }, []); return (...e2) => { if (!e2.every((a4) => a4 == null)) return n2.current = e2, r3; }; } function $(...n2) { return n2.every((r3) => r3 == null) ? void 0 : (r3) => { for (let e2 of n2) e2 != null && (typeof e2 == "function" ? e2(r3) : e2.current = r3); }; } function P2(...n2) { var a4; if (n2.length === 0) return {}; if (n2.length === 1) return n2[0]; let r3 = {}, e2 = {}; for (let s4 of n2) for (let t4 in s4) t4.startsWith("on") && typeof s4[t4] == "function" ? ((a4 = e2[t4]) != null || (e2[t4] = []), e2[t4].push(s4[t4])) : r3[t4] = s4[t4]; if (r3.disabled || r3["aria-disabled"]) for (let s4 in e2) /^(on(?:Click|Pointer|Mouse|Key)(?:Down|Up|Press)?)$/.test(s4) && (e2[s4] = [(t4) => { var l2; return (l2 = t4 == null ? void 0 : t4.preventDefault) == null ? void 0 : l2.call(t4); }]); for (let s4 in e2) Object.assign(r3, { [s4](t4, ...l2) { let i3 = e2[s4]; for (let o6 of i3) { if ((t4 instanceof Event || (t4 == null ? void 0 : t4.nativeEvent) instanceof Event) && t4.defaultPrevented) return; o6(t4, ...l2); } } }); return r3; } function _(...n2) { var a4; if (n2.length === 0) return {}; if (n2.length === 1) return n2[0]; let r3 = {}, e2 = {}; for (let s4 of n2) for (let t4 in s4) t4.startsWith("on") && typeof s4[t4] == "function" ? ((a4 = e2[t4]) != null || (e2[t4] = []), e2[t4].push(s4[t4])) : r3[t4] = s4[t4]; for (let s4 in e2) Object.assign(r3, { [s4](...t4) { let l2 = e2[s4]; for (let i3 of l2) i3 == null || i3(...t4); } }); return r3; } function K(n2) { var r3; return Object.assign(S(n2), { displayName: (r3 = n2.displayName) != null ? r3 : n2.name }); } function m2(n2) { let r3 = Object.assign({}, n2); for (let e2 in r3) r3[e2] === void 0 && delete r3[e2]; return r3; } function h(n2, r3 = []) { let e2 = Object.assign({}, n2); for (let a4 of r3) a4 in e2 && delete e2[a4]; return e2; } function H(n2) { return E2.version.split(".")[0] >= "19" ? n2.props.ref : n2.ref; } // node_modules/@headlessui/react/dist/hooks/use-id.js import { useId as r2 } from "react"; // node_modules/@headlessui/react/dist/hooks/use-sync-refs.js import { useEffect as l, useRef as i2 } from "react"; var u3 = Symbol(); function T(t4, n2 = true) { return Object.assign(t4, { [u3]: n2 }); } function y(...t4) { let n2 = i2(t4); l(() => { n2.current = t4; }, [t4]); let c2 = o4((e2) => { for (let o6 of n2.current) o6 != null && (typeof o6 == "function" ? o6(e2) : o6.current = e2); }); return t4.every((e2) => e2 == null || (e2 == null ? void 0 : e2[u3])) ? void 0 : c2; } // node_modules/@headlessui/react/dist/components/keyboard.js var o5 = ((r3) => (r3.Space = " ", r3.Enter = "Enter", r3.Escape = "Escape", r3.Backspace = "Backspace", r3.Delete = "Delete", r3.ArrowLeft = "ArrowLeft", r3.ArrowUp = "ArrowUp", r3.ArrowRight = "ArrowRight", r3.ArrowDown = "ArrowDown", r3.Home = "Home", r3.End = "End", r3.PageUp = "PageUp", r3.PageDown = "PageDown", r3.Tab = "Tab", r3))(o5 || {}); // node_modules/@headlessui/react/dist/hooks/use-resolve-button-type.js import { useMemo as a3 } from "react"; function e(t4, u4) { return a3(() => { var n2; if (t4.type) return t4.type; let r3 = (n2 = t4.as) != null ? n2 : "button"; if (typeof r3 == "string" && r3.toLowerCase() === "button" || (u4 == null ? void 0 : u4.tagName) === "BUTTON" && !u4.hasAttribute("type")) return "button"; }, [t4.type, t4.as, u4]); } export { $6179b936705e76d3$export$ae780daf29e6d456, $f7dceffc5ad7768b$export$4e328f61c538687f, s, u, t, o2 as o, p, n, s3 as s2, o4 as o2, w, u2, O, L, _, K, m2 as m, r2 as r, T, y, o5 as o3, e };