{"version":3,"file":"useBodyScrollLock-zlwKuHBD.js","sources":["../../node_modules/reka-ui/dist/shared/useId.js","../../node_modules/reka-ui/dist/Teleport/Teleport.js","../../node_modules/reka-ui/dist/Menu/utils.js","../../node_modules/reka-ui/dist/FocusScope/stack.js","../../node_modules/reka-ui/dist/FocusScope/FocusScope.js","../../node_modules/aria-hidden/dist/es2015/index.js","../../node_modules/reka-ui/dist/shared/useHideOthers.js","../../node_modules/defu/dist/defu.mjs","../../node_modules/reka-ui/dist/shared/useBodyScrollLock.js"],"sourcesContent":["import * as vue from 'vue';\nimport { i as injectConfigProviderContext } from '../ConfigProvider/ConfigProvider.js';\n\nlet count = 0;\nfunction useId(deterministicId, prefix = \"reka\") {\n if (deterministicId)\n return deterministicId;\n const configProviderContext = injectConfigProviderContext({ useId: undefined });\n if (vue.useId) {\n return `${prefix}-${vue.useId()}`;\n } else if (configProviderContext.useId) {\n return `${prefix}-${configProviderContext.useId()}`;\n }\n return `${prefix}-${++count}`;\n}\n\nexport { useId as u };\n//# sourceMappingURL=useId.js.map\n","import { defineComponent, unref, openBlock, createBlock, Teleport, renderSlot, createCommentVNode } from 'vue';\nimport { useMounted } from '@vueuse/core';\n\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"Teleport\",\n props: {\n to: { default: \"body\" },\n disabled: { type: Boolean },\n defer: { type: Boolean },\n forceMount: { type: Boolean }\n },\n setup(__props) {\n const isMounted = useMounted();\n return (_ctx, _cache) => {\n return unref(isMounted) || _ctx.forceMount ? (openBlock(), createBlock(Teleport, {\n key: 0,\n to: _ctx.to,\n disabled: _ctx.disabled,\n defer: _ctx.defer\n }, [\n renderSlot(_ctx.$slots, \"default\")\n ], 8, [\"to\", \"disabled\", \"defer\"])) : createCommentVNode(\"\", true);\n };\n }\n});\n\nexport { _sfc_main as _ };\n//# sourceMappingURL=Teleport.js.map\n","import { g as getActiveElement } from '../shared/getActiveElement.js';\n\nconst ITEM_SELECT = \"menu.itemSelect\";\nconst SELECTION_KEYS = [\"Enter\", \" \"];\nconst FIRST_KEYS = [\"ArrowDown\", \"PageUp\", \"Home\"];\nconst LAST_KEYS = [\"ArrowUp\", \"PageDown\", \"End\"];\nconst FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS];\nconst SUB_OPEN_KEYS = {\n ltr: [...SELECTION_KEYS, \"ArrowRight\"],\n rtl: [...SELECTION_KEYS, \"ArrowLeft\"]\n};\nconst SUB_CLOSE_KEYS = {\n ltr: [\"ArrowLeft\"],\n rtl: [\"ArrowRight\"]\n};\nfunction getOpenState(open) {\n return open ? \"open\" : \"closed\";\n}\nfunction isIndeterminate(checked) {\n return checked === \"indeterminate\";\n}\nfunction getCheckedState(checked) {\n return isIndeterminate(checked) ? \"indeterminate\" : checked ? \"checked\" : \"unchecked\";\n}\nfunction focusFirst(candidates) {\n const PREVIOUSLY_FOCUSED_ELEMENT = getActiveElement();\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT)\n return;\n candidate.focus();\n if (getActiveElement() !== PREVIOUSLY_FOCUSED_ELEMENT)\n return;\n }\n}\nfunction isPointInPolygon(point, polygon) {\n const { x, y } = point;\n let inside = false;\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n const xi = polygon[i].x;\n const yi = polygon[i].y;\n const xj = polygon[j].x;\n const yj = polygon[j].y;\n const intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;\n if (intersect)\n inside = !inside;\n }\n return inside;\n}\nfunction isPointerInGraceArea(event, area) {\n if (!area)\n return false;\n const cursorPos = { x: event.clientX, y: event.clientY };\n return isPointInPolygon(cursorPos, area);\n}\nfunction isMouseEvent(event) {\n return event.pointerType === \"mouse\";\n}\n\nexport { FIRST_LAST_KEYS as F, ITEM_SELECT as I, LAST_KEYS as L, SELECTION_KEYS as S, getCheckedState as a, isPointerInGraceArea as b, isMouseEvent as c, SUB_CLOSE_KEYS as d, SUB_OPEN_KEYS as e, focusFirst as f, getOpenState as g, isIndeterminate as i };\n//# sourceMappingURL=utils.js.map\n","import { createGlobalState } from '@vueuse/core';\nimport { ref } from 'vue';\n\nconst useFocusStackState = createGlobalState(() => {\n const stack = ref([]);\n return stack;\n});\nfunction createFocusScopesStack() {\n const stack = useFocusStackState();\n return {\n add(focusScope) {\n const activeFocusScope = stack.value[0];\n if (focusScope !== activeFocusScope)\n activeFocusScope?.pause();\n stack.value = arrayRemove(stack.value, focusScope);\n stack.value.unshift(focusScope);\n },\n remove(focusScope) {\n stack.value = arrayRemove(stack.value, focusScope);\n stack.value[0]?.resume();\n }\n };\n}\nfunction arrayRemove(array, item) {\n const updatedArray = [...array];\n const index = updatedArray.indexOf(item);\n if (index !== -1)\n updatedArray.splice(index, 1);\n return updatedArray;\n}\nfunction removeLinks(items) {\n return items.filter((item) => item.tagName !== \"A\");\n}\n\nexport { createFocusScopesStack as c, removeLinks as r };\n//# sourceMappingURL=stack.js.map\n","import { defineComponent, ref, reactive, watchEffect, nextTick, openBlock, createBlock, unref, withCtx, renderSlot } from 'vue';\nimport { isClient } from '@vueuse/shared';\nimport { A as AUTOFOCUS_ON_MOUNT, f as focusFirst, g as getTabbableCandidates, a as focus, b as AUTOFOCUS_ON_UNMOUNT, E as EVENT_OPTIONS, c as getTabbableEdges } from './utils.js';\nimport { c as createFocusScopesStack, r as removeLinks } from './stack.js';\nimport { u as useForwardExpose } from '../shared/useForwardExpose.js';\nimport { g as getActiveElement } from '../shared/getActiveElement.js';\nimport { P as Primitive } from '../Primitive/Primitive.js';\n\nconst _sfc_main = /* @__PURE__ */ defineComponent({\n __name: \"FocusScope\",\n props: {\n loop: { type: Boolean, default: false },\n trapped: { type: Boolean, default: false },\n asChild: { type: Boolean },\n as: {}\n },\n emits: [\"mountAutoFocus\", \"unmountAutoFocus\"],\n setup(__props, { emit: __emit }) {\n const props = __props;\n const emits = __emit;\n const { currentRef, currentElement } = useForwardExpose();\n const lastFocusedElementRef = ref(null);\n const focusScopesStack = createFocusScopesStack();\n const focusScope = reactive({\n paused: false,\n pause() {\n this.paused = true;\n },\n resume() {\n this.paused = false;\n }\n });\n watchEffect((cleanupFn) => {\n if (!isClient)\n return;\n const container = currentElement.value;\n if (!props.trapped)\n return;\n function handleFocusIn(event) {\n if (focusScope.paused || !container)\n return;\n const target = event.target;\n if (container.contains(target))\n lastFocusedElementRef.value = target;\n else focus(lastFocusedElementRef.value, { select: true });\n }\n function handleFocusOut(event) {\n if (focusScope.paused || !container)\n return;\n const relatedTarget = event.relatedTarget;\n if (relatedTarget === null)\n return;\n if (!container.contains(relatedTarget))\n focus(lastFocusedElementRef.value, { select: true });\n }\n function handleMutations(mutations) {\n const isLastFocusedElementExist = container.contains(lastFocusedElementRef.value);\n if (!isLastFocusedElementExist)\n focus(container);\n }\n document.addEventListener(\"focusin\", handleFocusIn);\n document.addEventListener(\"focusout\", handleFocusOut);\n const mutationObserver = new MutationObserver(handleMutations);\n if (container)\n mutationObserver.observe(container, { childList: true, subtree: true });\n cleanupFn(() => {\n document.removeEventListener(\"focusin\", handleFocusIn);\n document.removeEventListener(\"focusout\", handleFocusOut);\n mutationObserver.disconnect();\n });\n });\n watchEffect(async (cleanupFn) => {\n const container = currentElement.value;\n await nextTick();\n if (!container)\n return;\n focusScopesStack.add(focusScope);\n const previouslyFocusedElement = getActiveElement();\n const hasFocusedCandidate = container.contains(previouslyFocusedElement);\n if (!hasFocusedCandidate) {\n const mountEvent = new CustomEvent(AUTOFOCUS_ON_MOUNT, EVENT_OPTIONS);\n container.addEventListener(AUTOFOCUS_ON_MOUNT, (ev) => emits(\"mountAutoFocus\", ev));\n container.dispatchEvent(mountEvent);\n if (!mountEvent.defaultPrevented) {\n focusFirst(removeLinks(getTabbableCandidates(container)), {\n select: true\n });\n if (getActiveElement() === previouslyFocusedElement)\n focus(container);\n }\n }\n cleanupFn(() => {\n container.removeEventListener(AUTOFOCUS_ON_MOUNT, (ev) => emits(\"mountAutoFocus\", ev));\n const unmountEvent = new CustomEvent(AUTOFOCUS_ON_UNMOUNT, EVENT_OPTIONS);\n const unmountEventHandler = (ev) => {\n emits(\"unmountAutoFocus\", ev);\n };\n container.addEventListener(AUTOFOCUS_ON_UNMOUNT, unmountEventHandler);\n container.dispatchEvent(unmountEvent);\n setTimeout(() => {\n if (!unmountEvent.defaultPrevented)\n focus(previouslyFocusedElement ?? document.body, { select: true });\n container.removeEventListener(AUTOFOCUS_ON_UNMOUNT, unmountEventHandler);\n focusScopesStack.remove(focusScope);\n }, 0);\n });\n });\n function handleKeyDown(event) {\n if (!props.loop && !props.trapped)\n return;\n if (focusScope.paused)\n return;\n const isTabKey = event.key === \"Tab\" && !event.altKey && !event.ctrlKey && !event.metaKey;\n const focusedElement = getActiveElement();\n if (isTabKey && focusedElement) {\n const container = event.currentTarget;\n const [first, last] = getTabbableEdges(container);\n const hasTabbableElementsInside = first && last;\n if (!hasTabbableElementsInside) {\n if (focusedElement === container)\n event.preventDefault();\n } else {\n if (!event.shiftKey && focusedElement === last) {\n event.preventDefault();\n if (props.loop)\n focus(first, { select: true });\n } else if (event.shiftKey && focusedElement === first) {\n event.preventDefault();\n if (props.loop)\n focus(last, { select: true });\n }\n }\n }\n }\n return (_ctx, _cache) => {\n return openBlock(), createBlock(unref(Primitive), {\n ref_key: \"currentRef\",\n ref: currentRef,\n tabindex: \"-1\",\n \"as-child\": _ctx.asChild,\n as: _ctx.as,\n onKeydown: handleKeyDown\n }, {\n default: withCtx(() => [\n renderSlot(_ctx.$slots, \"default\")\n ]),\n _: 3\n }, 8, [\"as-child\", \"as\"]);\n };\n }\n});\n\nexport { _sfc_main as _ };\n//# sourceMappingURL=FocusScope.js.map\n","var getDefaultParent = function (originalTarget) {\n if (typeof document === 'undefined') {\n return null;\n }\n var sampleTarget = Array.isArray(originalTarget) ? originalTarget[0] : originalTarget;\n return sampleTarget.ownerDocument.body;\n};\nvar counterMap = new WeakMap();\nvar uncontrolledNodes = new WeakMap();\nvar markerMap = {};\nvar lockCount = 0;\nvar unwrapHost = function (node) {\n return node && (node.host || unwrapHost(node.parentNode));\n};\nvar correctTargets = function (parent, targets) {\n return targets\n .map(function (target) {\n if (parent.contains(target)) {\n return target;\n }\n var correctedTarget = unwrapHost(target);\n if (correctedTarget && parent.contains(correctedTarget)) {\n return correctedTarget;\n }\n console.error('aria-hidden', target, 'in not contained inside', parent, '. Doing nothing');\n return null;\n })\n .filter(function (x) { return Boolean(x); });\n};\n/**\n * Marks everything except given node(or nodes) as aria-hidden\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @param {String} [controlAttribute] - html Attribute to control\n * @return {Undo} undo command\n */\nvar applyAttributeToOthers = function (originalTarget, parentNode, markerName, controlAttribute) {\n var targets = correctTargets(parentNode, Array.isArray(originalTarget) ? originalTarget : [originalTarget]);\n if (!markerMap[markerName]) {\n markerMap[markerName] = new WeakMap();\n }\n var markerCounter = markerMap[markerName];\n var hiddenNodes = [];\n var elementsToKeep = new Set();\n var elementsToStop = new Set(targets);\n var keep = function (el) {\n if (!el || elementsToKeep.has(el)) {\n return;\n }\n elementsToKeep.add(el);\n keep(el.parentNode);\n };\n targets.forEach(keep);\n var deep = function (parent) {\n if (!parent || elementsToStop.has(parent)) {\n return;\n }\n Array.prototype.forEach.call(parent.children, function (node) {\n if (elementsToKeep.has(node)) {\n deep(node);\n }\n else {\n try {\n var attr = node.getAttribute(controlAttribute);\n var alreadyHidden = attr !== null && attr !== 'false';\n var counterValue = (counterMap.get(node) || 0) + 1;\n var markerValue = (markerCounter.get(node) || 0) + 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n hiddenNodes.push(node);\n if (counterValue === 1 && alreadyHidden) {\n uncontrolledNodes.set(node, true);\n }\n if (markerValue === 1) {\n node.setAttribute(markerName, 'true');\n }\n if (!alreadyHidden) {\n node.setAttribute(controlAttribute, 'true');\n }\n }\n catch (e) {\n console.error('aria-hidden: cannot operate on ', node, e);\n }\n }\n });\n };\n deep(parentNode);\n elementsToKeep.clear();\n lockCount++;\n return function () {\n hiddenNodes.forEach(function (node) {\n var counterValue = counterMap.get(node) - 1;\n var markerValue = markerCounter.get(node) - 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n if (!counterValue) {\n if (!uncontrolledNodes.has(node)) {\n node.removeAttribute(controlAttribute);\n }\n uncontrolledNodes.delete(node);\n }\n if (!markerValue) {\n node.removeAttribute(markerName);\n }\n });\n lockCount--;\n if (!lockCount) {\n // clear\n counterMap = new WeakMap();\n counterMap = new WeakMap();\n uncontrolledNodes = new WeakMap();\n markerMap = {};\n }\n };\n};\n/**\n * Marks everything except given node(or nodes) as aria-hidden\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @return {Undo} undo command\n */\nexport var hideOthers = function (originalTarget, parentNode, markerName) {\n if (markerName === void 0) { markerName = 'data-aria-hidden'; }\n var targets = Array.from(Array.isArray(originalTarget) ? originalTarget : [originalTarget]);\n var activeParentNode = parentNode || getDefaultParent(originalTarget);\n if (!activeParentNode) {\n return function () { return null; };\n }\n // we should not hide ariaLive elements - https://github.com/theKashey/aria-hidden/issues/10\n targets.push.apply(targets, Array.from(activeParentNode.querySelectorAll('[aria-live]')));\n return applyAttributeToOthers(targets, activeParentNode, markerName, 'aria-hidden');\n};\n/**\n * Marks everything except given node(or nodes) as inert\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @return {Undo} undo command\n */\nexport var inertOthers = function (originalTarget, parentNode, markerName) {\n if (markerName === void 0) { markerName = 'data-inert-ed'; }\n var activeParentNode = parentNode || getDefaultParent(originalTarget);\n if (!activeParentNode) {\n return function () { return null; };\n }\n return applyAttributeToOthers(originalTarget, activeParentNode, markerName, 'inert');\n};\n/**\n * @returns if current browser supports inert\n */\nexport var supportsInert = function () {\n return typeof HTMLElement !== 'undefined' && HTMLElement.prototype.hasOwnProperty('inert');\n};\n/**\n * Automatic function to \"suppress\" DOM elements - _hide_ or _inert_ in the best possible way\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @return {Undo} undo command\n */\nexport var suppressOthers = function (originalTarget, parentNode, markerName) {\n if (markerName === void 0) { markerName = 'data-suppressed'; }\n return (supportsInert() ? inertOthers : hideOthers)(originalTarget, parentNode, markerName);\n};\n","import { unrefElement } from '@vueuse/core';\nimport { hideOthers } from 'aria-hidden';\nimport { watch, onUnmounted } from 'vue';\n\nfunction useHideOthers(target) {\n let undo;\n watch(() => unrefElement(target), (el) => {\n if (el)\n undo = hideOthers(el);\n else if (undo)\n undo();\n });\n onUnmounted(() => {\n if (undo)\n undo();\n });\n}\n\nexport { useHideOthers as u };\n//# sourceMappingURL=useHideOthers.js.map\n","function isPlainObject(value) {\n if (value === null || typeof value !== \"object\") {\n return false;\n }\n const prototype = Object.getPrototypeOf(value);\n if (prototype !== null && prototype !== Object.prototype && Object.getPrototypeOf(prototype) !== null) {\n return false;\n }\n if (Symbol.iterator in value) {\n return false;\n }\n if (Symbol.toStringTag in value) {\n return Object.prototype.toString.call(value) === \"[object Module]\";\n }\n return true;\n}\n\nfunction _defu(baseObject, defaults, namespace = \".\", merger) {\n if (!isPlainObject(defaults)) {\n return _defu(baseObject, {}, namespace, merger);\n }\n const object = Object.assign({}, defaults);\n for (const key in baseObject) {\n if (key === \"__proto__\" || key === \"constructor\") {\n continue;\n }\n const value = baseObject[key];\n if (value === null || value === void 0) {\n continue;\n }\n if (merger && merger(object, key, value, namespace)) {\n continue;\n }\n if (Array.isArray(value) && Array.isArray(object[key])) {\n object[key] = [...value, ...object[key]];\n } else if (isPlainObject(value) && isPlainObject(object[key])) {\n object[key] = _defu(\n value,\n object[key],\n (namespace ? `${namespace}.` : \"\") + key.toString(),\n merger\n );\n } else {\n object[key] = value;\n }\n }\n return object;\n}\nfunction createDefu(merger) {\n return (...arguments_) => (\n // eslint-disable-next-line unicorn/no-array-reduce\n arguments_.reduce((p, c) => _defu(p, c, \"\", merger), {})\n );\n}\nconst defu = createDefu();\nconst defuFn = createDefu((object, key, currentValue) => {\n if (object[key] !== void 0 && typeof currentValue === \"function\") {\n object[key] = currentValue(object[key]);\n return true;\n }\n});\nconst defuArrayFn = createDefu((object, key, currentValue) => {\n if (Array.isArray(object[key]) && typeof currentValue === \"function\") {\n object[key] = currentValue(object[key]);\n return true;\n }\n});\n\nexport { createDefu, defu as default, defu, defuArrayFn, defuFn };\n","import { createSharedComposable, useEventListener } from '@vueuse/core';\nimport { isClient, isIOS, tryOnBeforeUnmount } from '@vueuse/shared';\nimport { ref, computed, watch, nextTick } from 'vue';\nimport { defu } from 'defu';\nimport { i as injectConfigProviderContext } from '../ConfigProvider/ConfigProvider.js';\n\nconst useBodyLockStackCount = createSharedComposable(() => {\n const map = ref(/* @__PURE__ */ new Map());\n const initialOverflow = ref();\n const locked = computed(() => {\n for (const value of map.value.values()) {\n if (value)\n return true;\n }\n return false;\n });\n const context = injectConfigProviderContext({\n scrollBody: ref(true)\n });\n let stopTouchMoveListener = null;\n const resetBodyStyle = () => {\n document.body.style.paddingRight = \"\";\n document.body.style.marginRight = \"\";\n document.body.style.pointerEvents = \"\";\n document.body.style.removeProperty(\"--scrollbar-width\");\n document.body.style.overflow = initialOverflow.value ?? \"\";\n isIOS && stopTouchMoveListener?.();\n initialOverflow.value = undefined;\n };\n watch(locked, (val, oldVal) => {\n if (!isClient)\n return;\n if (!val) {\n if (oldVal)\n resetBodyStyle();\n return;\n }\n if (initialOverflow.value === undefined)\n initialOverflow.value = document.body.style.overflow;\n const verticalScrollbarWidth = window.innerWidth - document.documentElement.clientWidth;\n const defaultConfig = { padding: verticalScrollbarWidth, margin: 0 };\n const config = context.scrollBody?.value ? typeof context.scrollBody.value === \"object\" ? defu({\n padding: context.scrollBody.value.padding === true ? verticalScrollbarWidth : context.scrollBody.value.padding,\n margin: context.scrollBody.value.margin === true ? verticalScrollbarWidth : context.scrollBody.value.margin\n }, defaultConfig) : defaultConfig : { padding: 0, margin: 0 };\n if (verticalScrollbarWidth > 0) {\n document.body.style.paddingRight = typeof config.padding === \"number\" ? `${config.padding}px` : String(config.padding);\n document.body.style.marginRight = typeof config.margin === \"number\" ? `${config.margin}px` : String(config.margin);\n document.body.style.setProperty(\"--scrollbar-width\", `${verticalScrollbarWidth}px`);\n document.body.style.overflow = \"hidden\";\n }\n if (isIOS) {\n stopTouchMoveListener = useEventListener(\n document,\n \"touchmove\",\n (e) => preventDefault(e),\n { passive: false }\n );\n }\n nextTick(() => {\n document.body.style.pointerEvents = \"none\";\n document.body.style.overflow = \"hidden\";\n });\n }, { immediate: true, flush: \"sync\" });\n return map;\n});\nfunction useBodyScrollLock(initialState) {\n const id = Math.random().toString(36).substring(2, 7);\n const map = useBodyLockStackCount();\n map.value.set(id, initialState ?? false);\n const locked = computed({\n get: () => map.value.get(id) ?? false,\n set: (value) => map.value.set(id, value)\n });\n tryOnBeforeUnmount(() => {\n map.value.delete(id);\n });\n return locked;\n}\nfunction checkOverflowScroll(ele) {\n const style = window.getComputedStyle(ele);\n if (style.overflowX === \"scroll\" || style.overflowY === \"scroll\" || style.overflowX === \"auto\" && ele.clientWidth < ele.scrollWidth || style.overflowY === \"auto\" && ele.clientHeight < ele.scrollHeight) {\n return true;\n } else {\n const parent = ele.parentNode;\n if (!(parent instanceof Element) || parent.tagName === \"BODY\")\n return false;\n return checkOverflowScroll(parent);\n }\n}\nfunction preventDefault(rawEvent) {\n const e = rawEvent || window.event;\n const _target = e.target;\n if (_target instanceof Element && checkOverflowScroll(_target))\n return false;\n if (e.touches.length > 1)\n return true;\n if (e.preventDefault && e.cancelable)\n e.preventDefault();\n return false;\n}\n\nexport { useBodyScrollLock as u };\n//# sourceMappingURL=useBodyScrollLock.js.map\n"],"names":["count","useId","deterministicId","prefix","configProviderContext","injectConfigProviderContext","vue.useId","_sfc_main","defineComponent","__name","props","to","default","disabled","type","Boolean","defer","forceMount","setup","__props","isMounted","useMounted","_ctx","_cache","unref","openBlock","createBlock","Teleport","key","renderSlot","$slots","createCommentVNode","ITEM_SELECT","SELECTION_KEYS","LAST_KEYS","FIRST_LAST_KEYS","SUB_OPEN_KEYS","ltr","rtl","SUB_CLOSE_KEYS","getOpenState","open","focusFirst","candidates","PREVIOUSLY_FOCUSED_ELEMENT","getActiveElement","candidate","focus","isPointerInGraceArea","event","area","point","polygon","x","y","inside","i","j","length","xi","yi","xj","yj","isPointInPolygon","clientX","clientY","isMouseEvent","pointerType","useFocusStackState","createGlobalState","ref","arrayRemove","array","item","updatedArray","index","indexOf","splice","loop","trapped","asChild","as","emits","emit","__emit","currentRef","currentElement","useForwardExpose","lastFocusedElementRef","focusScopesStack","stack","add","focusScope","activeFocusScope","value","pause","unshift","remove","_a","resume","createFocusScopesStack","reactive","paused","this","handleKeyDown","isTabKey","altKey","ctrlKey","metaKey","focusedElement","container","currentTarget","first","last","getTabbableEdges","shiftKey","preventDefault","select","watchEffect","cleanupFn","isClient","handleFocusIn","target","contains","handleFocusOut","relatedTarget","document","addEventListener","mutationObserver","MutationObserver","mutations","observe","childList","subtree","removeEventListener","disconnect","async","nextTick","previouslyFocusedElement","mountEvent","CustomEvent","AUTOFOCUS_ON_MOUNT","EVENT_OPTIONS","ev","dispatchEvent","defaultPrevented","getTabbableCandidates","filter","tagName","unmountEvent","AUTOFOCUS_ON_UNMOUNT","unmountEventHandler","setTimeout","body","Primitive","ref_key","tabindex","onKeydown","withCtx","_","counterMap","WeakMap","uncontrolledNodes","markerMap","lockCount","unwrapHost","node","host","parentNode","applyAttributeToOthers","originalTarget","markerName","controlAttribute","targets","parent","map","correctedTarget","correctTargets","Array","isArray","markerCounter","hiddenNodes","elementsToKeep","Set","elementsToStop","keep","el","has","forEach","deep","prototype","call","children","attr","getAttribute","alreadyHidden","counterValue","get","markerValue","set","push","setAttribute","e","clear","removeAttribute","delete","hideOthers","from","activeParentNode","ownerDocument","getDefaultParent","apply","querySelectorAll","useHideOthers","undo","watch","unrefElement","onUnmounted","isPlainObject","Object","getPrototypeOf","Symbol","iterator","toStringTag","toString","_defu","baseObject","defaults","namespace","merger","object","assign","defu","arguments_","reduce","p","c","useBodyLockStackCount","createSharedComposable","Map","initialOverflow","locked","computed","values","context","scrollBody","stopTouchMoveListener","val","oldVal","style","paddingRight","marginRight","pointerEvents","removeProperty","overflow","isIOS","verticalScrollbarWidth","window","innerWidth","documentElement","clientWidth","defaultConfig","padding","margin","config","String","setProperty","useEventListener","rawEvent","_target","Element","checkOverflowScroll","touches","cancelable","passive","immediate","flush","useBodyScrollLock","initialState","id","Math","random","substring","tryOnBeforeUnmount","ele","getComputedStyle","overflowX","overflowY","scrollWidth","clientHeight","scrollHeight"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8]}