{"version":3,"file":"outline.clsx-DGGQQRkM-Hz3OR4n1.js","names":["$5319z$useRef","$5319z$useCallback","$3s2y0$useRef","$3s2y0$useState","$3s2y0$useCallback","$fL2C6$useContext","$fL2C6$useState","$fL2C6$useRef","$fL2C6$useCallback","$fL2C6$useEffect","$fL2C6$useMemo","useLink","useHover","useFocusRing","filterDOMProps","mergeProps","createContext","c","use"],"sources":["../../../../../../home/runner/work/povio-com/povio-com/node_modules/.bun/react-aria@3.53.1+005eabf3d8b6ef06/node_modules/react-aria/dist/private/interactions/useFocusWithin.mjs","../../../../../../home/runner/work/povio-com/povio-com/node_modules/.bun/react-aria@3.53.1+005eabf3d8b6ef06/node_modules/react-aria/dist/private/focus/useFocusRing.mjs","../../../../../../home/runner/work/povio-com/povio-com/node_modules/.bun/react-aria@3.53.1+005eabf3d8b6ef06/node_modules/react-aria/dist/private/interactions/textSelection.mjs","../../../../../../home/runner/work/povio-com/povio-com/node_modules/.bun/react-aria@3.53.1+005eabf3d8b6ef06/node_modules/react-aria/dist/private/utils/getMetaValue.mjs","../../../../../../home/runner/work/povio-com/povio-com/node_modules/.bun/react-aria@3.53.1+005eabf3d8b6ef06/node_modules/react-aria/dist/private/utils/getNonce.mjs","../../../../../../home/runner/work/povio-com/povio-com/node_modules/.bun/react-aria@3.53.1+005eabf3d8b6ef06/node_modules/react-aria/dist/private/interactions/context.mjs","../../../../../../home/runner/work/povio-com/povio-com/node_modules/.bun/react-aria@3.53.1+005eabf3d8b6ef06/node_modules/react-aria/dist/private/interactions/usePress.mjs","../../../../../../home/runner/work/povio-com/povio-com/node_modules/.bun/react-aria@3.53.1+005eabf3d8b6ef06/node_modules/react-aria/dist/private/link/useLink.mjs","../../../../../../home/runner/work/povio-com/povio-com/node_modules/.bun/@povio+ui@6.0.0-rc.2+996f866cfe969285/node_modules/@povio/ui/dist/Link-Chux-Clm.js","../../../../../../home/runner/work/povio-com/povio-com/node_modules/.bun/@povio+ui@6.0.0-rc.2+996f866cfe969285/node_modules/@povio/ui/dist/link.context-J7aQtMOr.js","../../../../../../home/runner/work/povio-com/povio-com/node_modules/.bun/@povio+ui@6.0.0-rc.2+996f866cfe969285/node_modules/@povio/ui/dist/outline.clsx-DGGQQRkM.js"],"sourcesContent":["import {createSyntheticEvent as $a92dc41f639950be$export$525bc4921d56d4a, setEventTarget as $a92dc41f639950be$export$c2b7abe5d61ec696, useSyntheticBlurEvent as $a92dc41f639950be$export$715c682d09d639cc} from \"./utils.mjs\";\nimport {getActiveElement as $23f2114a1b82827e$export$cd4e5573fbe2b576, getEventTarget as $23f2114a1b82827e$export$e58f029f0fbfdb29, nodeContains as $23f2114a1b82827e$export$4282f70798064fe0} from \"../utils/shadowdom/DOMFunctions.mjs\";\nimport {getOwnerDocument as $d447af545b77c9f1$export$b204af158042fbac} from \"../utils/domHelpers.mjs\";\nimport {useGlobalListeners as $48a7d519b337145d$export$4eaf04e54aa8eed6} from \"../utils/useGlobalListeners.mjs\";\nimport {useRef as $5319z$useRef, useCallback as $5319z$useCallback} from \"react\";\n\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 */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n\n\n\nfunction $2c9edc598a03d523$export$420e68273165f4ec(props) {\n    let { isDisabled: isDisabled, onBlurWithin: onBlurWithin, onFocusWithin: onFocusWithin, onFocusWithinChange: onFocusWithinChange } = props;\n    let state = (0, $5319z$useRef)({\n        isFocusWithin: false\n    });\n    let { addGlobalListener: addGlobalListener, removeAllGlobalListeners: removeAllGlobalListeners } = (0, $48a7d519b337145d$export$4eaf04e54aa8eed6)();\n    let onBlur = (0, $5319z$useCallback)((e)=>{\n        // Ignore events bubbling through portals.\n        if (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\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 && !(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, e.relatedTarget)) {\n            state.current.isFocusWithin = false;\n            removeAllGlobalListeners();\n            if (onBlurWithin) onBlurWithin(e);\n            if (onFocusWithinChange) onFocusWithinChange(false);\n        }\n    }, [\n        onBlurWithin,\n        onFocusWithinChange,\n        state,\n        removeAllGlobalListeners\n    ]);\n    let onSyntheticFocus = (0, $a92dc41f639950be$export$715c682d09d639cc)(onBlur);\n    let onFocus = (0, $5319z$useCallback)((e)=>{\n        // Ignore events bubbling through portals.\n        if (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n        // Double check that document.activeElement actually matches e.target in case a previously chained\n        // focus handler already moved focus somewhere else.\n        let eventTarget = (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e);\n        const ownerDocument = (0, $d447af545b77c9f1$export$b204af158042fbac)(eventTarget);\n        const activeElement = (0, $23f2114a1b82827e$export$cd4e5573fbe2b576)(ownerDocument);\n        if (!state.current.isFocusWithin && activeElement === eventTarget) {\n            if (onFocusWithin) onFocusWithin(e);\n            if (onFocusWithinChange) onFocusWithinChange(true);\n            state.current.isFocusWithin = true;\n            onSyntheticFocus(e);\n            // Browsers don't fire blur events when elements are removed from the DOM.\n            // However, if a focus event occurs outside the element we're tracking, we\n            // can manually fire onBlur.\n            let currentTarget = e.currentTarget;\n            addGlobalListener(ownerDocument, 'focus', (e)=>{\n                let eventTarget = (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e);\n                if (state.current.isFocusWithin && !(0, $23f2114a1b82827e$export$4282f70798064fe0)(currentTarget, eventTarget)) {\n                    let nativeEvent = new ownerDocument.defaultView.FocusEvent('blur', {\n                        relatedTarget: eventTarget\n                    });\n                    (0, $a92dc41f639950be$export$c2b7abe5d61ec696)(nativeEvent, currentTarget);\n                    let event = (0, $a92dc41f639950be$export$525bc4921d56d4a)(nativeEvent);\n                    onBlur(event);\n                }\n            }, {\n                capture: true\n            });\n        }\n    }, [\n        onFocusWithin,\n        onFocusWithinChange,\n        onSyntheticFocus,\n        addGlobalListener,\n        onBlur\n    ]);\n    if (isDisabled) return {\n        focusWithinProps: {\n            // These cannot be null, that would conflict in mergeProps\n            onFocus: undefined,\n            onBlur: undefined\n        }\n    };\n    return {\n        focusWithinProps: {\n            onFocus: onFocus,\n            onBlur: onBlur\n        }\n    };\n}\n\n\nexport {$2c9edc598a03d523$export$420e68273165f4ec as useFocusWithin};\n//# sourceMappingURL=useFocusWithin.mjs.map\n","import {isFocusVisible as $8f5a2122b0992be3$export$b9b3dfddab17db27, useFocusVisibleListener as $8f5a2122b0992be3$export$ec71b4b83ac08ec3} from \"../interactions/useFocusVisible.mjs\";\nimport {useFocus as $1e74c67db218ce67$export$f8168d8dd8fd66e6} from \"../interactions/useFocus.mjs\";\nimport {useFocusWithin as $2c9edc598a03d523$export$420e68273165f4ec} from \"../interactions/useFocusWithin.mjs\";\nimport {useRef as $3s2y0$useRef, useState as $3s2y0$useState, useCallback as $3s2y0$useCallback} from \"react\";\n\n\n\n\n\nfunction $0c4a58759813079a$export$4e328f61c538687f(props = {}) {\n    let { autoFocus: autoFocus = false, isTextInput: isTextInput, within: within } = props;\n    let state = (0, $3s2y0$useRef)({\n        isFocused: false,\n        isFocusVisible: autoFocus || (0, $8f5a2122b0992be3$export$b9b3dfddab17db27)()\n    });\n    let [isFocused, setFocused] = (0, $3s2y0$useState)(false);\n    let [isFocusVisibleState, setFocusVisible] = (0, $3s2y0$useState)(// oxlint-disable-next-line react/react-compiler\n    ()=>state.current.isFocused && state.current.isFocusVisible);\n    let updateState = (0, $3s2y0$useCallback)(()=>setFocusVisible(state.current.isFocused && state.current.isFocusVisible), []);\n    let onFocusChange = (0, $3s2y0$useCallback)((isFocused)=>{\n        state.current.isFocused = isFocused;\n        state.current.isFocusVisible = (0, $8f5a2122b0992be3$export$b9b3dfddab17db27)();\n        setFocused(isFocused);\n        updateState();\n    }, [\n        updateState\n    ]);\n    (0, $8f5a2122b0992be3$export$ec71b4b83ac08ec3)((isFocusVisible)=>{\n        state.current.isFocusVisible = isFocusVisible;\n        updateState();\n    }, [\n        isTextInput,\n        isFocused\n    ], {\n        enabled: isFocused,\n        isTextInput: isTextInput\n    });\n    let { focusProps: focusProps } = (0, $1e74c67db218ce67$export$f8168d8dd8fd66e6)({\n        isDisabled: within,\n        onFocusChange: onFocusChange\n    });\n    let { focusWithinProps: focusWithinProps } = (0, $2c9edc598a03d523$export$420e68273165f4ec)({\n        isDisabled: !within,\n        onFocusWithinChange: onFocusChange\n    });\n    return {\n        isFocused: isFocused,\n        isFocusVisible: isFocusVisibleState,\n        focusProps: within ? focusWithinProps : focusProps\n    };\n}\n\n\nexport {$0c4a58759813079a$export$4e328f61c538687f as useFocusRing};\n//# sourceMappingURL=useFocusRing.mjs.map\n","import {getOwnerDocument as $d447af545b77c9f1$export$b204af158042fbac} from \"../utils/domHelpers.mjs\";\nimport {isIOS as $2add3ce32c6007eb$export$fedb369cb70207f1, isWebKit as $2add3ce32c6007eb$export$78551043582a6a98} from \"../utils/platform.mjs\";\nimport {runAfterTransition as $081cb5757e08788e$export$24490316f764c430} from \"../utils/runAfterTransition.mjs\";\n\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 */ \n\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 $cbf007e418543821$var$state = 'default';\nlet $cbf007e418543821$var$savedUserSelect = '';\nlet $cbf007e418543821$var$modifiedElementMap = new WeakMap();\nfunction $cbf007e418543821$export$16a4697467175487(target) {\n    if ((0, $2add3ce32c6007eb$export$fedb369cb70207f1)() && (0, $2add3ce32c6007eb$export$78551043582a6a98)()) {\n        if ($cbf007e418543821$var$state === 'default') {\n            const documentObject = (0, $d447af545b77c9f1$export$b204af158042fbac)(target);\n            $cbf007e418543821$var$savedUserSelect = documentObject.documentElement.style.webkitUserSelect;\n            documentObject.documentElement.style.webkitUserSelect = 'none';\n        }\n        $cbf007e418543821$var$state = 'disabled';\n    } else if (target instanceof HTMLElement || target instanceof SVGElement) {\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        let property = 'userSelect' in target.style ? 'userSelect' : 'webkitUserSelect';\n        $cbf007e418543821$var$modifiedElementMap.set(target, target.style[property]);\n        target.style[property] = 'none';\n    }\n}\nfunction $cbf007e418543821$export$b0d6fa1ab32e3295(target) {\n    if ((0, $2add3ce32c6007eb$export$fedb369cb70207f1)() && (0, $2add3ce32c6007eb$export$78551043582a6a98)()) {\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 ($cbf007e418543821$var$state !== 'disabled') return;\n        $cbf007e418543821$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            (0, $081cb5757e08788e$export$24490316f764c430)(()=>{\n                // Avoid race conditions\n                if ($cbf007e418543821$var$state === 'restoring') {\n                    const documentObject = (0, $d447af545b77c9f1$export$b204af158042fbac)(target);\n                    if (documentObject.documentElement.style.webkitUserSelect === 'none') documentObject.documentElement.style.webkitUserSelect = $cbf007e418543821$var$savedUserSelect || '';\n                    $cbf007e418543821$var$savedUserSelect = '';\n                    $cbf007e418543821$var$state = 'default';\n                }\n            });\n        }, 300);\n    } else if (target instanceof HTMLElement || target instanceof SVGElement) // If not iOS, restore the target's original user-select if any\n    // Ignore state since it doesn't apply for non iOS\n    {\n        if (target && $cbf007e418543821$var$modifiedElementMap.has(target)) {\n            let targetOldUserSelect = $cbf007e418543821$var$modifiedElementMap.get(target);\n            let property = 'userSelect' in target.style ? 'userSelect' : 'webkitUserSelect';\n            if (target.style[property] === 'none') target.style[property] = targetOldUserSelect;\n            if (target.getAttribute('style') === '') target.removeAttribute('style');\n            $cbf007e418543821$var$modifiedElementMap.delete(target);\n        }\n    }\n}\n\n\nexport {$cbf007e418543821$export$16a4697467175487 as disableTextSelection, $cbf007e418543821$export$b0d6fa1ab32e3295 as restoreTextSelection};\n//# sourceMappingURL=textSelection.mjs.map\n","import {getOwnerDocument as $d447af545b77c9f1$export$b204af158042fbac, getOwnerWindow as $d447af545b77c9f1$export$f21a1ffae260145a} from \"./domHelpers.mjs\";\n\n/*\n * Copyright 2026 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 */ \nfunction $7096878c21af5e66$export$a929f3f93e2cc67e(key, doc) {\n    let ownerWindow = (0, $d447af545b77c9f1$export$f21a1ffae260145a)(doc);\n    let ownerDocument = (0, $d447af545b77c9f1$export$b204af158042fbac)(doc);\n    if (ownerDocument == null || ownerWindow == null) return;\n    let content = undefined;\n    let selector = `meta[name=\"${CSS.escape(key)}\"], meta[property=\"${CSS.escape(key)}\"]`;\n    let meta = ownerDocument.querySelector(selector);\n    if (meta && meta instanceof ownerWindow.HTMLMetaElement) {\n        if (key === 'csp-nonce' && meta.nonce) content ??= meta.nonce || undefined;\n        if (meta.content) content ??= meta.content || undefined;\n    }\n    if (key === 'csp-nonce') content ??= ownerWindow.__webpack_nonce__ || globalThis.__webpack_nonce__ || undefined;\n    return content;\n}\n\n\nexport {$7096878c21af5e66$export$a929f3f93e2cc67e as getMetaValue};\n//# sourceMappingURL=getMetaValue.mjs.map\n","import {getMetaValue as $7096878c21af5e66$export$a929f3f93e2cc67e} from \"./getMetaValue.mjs\";\nimport {getOwnerDocument as $d447af545b77c9f1$export$b204af158042fbac} from \"./domHelpers.mjs\";\n\n/*\n * Copyright 2026 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 */ \n\nlet $2b2d34ff061957fb$var$nonceCache = new WeakMap();\nfunction $2b2d34ff061957fb$export$88b319273f3705b4() {\n    $2b2d34ff061957fb$var$nonceCache = new WeakMap();\n}\nfunction $2b2d34ff061957fb$export$2b85b721e524d74b(doc) {\n    let ownerDocument = (0, $d447af545b77c9f1$export$b204af158042fbac)(doc);\n    let nonce = $2b2d34ff061957fb$var$nonceCache.get(ownerDocument);\n    nonce ??= (0, $7096878c21af5e66$export$a929f3f93e2cc67e)('csp-nonce', ownerDocument);\n    if (nonce !== undefined) $2b2d34ff061957fb$var$nonceCache.set(ownerDocument, nonce);\n    return nonce;\n}\n\n\nexport {$2b2d34ff061957fb$export$88b319273f3705b4 as resetNonceCache, $2b2d34ff061957fb$export$2b85b721e524d74b as getNonce};\n//# sourceMappingURL=getNonce.mjs.map\n","import $kV9Vy$react from \"react\";\n\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 */ \nconst $24f9a20f226ad820$export$5165eccb35aaadb5 = (0, $kV9Vy$react).createContext({\n    register: ()=>{}\n});\n$24f9a20f226ad820$export$5165eccb35aaadb5.displayName = 'PressResponderContext';\n\n\nexport {$24f9a20f226ad820$export$5165eccb35aaadb5 as PressResponderContext};\n//# sourceMappingURL=context.mjs.map\n","import {chain as $a4e76a5424781910$export$e08e3b67e392101e} from \"../utils/chain.mjs\";\nimport {createSyntheticEvent as $a92dc41f639950be$export$525bc4921d56d4a, preventFocus as $a92dc41f639950be$export$cabe61c495ee3649, setEventTarget as $a92dc41f639950be$export$c2b7abe5d61ec696} from \"./utils.mjs\";\nimport {disableTextSelection as $cbf007e418543821$export$16a4697467175487, restoreTextSelection as $cbf007e418543821$export$b0d6fa1ab32e3295} from \"./textSelection.mjs\";\nimport {focusWithoutScrolling as $1969ac565cfec8d0$export$de79e2c695e052f3} from \"../utils/focusWithoutScrolling.mjs\";\nimport {getEventTarget as $23f2114a1b82827e$export$e58f029f0fbfdb29, nodeContains as $23f2114a1b82827e$export$4282f70798064fe0} from \"../utils/shadowdom/DOMFunctions.mjs\";\nimport {getNonce as $2b2d34ff061957fb$export$2b85b721e524d74b} from \"../utils/getNonce.mjs\";\nimport {getOwnerDocument as $d447af545b77c9f1$export$b204af158042fbac, getOwnerWindow as $d447af545b77c9f1$export$f21a1ffae260145a} from \"../utils/domHelpers.mjs\";\nimport {isMac as $2add3ce32c6007eb$export$9ac100e40613ea10} from \"../utils/platform.mjs\";\nimport {isVirtualClick as $b5c62b033c25b96d$export$60278871457622de, isVirtualPointerEvent as $b5c62b033c25b96d$export$29bf1b5f2c56cf63} from \"../utils/isVirtualEvent.mjs\";\nimport {mergeProps as $bbaa08b3cd72f041$export$9d1611c77c2fe928} from \"../utils/mergeProps.mjs\";\nimport {openLink as $caaf0dd3060ed57c$export$95185d699e05d4d7} from \"../utils/openLink.mjs\";\nimport {PressResponderContext as $24f9a20f226ad820$export$5165eccb35aaadb5} from \"./context.mjs\";\nimport {useEffectEvent as $fe16bffc7a557bf0$export$7f54fc3180508a52} from \"../utils/useEffectEvent.mjs\";\nimport {useGlobalListeners as $48a7d519b337145d$export$4eaf04e54aa8eed6} from \"../utils/useGlobalListeners.mjs\";\nimport {useSyncRef as $b7115c395c64f7b5$export$4debdb1a3f0fa79e} from \"../utils/useSyncRef.mjs\";\nimport {flushSync as $fL2C6$flushSync} from \"react-dom\";\nimport {useContext as $fL2C6$useContext, useState as $fL2C6$useState, useRef as $fL2C6$useRef, useCallback as $fL2C6$useCallback, useEffect as $fL2C6$useEffect, useMemo as $fL2C6$useMemo} from \"react\";\n\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 */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction $d27d541f9569d26d$var$usePressResponderContext(props) {\n    // Consume context from <PressResponder> and merge with props.\n    let context = (0, $fL2C6$useContext)((0, $24f9a20f226ad820$export$5165eccb35aaadb5));\n    if (context) {\n        // Prevent mergeProps from merging ref.\n        // eslint-disable-next-line @typescript-eslint/no-unused-vars\n        let { register: register, ref: ref, ...contextProps } = context;\n        props = (0, $bbaa08b3cd72f041$export$9d1611c77c2fe928)(contextProps, props);\n        register();\n    }\n    (0, $b7115c395c64f7b5$export$4debdb1a3f0fa79e)(context, props.ref);\n    return props;\n}\nclass $d27d541f9569d26d$var$PressEvent {\n    #shouldStopPropagation;\n    constructor(type, pointerType, originalEvent, state){\n        this.#shouldStopPropagation = true;\n        let currentTarget = state?.target ?? originalEvent.currentTarget;\n        const rect = currentTarget?.getBoundingClientRect();\n        let x, y = 0;\n        let clientX, clientY = null;\n        if (originalEvent.clientX != null && originalEvent.clientY != null) {\n            clientX = originalEvent.clientX;\n            clientY = originalEvent.clientY;\n        }\n        if (rect) {\n            if (clientX != null && clientY != null) {\n                x = clientX - rect.left;\n                y = clientY - rect.top;\n            } else {\n                x = rect.width / 2;\n                y = rect.height / 2;\n            }\n        }\n        this.type = type;\n        this.pointerType = pointerType;\n        this.target = originalEvent.currentTarget;\n        this.shiftKey = originalEvent.shiftKey;\n        this.metaKey = originalEvent.metaKey;\n        this.ctrlKey = originalEvent.ctrlKey;\n        this.altKey = originalEvent.altKey;\n        this.x = x;\n        this.y = y;\n        this.key = originalEvent.key;\n    }\n    continuePropagation() {\n        this.#shouldStopPropagation = false;\n    }\n    get shouldStopPropagation() {\n        return this.#shouldStopPropagation;\n    }\n}\nconst $d27d541f9569d26d$var$LINK_CLICKED = Symbol('linkClicked');\nconst $d27d541f9569d26d$var$STYLE_ID = 'react-aria-pressable-style';\nconst $d27d541f9569d26d$var$PRESSABLE_ATTRIBUTE = 'data-react-aria-pressable';\nfunction $d27d541f9569d26d$export$45712eceda6fad21(props) {\n    let { onPress: onPress, onPressChange: onPressChange, onPressStart: onPressStart, onPressEnd: onPressEnd, onPressUp: onPressUp, onClick: onClick, isDisabled: isDisabled, isPressed: isPressedProp, preventFocusOnPress: preventFocusOnPress, shouldCancelOnPointerExit: shouldCancelOnPointerExit, allowTextSelectionOnPress: allowTextSelectionOnPress, ref: domRef, ...domProps } = $d27d541f9569d26d$var$usePressResponderContext(props);\n    let [isPressed, setPressed] = (0, $fL2C6$useState)(false);\n    let ref = (0, $fL2C6$useRef)({\n        isPressed: false,\n        ignoreEmulatedMouseEvents: false,\n        didFirePressStart: false,\n        isTriggeringEvent: false,\n        activePointerId: null,\n        target: null,\n        isOverTarget: false,\n        pointerType: null,\n        disposables: []\n    });\n    let { addGlobalListener: addGlobalListener, removeAllGlobalListeners: removeAllGlobalListeners } = (0, $48a7d519b337145d$export$4eaf04e54aa8eed6)();\n    let triggerPressStart = (0, $fL2C6$useCallback)((originalEvent, pointerType)=>{\n        let state = ref.current;\n        if (isDisabled || state.didFirePressStart) return false;\n        let shouldStopPropagation = true;\n        state.isTriggeringEvent = true;\n        if (onPressStart) {\n            let event = new $d27d541f9569d26d$var$PressEvent('pressstart', pointerType, originalEvent);\n            onPressStart(event);\n            shouldStopPropagation = event.shouldStopPropagation;\n        }\n        if (onPressChange) onPressChange(true);\n        state.isTriggeringEvent = false;\n        state.didFirePressStart = true;\n        setPressed(true);\n        return shouldStopPropagation;\n    }, [\n        isDisabled,\n        onPressStart,\n        onPressChange\n    ]);\n    let triggerPressEnd = (0, $fL2C6$useCallback)((originalEvent, pointerType, wasPressed = true)=>{\n        let state = ref.current;\n        if (!state.didFirePressStart) return false;\n        state.didFirePressStart = false;\n        state.isTriggeringEvent = true;\n        let shouldStopPropagation = true;\n        if (onPressEnd) {\n            let event = new $d27d541f9569d26d$var$PressEvent('pressend', pointerType, originalEvent);\n            onPressEnd(event);\n            shouldStopPropagation = event.shouldStopPropagation;\n        }\n        if (onPressChange) onPressChange(false);\n        setPressed(false);\n        if (onPress && wasPressed && !isDisabled) {\n            let event = new $d27d541f9569d26d$var$PressEvent('press', pointerType, originalEvent);\n            onPress(event);\n            shouldStopPropagation &&= event.shouldStopPropagation;\n        }\n        state.isTriggeringEvent = false;\n        return shouldStopPropagation;\n    }, [\n        isDisabled,\n        onPressEnd,\n        onPressChange,\n        onPress\n    ]);\n    let triggerPressEndEvent = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)(triggerPressEnd);\n    let triggerPressUp = (0, $fL2C6$useCallback)((originalEvent, pointerType)=>{\n        let state = ref.current;\n        if (isDisabled) return false;\n        if (onPressUp) {\n            state.isTriggeringEvent = true;\n            let event = new $d27d541f9569d26d$var$PressEvent('pressup', pointerType, originalEvent);\n            onPressUp(event);\n            state.isTriggeringEvent = false;\n            return event.shouldStopPropagation;\n        }\n        return true;\n    }, [\n        isDisabled,\n        onPressUp\n    ]);\n    let triggerPressUpEvent = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)(triggerPressUp);\n    let cancel = (0, $fL2C6$useCallback)((e)=>{\n        let state = ref.current;\n        if (state.isPressed && state.target) {\n            if (state.didFirePressStart && state.pointerType != null) triggerPressEnd($d27d541f9569d26d$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) (0, $cbf007e418543821$export$b0d6fa1ab32e3295)(state.target);\n            for (let dispose of state.disposables)dispose();\n            state.disposables = [];\n        }\n    }, [\n        allowTextSelectionOnPress,\n        removeAllGlobalListeners,\n        triggerPressEnd\n    ]);\n    let cancelEvent = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)(cancel);\n    (0, $fL2C6$useEffect)(()=>{\n        if (isDisabled && ref.current.isPressed) cancelEvent({\n            currentTarget: ref.current.target,\n            shiftKey: false,\n            ctrlKey: false,\n            metaKey: false,\n            altKey: false\n        });\n    }, [\n        isDisabled\n    ]);\n    let cancelOnPointerExit = (0, $fL2C6$useCallback)((e)=>{\n        if (shouldCancelOnPointerExit) cancel(e);\n    }, [\n        shouldCancelOnPointerExit,\n        cancel\n    ]);\n    let triggerClick = (0, $fL2C6$useCallback)((e)=>{\n        if (isDisabled) return;\n        onClick?.(e);\n    }, [\n        isDisabled,\n        onClick\n    ]);\n    let triggerSyntheticClick = (0, $fL2C6$useCallback)((e, target)=>{\n        if (isDisabled) return;\n        // Some third-party libraries pass in onClick instead of onPress.\n        // Create a fake mouse event and trigger onClick as well.\n        // This matches the browser's native activation behavior for certain elements (e.g. button).\n        // https://html.spec.whatwg.org/#activation\n        // https://html.spec.whatwg.org/#fire-a-synthetic-pointer-event\n        if (onClick) {\n            let event = new MouseEvent('click', e);\n            (0, $a92dc41f639950be$export$c2b7abe5d61ec696)(event, target);\n            onClick((0, $a92dc41f639950be$export$525bc4921d56d4a)(event));\n        }\n    }, [\n        isDisabled,\n        onClick\n    ]);\n    let pressProps = (0, $fL2C6$useMemo)(()=>{\n        let state = ref.current;\n        let pressProps = {\n            onKeyDown (e) {\n                if ($d27d541f9569d26d$var$isValidKeyboardEvent(e.nativeEvent, e.currentTarget) && (0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) {\n                    if ($d27d541f9569d26d$var$shouldPreventDefaultKeyboard((0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e), e.key)) e.preventDefault();\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                    let shouldStopPropagation = true;\n                    if (!state.isPressed && !e.repeat) {\n                        state.target = e.currentTarget;\n                        state.isPressed = true;\n                        state.pointerType = 'keyboard';\n                        shouldStopPropagation = triggerPressStart(e, 'keyboard');\n                    }\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. Make it capturing so that it will trigger\n                    // before stopPropagation from useKeyboard on a child element may happen and thus we can still call triggerPress for the parent element.\n                    let originalTarget = e.currentTarget;\n                    let pressUp = (e)=>{\n                        if ($d27d541f9569d26d$var$isValidKeyboardEvent(e, originalTarget) && !e.repeat && (0, $23f2114a1b82827e$export$4282f70798064fe0)(originalTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e)) && state.target) triggerPressUpEvent($d27d541f9569d26d$var$createEvent(state.target, e), 'keyboard');\n                    };\n                    addGlobalListener((0, $d447af545b77c9f1$export$b204af158042fbac)(e.currentTarget), 'keyup', (0, $a4e76a5424781910$export$e08e3b67e392101e)(pressUp, onKeyUp), true);\n                    if (shouldStopPropagation) e.stopPropagation();\n                    // Keep track of the keydown events that occur while the Meta (e.g. Command) key is held.\n                    // macOS has a bug where keyup events are not fired while the Meta key is down.\n                    // When the Meta key itself is released we will get an event for that, and we'll act as if\n                    // all of these other keys were released as well.\n                    // https://bugs.chromium.org/p/chromium/issues/detail?id=1393524\n                    // https://bugs.webkit.org/show_bug.cgi?id=55291\n                    // https://bugzilla.mozilla.org/show_bug.cgi?id=1299553\n                    if (e.metaKey && (0, $2add3ce32c6007eb$export$9ac100e40613ea10)()) state.metaKeyEvents?.set(e.key, e.nativeEvent);\n                } else if (e.key === 'Meta') state.metaKeyEvents = new Map();\n            },\n            onClick (e) {\n                if (e && !(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n                if (e && e.button === 0 && !state.isTriggeringEvent && !(0, $caaf0dd3060ed57c$export$95185d699e05d4d7).isOpening) {\n                    let shouldStopPropagation = true;\n                    if (isDisabled) 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.ignoreEmulatedMouseEvents && !state.isPressed && (state.pointerType === 'virtual' || (0, $b5c62b033c25b96d$export$60278871457622de)(e.nativeEvent))) {\n                        let stopPressStart = triggerPressStart(e, 'virtual');\n                        let stopPressUp = triggerPressUpEvent(e, 'virtual');\n                        let stopPressEnd = triggerPressEndEvent(e, 'virtual');\n                        triggerClick(e);\n                        shouldStopPropagation = stopPressStart && stopPressUp && stopPressEnd;\n                    } else if (state.isPressed && state.pointerType !== 'keyboard') {\n                        let pointerType = state.pointerType || e.nativeEvent.pointerType || 'virtual';\n                        let stopPressUp = triggerPressUpEvent($d27d541f9569d26d$var$createEvent(e.currentTarget, e), pointerType);\n                        let stopPressEnd = triggerPressEndEvent($d27d541f9569d26d$var$createEvent(e.currentTarget, e), pointerType, true);\n                        shouldStopPropagation = stopPressUp && stopPressEnd;\n                        state.isOverTarget = false;\n                        triggerClick(e);\n                        // oxlint-disable-next-line react/react-compiler\n                        cancelEvent(e);\n                    }\n                    state.ignoreEmulatedMouseEvents = false;\n                    if (shouldStopPropagation) e.stopPropagation();\n                }\n            }\n        };\n        let onKeyUp = (e)=>{\n            if (state.isPressed && state.target && $d27d541f9569d26d$var$isValidKeyboardEvent(e, state.target)) {\n                if ($d27d541f9569d26d$var$shouldPreventDefaultKeyboard((0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e), e.key)) e.preventDefault();\n                let target = (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e);\n                let wasPressed = (0, $23f2114a1b82827e$export$4282f70798064fe0)(state.target, target);\n                triggerPressEndEvent($d27d541f9569d26d$var$createEvent(state.target, e), 'keyboard', wasPressed);\n                if (wasPressed) triggerSyntheticClick(e, state.target);\n                removeAllGlobalListeners();\n                // If a link was triggered with a key other than Enter, open the URL ourselves.\n                // This means the link has a role override, and the default browser behavior\n                // only applies when using the Enter key.\n                if (e.key !== 'Enter' && $d27d541f9569d26d$var$isHTMLAnchorLink(state.target) && (0, $23f2114a1b82827e$export$4282f70798064fe0)(state.target, target) && !e[$d27d541f9569d26d$var$LINK_CLICKED]) {\n                    // Store a hidden property on the event so we only trigger link click once,\n                    // even if there are multiple usePress instances attached to the element.\n                    e[$d27d541f9569d26d$var$LINK_CLICKED] = true;\n                    (0, $caaf0dd3060ed57c$export$95185d699e05d4d7)(state.target, e, false);\n                }\n                state.isPressed = false;\n                state.metaKeyEvents?.delete(e.key);\n            } else if (e.key === 'Meta' && state.metaKeyEvents?.size) {\n                // If we recorded keydown events that occurred while the Meta key was pressed,\n                // and those haven't received keyup events already, fire keyup events ourselves.\n                // See comment above for more info about the macOS bug causing this.\n                let events = state.metaKeyEvents;\n                state.metaKeyEvents = undefined;\n                for (let event of events.values())state.target?.dispatchEvent(new KeyboardEvent('keyup', event));\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 || !(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) 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 ((0, $b5c62b033c25b96d$export$29bf1b5f2c56cf63)(e.nativeEvent)) {\n                    state.pointerType = 'virtual';\n                    return;\n                }\n                state.pointerType = e.pointerType;\n                let shouldStopPropagation = true;\n                if (!state.isPressed) {\n                    state.isPressed = true;\n                    state.isOverTarget = true;\n                    state.activePointerId = e.pointerId;\n                    state.target = e.currentTarget;\n                    if (!allowTextSelectionOnPress) (0, $cbf007e418543821$export$16a4697467175487)(state.target);\n                    shouldStopPropagation = triggerPressStart(e, state.pointerType);\n                    // Release pointer capture so that touch interactions can leave the original target.\n                    // This enables onPointerLeave and onPointerEnter to fire.\n                    let target = (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e);\n                    if ('releasePointerCapture' in target) {\n                        if ('hasPointerCapture' in target) {\n                            if (target.hasPointerCapture(e.pointerId)) target.releasePointerCapture(e.pointerId);\n                        } else target.releasePointerCapture(e.pointerId);\n                    }\n                    addGlobalListener((0, $d447af545b77c9f1$export$b204af158042fbac)(e.currentTarget), 'pointerup', onPointerUp, false);\n                    addGlobalListener((0, $d447af545b77c9f1$export$b204af158042fbac)(e.currentTarget), 'pointercancel', onPointerCancel, false);\n                }\n                if (shouldStopPropagation) e.stopPropagation();\n            };\n            pressProps.onMouseDown = (e)=>{\n                if (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n                if (e.button === 0) {\n                    if (preventFocusOnPress) {\n                        let dispose = (0, $a92dc41f639950be$export$cabe61c495ee3649)(e.target);\n                        if (dispose) state.disposables.push(dispose);\n                    }\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 (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e)) || state.pointerType === 'virtual') return;\n                // Only handle left clicks. If isPressed is true, delay until onClick.\n                if (e.button === 0 && !state.isPressed) triggerPressUpEvent(e, state.pointerType || e.pointerType);\n            };\n            pressProps.onPointerEnter = (e)=>{\n                if (e.pointerId === state.activePointerId && state.target && !state.isOverTarget && state.pointerType != null) {\n                    state.isOverTarget = true;\n                    triggerPressStart($d27d541f9569d26d$var$createEvent(state.target, e), state.pointerType);\n                }\n            };\n            pressProps.onPointerLeave = (e)=>{\n                if (e.pointerId === state.activePointerId && state.target && state.isOverTarget && state.pointerType != null) {\n                    state.isOverTarget = false;\n                    triggerPressEndEvent($d27d541f9569d26d$var$createEvent(state.target, e), state.pointerType, false);\n                    cancelOnPointerExit(e);\n                }\n            };\n            let onPointerUp = (e)=>{\n                if (e.pointerId === state.activePointerId && state.isPressed && e.button === 0 && state.target) {\n                    if ((0, $23f2114a1b82827e$export$4282f70798064fe0)(state.target, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e)) && state.pointerType != null) {\n                        // Wait for onClick to fire onPress. This avoids browser issues when the DOM\n                        // is mutated between onPointerUp and onClick, and is more compatible with third party libraries.\n                        // https://github.com/adobe/react-spectrum/issues/1513\n                        // https://issues.chromium.org/issues/40732224\n                        // However, iOS and Android do not focus or fire onClick after a long press.\n                        // We work around this by triggering a click ourselves after a timeout.\n                        // This timeout is canceled during the click event in case the real one fires first.\n                        // The timeout must be at least 32ms, because Safari on iOS delays the click event on\n                        // non-form elements without certain ARIA roles (for hover emulation).\n                        // https://github.com/WebKit/WebKit/blob/dccfae42bb29bd4bdef052e469f604a9387241c0/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm#L875-L892\n                        let clicked = false;\n                        let timeout = setTimeout(()=>{\n                            if (state.isPressed && state.target instanceof HTMLElement) {\n                                if (clicked) cancelEvent(e);\n                                else {\n                                    (0, $1969ac565cfec8d0$export$de79e2c695e052f3)(state.target);\n                                    state.target.click();\n                                }\n                            }\n                        }, 80);\n                        // Use a capturing listener to track if a click occurred.\n                        // If stopPropagation is called it may never reach our handler.\n                        addGlobalListener(e.currentTarget, 'click', ()=>clicked = true, true);\n                        state.disposables.push(()=>clearTimeout(timeout));\n                    } else cancelEvent(e);\n                    // Ignore subsequent onPointerLeave event before onClick on touch devices.\n                    state.isOverTarget = false;\n                }\n            };\n            let onPointerCancel = (e)=>{\n                cancelEvent(e);\n            };\n            pressProps.onDragStart = (e)=>{\n                if (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n                // Safari does not call onPointerCancel when a drag starts, whereas Chrome and Firefox do.\n                cancelEvent(e);\n            };\n        } else if (process.env.NODE_ENV === 'test') {\n            // NOTE: this fallback branch is entirely used by unit tests.\n            // All browsers now support pointer events, but JSDOM still does not.\n            pressProps.onMouseDown = (e)=>{\n                // Only handle left clicks\n                if (e.button !== 0 || !(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n                if (state.ignoreEmulatedMouseEvents) {\n                    e.stopPropagation();\n                    return;\n                }\n                state.isPressed = true;\n                state.isOverTarget = true;\n                state.target = e.currentTarget;\n                state.pointerType = (0, $b5c62b033c25b96d$export$60278871457622de)(e.nativeEvent) ? 'virtual' : 'mouse';\n                // Flush sync so that focus moved during react re-renders occurs before we yield back to the browser.\n                let shouldStopPropagation = (0, $fL2C6$flushSync)(()=>triggerPressStart(e, state.pointerType));\n                if (shouldStopPropagation) e.stopPropagation();\n                if (preventFocusOnPress) {\n                    let dispose = (0, $a92dc41f639950be$export$cabe61c495ee3649)(e.target);\n                    if (dispose) state.disposables.push(dispose);\n                }\n                addGlobalListener((0, $d447af545b77c9f1$export$b204af158042fbac)(e.currentTarget), 'mouseup', onMouseUp, false);\n            };\n            pressProps.onMouseEnter = (e)=>{\n                if (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n                let shouldStopPropagation = true;\n                if (state.isPressed && !state.ignoreEmulatedMouseEvents && state.pointerType != null) {\n                    state.isOverTarget = true;\n                    shouldStopPropagation = triggerPressStart(e, state.pointerType);\n                }\n                if (shouldStopPropagation) e.stopPropagation();\n            };\n            pressProps.onMouseLeave = (e)=>{\n                if (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n                let shouldStopPropagation = true;\n                if (state.isPressed && !state.ignoreEmulatedMouseEvents && state.pointerType != null) {\n                    state.isOverTarget = false;\n                    shouldStopPropagation = triggerPressEndEvent(e, state.pointerType, false);\n                    cancelOnPointerExit(e);\n                }\n                if (shouldStopPropagation) e.stopPropagation();\n            };\n            pressProps.onMouseUp = (e)=>{\n                if (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n                if (!state.ignoreEmulatedMouseEvents && e.button === 0 && !state.isPressed) triggerPressUpEvent(e, state.pointerType || 'mouse');\n            };\n            let onMouseUp = (e)=>{\n                // Only handle left clicks\n                if (e.button !== 0) return;\n                if (state.ignoreEmulatedMouseEvents) {\n                    state.ignoreEmulatedMouseEvents = false;\n                    return;\n                }\n                if (state.target && (0, $23f2114a1b82827e$export$4282f70798064fe0)(state.target, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e)) && state.pointerType != null) ;\n                else cancelEvent(e);\n                state.isOverTarget = false;\n            };\n            pressProps.onTouchStart = (e)=>{\n                if (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n                let touch = $d27d541f9569d26d$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                if (!allowTextSelectionOnPress) (0, $cbf007e418543821$export$16a4697467175487)(state.target);\n                let shouldStopPropagation = triggerPressStart($d27d541f9569d26d$var$createTouchEvent(state.target, e), state.pointerType);\n                if (shouldStopPropagation) e.stopPropagation();\n                addGlobalListener((0, $d447af545b77c9f1$export$f21a1ffae260145a)(e.currentTarget), 'scroll', onScroll, true);\n            };\n            pressProps.onTouchMove = (e)=>{\n                if (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n                if (!state.isPressed) {\n                    e.stopPropagation();\n                    return;\n                }\n                let touch = $d27d541f9569d26d$var$getTouchById(e.nativeEvent, state.activePointerId);\n                let shouldStopPropagation = true;\n                if (touch && $d27d541f9569d26d$var$isOverTarget(touch, e.currentTarget)) {\n                    if (!state.isOverTarget && state.pointerType != null) {\n                        state.isOverTarget = true;\n                        shouldStopPropagation = triggerPressStart($d27d541f9569d26d$var$createTouchEvent(state.target, e), state.pointerType);\n                    }\n                } else if (state.isOverTarget && state.pointerType != null) {\n                    state.isOverTarget = false;\n                    shouldStopPropagation = triggerPressEndEvent($d27d541f9569d26d$var$createTouchEvent(state.target, e), state.pointerType, false);\n                    cancelOnPointerExit($d27d541f9569d26d$var$createTouchEvent(state.target, e));\n                }\n                if (shouldStopPropagation) e.stopPropagation();\n            };\n            pressProps.onTouchEnd = (e)=>{\n                if (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n                if (!state.isPressed) {\n                    e.stopPropagation();\n                    return;\n                }\n                let touch = $d27d541f9569d26d$var$getTouchById(e.nativeEvent, state.activePointerId);\n                let shouldStopPropagation = true;\n                if (touch && $d27d541f9569d26d$var$isOverTarget(touch, e.currentTarget) && state.pointerType != null) {\n                    triggerPressUpEvent($d27d541f9569d26d$var$createTouchEvent(state.target, e), state.pointerType);\n                    shouldStopPropagation = triggerPressEndEvent($d27d541f9569d26d$var$createTouchEvent(state.target, e), state.pointerType);\n                    triggerSyntheticClick(e.nativeEvent, state.target);\n                } else if (state.isOverTarget && state.pointerType != null) shouldStopPropagation = triggerPressEndEvent($d27d541f9569d26d$var$createTouchEvent(state.target, e), state.pointerType, false);\n                if (shouldStopPropagation) e.stopPropagation();\n                state.isPressed = false;\n                state.activePointerId = null;\n                state.isOverTarget = false;\n                state.ignoreEmulatedMouseEvents = true;\n                if (state.target && !allowTextSelectionOnPress) (0, $cbf007e418543821$export$b0d6fa1ab32e3295)(state.target);\n                removeAllGlobalListeners();\n            };\n            pressProps.onTouchCancel = (e)=>{\n                if (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n                e.stopPropagation();\n                if (state.isPressed) cancelEvent($d27d541f9569d26d$var$createTouchEvent(state.target, e));\n            };\n            let onScroll = (e)=>{\n                if (state.isPressed && (0, $23f2114a1b82827e$export$4282f70798064fe0)((0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e), state.target)) cancelEvent({\n                    currentTarget: state.target,\n                    shiftKey: false,\n                    ctrlKey: false,\n                    metaKey: false,\n                    altKey: false\n                });\n            };\n            pressProps.onDragStart = (e)=>{\n                if (!(0, $23f2114a1b82827e$export$4282f70798064fe0)(e.currentTarget, (0, $23f2114a1b82827e$export$e58f029f0fbfdb29)(e))) return;\n                cancelEvent(e);\n            };\n        }\n        return pressProps;\n    }, [\n        addGlobalListener,\n        isDisabled,\n        preventFocusOnPress,\n        removeAllGlobalListeners,\n        allowTextSelectionOnPress,\n        cancelOnPointerExit,\n        triggerPressStart,\n        triggerClick,\n        triggerSyntheticClick\n    ]);\n    // Avoid onClick delay for double tap to zoom by default.\n    (0, $fL2C6$useEffect)(()=>{\n        if (!domRef || process.env.NODE_ENV === 'test') return;\n        const ownerDocument = (0, $d447af545b77c9f1$export$b204af158042fbac)(domRef.current);\n        if (!ownerDocument || !ownerDocument.head || ownerDocument.getElementById($d27d541f9569d26d$var$STYLE_ID)) return;\n        const style = ownerDocument.createElement('style');\n        style.id = $d27d541f9569d26d$var$STYLE_ID;\n        let nonce = (0, $2b2d34ff061957fb$export$2b85b721e524d74b)(ownerDocument);\n        if (nonce) style.nonce = nonce;\n        // touchAction: 'manipulation' is supposed to be equivalent, but in\n        // Safari it causes onPointerCancel not to fire on scroll.\n        // https://bugs.webkit.org/show_bug.cgi?id=240917\n        style.textContent = `\n@layer {\n  [${$d27d541f9569d26d$var$PRESSABLE_ATTRIBUTE}] {\n    touch-action: pan-x pan-y pinch-zoom;\n  }\n}\n    `.trim();\n        ownerDocument.head.prepend(style);\n    }, [\n        domRef\n    ]);\n    // Remove user-select: none in case component unmounts immediately after pressStart\n    (0, $fL2C6$useEffect)(()=>{\n        let state = ref.current;\n        return ()=>{\n            if (!allowTextSelectionOnPress) (0, $cbf007e418543821$export$b0d6fa1ab32e3295)(state.target ?? undefined);\n            for (let dispose of state.disposables)dispose();\n            state.disposables = [];\n        };\n    }, [\n        allowTextSelectionOnPress\n    ]);\n    return {\n        isPressed: isPressedProp || isPressed,\n        // oxlint-disable-next-line react/react-compiler\n        pressProps: (0, $bbaa08b3cd72f041$export$9d1611c77c2fe928)(domProps, pressProps, {\n            [$d27d541f9569d26d$var$PRESSABLE_ATTRIBUTE]: true\n        })\n    };\n}\nfunction $d27d541f9569d26d$var$isHTMLAnchorLink(target) {\n    return target.tagName === 'A' && target.hasAttribute('href');\n}\nfunction $d27d541f9569d26d$var$isValidKeyboardEvent(event, currentTarget) {\n    const { key: key, code: code } = event;\n    const element = currentTarget;\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') && !(element instanceof (0, $d447af545b77c9f1$export$f21a1ffae260145a)(element).HTMLInputElement && !$d27d541f9569d26d$var$isValidInputKey(element, key) || element instanceof (0, $d447af545b77c9f1$export$f21a1ffae260145a)(element).HTMLTextAreaElement || element.isContentEditable) && // Links should only trigger with Enter key\n    !((role === 'link' || !role && $d27d541f9569d26d$var$isHTMLAnchorLink(element)) && key !== 'Enter');\n}\nfunction $d27d541f9569d26d$var$getTouchFromEvent(event) {\n    const { targetTouches: targetTouches } = event;\n    if (targetTouches.length > 0) return targetTouches[0];\n    return null;\n}\nfunction $d27d541f9569d26d$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 $d27d541f9569d26d$var$createTouchEvent(target, e) {\n    let clientX = 0;\n    let clientY = 0;\n    if (e.targetTouches && e.targetTouches.length === 1) {\n        clientX = e.targetTouches[0].clientX;\n        clientY = e.targetTouches[0].clientY;\n    }\n    return {\n        currentTarget: target,\n        shiftKey: e.shiftKey,\n        ctrlKey: e.ctrlKey,\n        metaKey: e.metaKey,\n        altKey: e.altKey,\n        clientX: clientX,\n        clientY: clientY\n    };\n}\nfunction $d27d541f9569d26d$var$createEvent(target, e) {\n    let clientX = e.clientX;\n    let clientY = e.clientY;\n    return {\n        currentTarget: target,\n        shiftKey: e.shiftKey,\n        ctrlKey: e.ctrlKey,\n        metaKey: e.metaKey,\n        altKey: e.altKey,\n        clientX: clientX,\n        clientY: clientY,\n        key: e.key\n    };\n}\nfunction $d27d541f9569d26d$var$getPointClientRect(point) {\n    let offsetX = 0;\n    let offsetY = 0;\n    if (point.width !== undefined) offsetX = point.width / 2;\n    else if (point.radiusX !== undefined) offsetX = point.radiusX;\n    if (point.height !== undefined) offsetY = point.height / 2;\n    else if (point.radiusY !== undefined) offsetY = point.radiusY;\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 $d27d541f9569d26d$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 $d27d541f9569d26d$var$isOverTarget(point, target) {\n    let rect = target.getBoundingClientRect();\n    let pointRect = $d27d541f9569d26d$var$getPointClientRect(point);\n    return $d27d541f9569d26d$var$areRectanglesOverlapping(rect, pointRect);\n}\nfunction $d27d541f9569d26d$var$shouldPreventDefaultUp(target) {\n    if (target instanceof HTMLInputElement) return false;\n    if (target instanceof HTMLButtonElement) return target.type !== 'submit' && target.type !== 'reset';\n    if ($d27d541f9569d26d$var$isHTMLAnchorLink(target)) return false;\n    return true;\n}\nfunction $d27d541f9569d26d$var$shouldPreventDefaultKeyboard(target, key) {\n    // Don't prevent the contextmenu shortcut on mac.\n    if ((0, $2add3ce32c6007eb$export$9ac100e40613ea10)() && key === 'Enter') return false;\n    if (target instanceof HTMLInputElement) {\n        if (key === 'Enter' && (target.type === 'checkbox' || target.type === 'radio')) // Enter on a checkbox or radio should do an implicit form submission, but not toggle the input.\n        return false;\n        return !$d27d541f9569d26d$var$isValidInputKey(target, key);\n    }\n    return $d27d541f9569d26d$var$shouldPreventDefaultUp(target);\n}\nconst $d27d541f9569d26d$var$nonTextInputTypes = new Set([\n    'checkbox',\n    'radio',\n    'range',\n    'color',\n    'file',\n    'image',\n    'button',\n    'submit',\n    'reset'\n]);\nfunction $d27d541f9569d26d$var$isValidInputKey(target, key) {\n    // Only space should toggle checkboxes and radios, not enter.\n    return target.type === 'checkbox' || target.type === 'radio' ? key === ' ' : $d27d541f9569d26d$var$nonTextInputTypes.has(target.type);\n}\n\n\nexport {$d27d541f9569d26d$export$45712eceda6fad21 as usePress};\n//# sourceMappingURL=usePress.mjs.map\n","import {filterDOMProps as $8e9d2fae0ecb9001$export$457c3d6518dd4c6f} from \"../utils/filterDOMProps.mjs\";\nimport {handleLinkClick as $caaf0dd3060ed57c$export$13aea1a3cb5e3f1f, useLinkProps as $caaf0dd3060ed57c$export$7e924b3091a3bd18, useRouter as $caaf0dd3060ed57c$export$9a302a45f65d0572} from \"../utils/openLink.mjs\";\nimport {mergeProps as $bbaa08b3cd72f041$export$9d1611c77c2fe928} from \"../utils/mergeProps.mjs\";\nimport {useFocusable as $d1116acdf220c2da$export$4c014de7c8940b4c} from \"../interactions/useFocusable.mjs\";\nimport {usePress as $d27d541f9569d26d$export$45712eceda6fad21} from \"../interactions/usePress.mjs\";\n\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 */ \n\n\n\n\nfunction $40d752843fab8930$export$dcf14c9974fe2767(props, ref) {\n    let { elementType: elementType = 'a', onPress: onPress, onPressStart: onPressStart, onPressEnd: onPressEnd, onPressChange: onPressChange, onClick: onClick, isDisabled: isDisabled, ...otherProps } = props;\n    let linkProps = {};\n    if (elementType !== 'a') linkProps = {\n        role: 'link',\n        tabIndex: !isDisabled ? 0 : undefined\n    };\n    let { focusableProps: focusableProps } = (0, $d1116acdf220c2da$export$4c014de7c8940b4c)(props, ref);\n    let { pressProps: pressProps, isPressed: isPressed } = (0, $d27d541f9569d26d$export$45712eceda6fad21)({\n        onPress: onPress,\n        onPressStart: onPressStart,\n        onPressEnd: onPressEnd,\n        onPressChange: onPressChange,\n        onClick: onClick,\n        isDisabled: isDisabled,\n        ref: ref\n    });\n    let domProps = (0, $8e9d2fae0ecb9001$export$457c3d6518dd4c6f)(otherProps, {\n        labelable: true\n    });\n    let interactionHandlers = (0, $bbaa08b3cd72f041$export$9d1611c77c2fe928)(focusableProps, pressProps);\n    let router = (0, $caaf0dd3060ed57c$export$9a302a45f65d0572)();\n    let routerLinkProps = (0, $caaf0dd3060ed57c$export$7e924b3091a3bd18)(props);\n    return {\n        isPressed: isPressed,\n        linkProps: (0, $bbaa08b3cd72f041$export$9d1611c77c2fe928)(domProps, routerLinkProps, {\n            ...interactionHandlers,\n            ...linkProps,\n            'aria-disabled': isDisabled || undefined,\n            'aria-current': props['aria-current'],\n            onClick: (e)=>{\n                pressProps.onClick?.(e);\n                (0, $caaf0dd3060ed57c$export$13aea1a3cb5e3f1f)(e, router, props.href, props.routerOptions);\n            }\n        })\n    };\n}\n\n\nexport {$40d752843fab8930$export$dcf14c9974fe2767 as useLink};\n//# sourceMappingURL=useLink.mjs.map\n","import { n as $7230ffa83bc0c2cf$export$29f1550f4b0d4415, r as $7230ffa83bc0c2cf$export$4d86445c2cf5e3, s as $7230ffa83bc0c2cf$export$df3a06d6289f983e } from \"./utils-BkLF-JA3.js\";\nimport $ahdqC$react, { createContext, forwardRef } from \"react\";\nimport { mergeProps } from \"react-aria/mergeProps\";\nimport { useLink } from \"react-aria/useLink\";\nimport { filterDOMProps } from \"react-aria/filterDOMProps\";\nimport { useFocusRing } from \"react-aria/useFocusRing\";\nimport { useHover } from \"react-aria/useHover\";\n//#region ../../node_modules/.bun/react-aria-components@1.22.1+67f6792bdf102c28/node_modules/react-aria-components/dist/private/Link.mjs\nconst $984a1fc08f87e4f3$export$e2509388b49734e7 = /*#__PURE__*/ createContext(null);\nconst $984a1fc08f87e4f3$export$a6c7ac8248d6e38a = /*#__PURE__*/ forwardRef(function Link(props, ref) {\n\t[props, ref] = $7230ffa83bc0c2cf$export$29f1550f4b0d4415(props, ref, $984a1fc08f87e4f3$export$e2509388b49734e7);\n\tlet elementType = props.href && !props.isDisabled ? \"a\" : \"span\";\n\tlet { linkProps, isPressed } = useLink({\n\t\t...props,\n\t\telementType\n\t}, ref);\n\tlet ElementType = $7230ffa83bc0c2cf$export$df3a06d6289f983e[elementType];\n\tlet { hoverProps, isHovered } = useHover(props);\n\tlet { focusProps, isFocused, isFocusVisible } = useFocusRing();\n\tlet renderProps = $7230ffa83bc0c2cf$export$4d86445c2cf5e3({\n\t\t...props,\n\t\tdefaultClassName: \"react-aria-Link\",\n\t\tvalues: {\n\t\t\tisCurrent: !!props[\"aria-current\"],\n\t\t\tisDisabled: props.isDisabled || false,\n\t\t\tisPressed,\n\t\t\tisHovered,\n\t\t\tisFocused,\n\t\t\tisFocusVisible\n\t\t}\n\t});\n\tlet DOMProps = filterDOMProps(props, { global: true });\n\tdelete DOMProps.onClick;\n\treturn /*#__PURE__*/ $ahdqC$react.createElement(ElementType, {\n\t\tref,\n\t\tslot: props.slot || void 0,\n\t\t...mergeProps(DOMProps, renderProps, linkProps, hoverProps, focusProps),\n\t\t\"data-focused\": isFocused || void 0,\n\t\t\"data-hovered\": isHovered || void 0,\n\t\t\"data-pressed\": isPressed || void 0,\n\t\t\"data-focus-visible\": isFocusVisible || void 0,\n\t\t\"data-current\": !!props[\"aria-current\"] || void 0,\n\t\t\"data-disabled\": props.isDisabled || void 0\n\t}, renderProps.children);\n});\n//#endregion\nexport { $984a1fc08f87e4f3$export$e2509388b49734e7 as n, $984a1fc08f87e4f3$export$a6c7ac8248d6e38a as t };\n","import { createContext, use } from \"react\";\nimport { c } from \"react/compiler-runtime\";\nimport { jsx } from \"react/jsx-runtime\";\n//#region src/config/link.context.tsx\nlet LinkContext;\n(function(_LinkContext) {\n\tconst LinkContextInternal = createContext(null);\n\t_LinkContext.LinkContextProvider = (t0) => {\n\t\tconst $ = c(5);\n\t\tconst { children, LinkComponent } = t0;\n\t\tlet t1;\n\t\tif ($[0] !== LinkComponent) {\n\t\t\tt1 = { LinkComponent };\n\t\t\t$[0] = LinkComponent;\n\t\t\t$[1] = t1;\n\t\t} else t1 = $[1];\n\t\tconst value = t1;\n\t\tlet t2;\n\t\tif ($[2] !== children || $[3] !== value) {\n\t\t\tt2 = /* @__PURE__ */ jsx(LinkContextInternal.Provider, {\n\t\t\t\tvalue,\n\t\t\t\tchildren\n\t\t\t});\n\t\t\t$[2] = children;\n\t\t\t$[3] = value;\n\t\t\t$[4] = t2;\n\t\t} else t2 = $[4];\n\t\treturn t2;\n\t};\n\t_LinkContext.useLinkContext = () => {\n\t\treturn use(LinkContextInternal);\n\t};\n})(LinkContext || (LinkContext = {}));\n//#endregion\nexport { LinkContext as t };\n","import { t as clsx } from \"./clsx-CnD0nOiA.js\";\n//#region src/components/outline.clsx.ts\nconst uiOutlineClass = clsx(\"outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50\", \"has-focus-visible:ring-[3px] has-focus-visible:ring-ring/50\");\nconst uiGroupOutlineClass = clsx(\"outline-none group-focus-visible:ring-[3px] group-focus-visible:ring-ring/50\");\n//#endregion\nexport { uiOutlineClass as n, uiGroupOutlineClass as t };\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10],"mappings":"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"}