@tamagui/floating 2.7.6 → 3.0.0-beta.637.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/dist/cjs/Floating.cjs +10 -11
  2. package/dist/cjs/Floating.native.cjs +37 -0
  3. package/dist/cjs/Floating.native.js +20 -20
  4. package/dist/cjs/Floating.native.js.map +1 -1
  5. package/dist/cjs/index.cjs +45 -46
  6. package/dist/cjs/index.native.cjs +74 -0
  7. package/dist/cjs/index.native.js +45 -45
  8. package/dist/cjs/index.native.js.map +1 -1
  9. package/dist/cjs/interactions/PopupTriggerMap.cjs +36 -39
  10. package/dist/cjs/interactions/PopupTriggerMap.native.cjs +96 -0
  11. package/dist/cjs/interactions/PopupTriggerMap.native.js +76 -75
  12. package/dist/cjs/interactions/PopupTriggerMap.native.js.map +1 -1
  13. package/dist/cjs/interactions/createFloatingEvents.cjs +36 -39
  14. package/dist/cjs/interactions/createFloatingEvents.native.cjs +52 -0
  15. package/dist/cjs/interactions/createFloatingEvents.native.js +39 -41
  16. package/dist/cjs/interactions/createFloatingEvents.native.js.map +1 -1
  17. package/dist/cjs/interactions/safePolygon.cjs +263 -252
  18. package/dist/cjs/interactions/safePolygon.native.cjs +294 -0
  19. package/dist/cjs/interactions/safePolygon.native.js +271 -259
  20. package/dist/cjs/interactions/safePolygon.native.js.map +1 -1
  21. package/dist/cjs/interactions/types.cjs +10 -11
  22. package/dist/cjs/interactions/types.native.cjs +19 -0
  23. package/dist/cjs/interactions/types.native.js +10 -10
  24. package/dist/cjs/interactions/types.native.js.map +1 -1
  25. package/dist/cjs/interactions/useClick.cjs +96 -105
  26. package/dist/cjs/interactions/useClick.native.cjs +122 -0
  27. package/dist/cjs/interactions/useClick.native.js +101 -109
  28. package/dist/cjs/interactions/useClick.native.js.map +1 -1
  29. package/dist/cjs/interactions/useDelayGroup.cjs +86 -91
  30. package/dist/cjs/interactions/useDelayGroup.native.cjs +119 -0
  31. package/dist/cjs/interactions/useDelayGroup.native.js +92 -96
  32. package/dist/cjs/interactions/useDelayGroup.native.js.map +1 -1
  33. package/dist/cjs/interactions/useFocus.cjs +108 -115
  34. package/dist/cjs/interactions/useFocus.native.cjs +131 -0
  35. package/dist/cjs/interactions/useFocus.native.js +114 -120
  36. package/dist/cjs/interactions/useFocus.native.js.map +1 -1
  37. package/dist/cjs/interactions/useHover.cjs +321 -335
  38. package/dist/cjs/interactions/useHover.native.cjs +357 -0
  39. package/dist/cjs/interactions/useHover.native.js +333 -347
  40. package/dist/cjs/interactions/useHover.native.js.map +1 -1
  41. package/dist/cjs/interactions/useInnerOffset.cjs +103 -111
  42. package/dist/cjs/interactions/useInnerOffset.native.cjs +132 -0
  43. package/dist/cjs/interactions/useInnerOffset.native.js +113 -120
  44. package/dist/cjs/interactions/useInnerOffset.native.js.map +1 -1
  45. package/dist/cjs/interactions/useInteractions.cjs +85 -90
  46. package/dist/cjs/interactions/useInteractions.native.cjs +199 -0
  47. package/dist/cjs/interactions/useInteractions.native.js +180 -195
  48. package/dist/cjs/interactions/useInteractions.native.js.map +1 -1
  49. package/dist/cjs/interactions/useListNavigation.cjs +404 -390
  50. package/dist/cjs/interactions/useListNavigation.native.cjs +446 -0
  51. package/dist/cjs/interactions/useListNavigation.native.js +416 -401
  52. package/dist/cjs/interactions/useListNavigation.native.js.map +1 -1
  53. package/dist/cjs/interactions/useRole.cjs +92 -106
  54. package/dist/cjs/interactions/useRole.native.cjs +121 -0
  55. package/dist/cjs/interactions/useRole.native.js +103 -116
  56. package/dist/cjs/interactions/useRole.native.js.map +1 -1
  57. package/dist/cjs/interactions/useTypeahead.cjs +115 -129
  58. package/dist/cjs/interactions/useTypeahead.native.cjs +144 -0
  59. package/dist/cjs/interactions/useTypeahead.native.js +128 -141
  60. package/dist/cjs/interactions/useTypeahead.native.js.map +1 -1
  61. package/dist/cjs/interactions/utils.cjs +126 -143
  62. package/dist/cjs/interactions/utils.native.cjs +209 -0
  63. package/dist/cjs/interactions/utils.native.js +138 -154
  64. package/dist/cjs/interactions/utils.native.js.map +1 -1
  65. package/dist/cjs/middleware/inner.cjs +74 -101
  66. package/dist/cjs/middleware/inner.native.cjs +102 -0
  67. package/dist/cjs/middleware/inner.native.js +83 -109
  68. package/dist/cjs/middleware/inner.native.js.map +1 -1
  69. package/dist/cjs/useFloating.cjs +34 -46
  70. package/dist/cjs/useFloating.native.cjs +56 -0
  71. package/dist/cjs/useFloating.native.js +37 -48
  72. package/dist/cjs/useFloating.native.js.map +1 -1
  73. package/dist/esm/Floating.mjs +1 -2
  74. package/dist/esm/Floating.native.js +6 -4
  75. package/dist/esm/Floating.native.js.map +1 -1
  76. package/dist/esm/index.js +4 -5
  77. package/dist/esm/index.mjs +4 -5
  78. package/dist/esm/index.native.js +4 -5
  79. package/dist/esm/interactions/PopupTriggerMap.mjs +23 -22
  80. package/dist/esm/interactions/PopupTriggerMap.mjs.map +1 -1
  81. package/dist/esm/interactions/PopupTriggerMap.native.js +62 -58
  82. package/dist/esm/interactions/PopupTriggerMap.native.js.map +1 -1
  83. package/dist/esm/interactions/createFloatingEvents.mjs +22 -21
  84. package/dist/esm/interactions/createFloatingEvents.mjs.map +1 -1
  85. package/dist/esm/interactions/createFloatingEvents.native.js +25 -24
  86. package/dist/esm/interactions/createFloatingEvents.native.js.map +1 -1
  87. package/dist/esm/interactions/safePolygon.mjs +250 -234
  88. package/dist/esm/interactions/safePolygon.mjs.map +1 -1
  89. package/dist/esm/interactions/safePolygon.native.js +258 -242
  90. package/dist/esm/interactions/safePolygon.native.js.map +1 -1
  91. package/dist/esm/interactions/types.mjs +0 -2
  92. package/dist/esm/interactions/types.native.js +0 -2
  93. package/dist/esm/interactions/useClick.mjs +83 -87
  94. package/dist/esm/interactions/useClick.mjs.map +1 -1
  95. package/dist/esm/interactions/useClick.native.js +88 -92
  96. package/dist/esm/interactions/useClick.native.js.map +1 -1
  97. package/dist/esm/interactions/useDelayGroup.mjs +68 -65
  98. package/dist/esm/interactions/useDelayGroup.mjs.map +1 -1
  99. package/dist/esm/interactions/useDelayGroup.native.js +74 -71
  100. package/dist/esm/interactions/useDelayGroup.native.js.map +1 -1
  101. package/dist/esm/interactions/useFocus.mjs +95 -97
  102. package/dist/esm/interactions/useFocus.mjs.map +1 -1
  103. package/dist/esm/interactions/useFocus.native.js +101 -103
  104. package/dist/esm/interactions/useFocus.native.js.map +1 -1
  105. package/dist/esm/interactions/useHover.mjs +304 -310
  106. package/dist/esm/interactions/useHover.mjs.map +1 -1
  107. package/dist/esm/interactions/useHover.native.js +316 -323
  108. package/dist/esm/interactions/useHover.native.js.map +1 -1
  109. package/dist/esm/interactions/useInnerOffset.mjs +87 -85
  110. package/dist/esm/interactions/useInnerOffset.mjs.map +1 -1
  111. package/dist/esm/interactions/useInnerOffset.native.js +97 -95
  112. package/dist/esm/interactions/useInnerOffset.native.js.map +1 -1
  113. package/dist/esm/interactions/useInteractions.mjs +71 -72
  114. package/dist/esm/interactions/useInteractions.mjs.map +1 -1
  115. package/dist/esm/interactions/useInteractions.native.js +166 -178
  116. package/dist/esm/interactions/useInteractions.native.js.map +1 -1
  117. package/dist/esm/interactions/useListNavigation.mjs +392 -373
  118. package/dist/esm/interactions/useListNavigation.mjs.map +1 -1
  119. package/dist/esm/interactions/useListNavigation.native.js +404 -385
  120. package/dist/esm/interactions/useListNavigation.native.js.map +1 -1
  121. package/dist/esm/interactions/useRole.mjs +76 -80
  122. package/dist/esm/interactions/useRole.mjs.map +1 -1
  123. package/dist/esm/interactions/useRole.native.js +87 -91
  124. package/dist/esm/interactions/useRole.native.js.map +1 -1
  125. package/dist/esm/interactions/useTypeahead.mjs +102 -111
  126. package/dist/esm/interactions/useTypeahead.mjs.map +1 -1
  127. package/dist/esm/interactions/useTypeahead.native.js +115 -124
  128. package/dist/esm/interactions/useTypeahead.native.js.map +1 -1
  129. package/dist/esm/interactions/utils.mjs +91 -106
  130. package/dist/esm/interactions/utils.mjs.map +1 -1
  131. package/dist/esm/interactions/utils.native.js +103 -118
  132. package/dist/esm/interactions/utils.native.js.map +1 -1
  133. package/dist/esm/middleware/inner.mjs +58 -75
  134. package/dist/esm/middleware/inner.mjs.map +1 -1
  135. package/dist/esm/middleware/inner.native.js +67 -84
  136. package/dist/esm/middleware/inner.native.js.map +1 -1
  137. package/dist/esm/useFloating.mjs +17 -21
  138. package/dist/esm/useFloating.mjs.map +1 -1
  139. package/dist/esm/useFloating.native.js +19 -23
  140. package/dist/esm/useFloating.native.js.map +1 -1
  141. package/package.json +6 -5
  142. package/types/interactions/PopupTriggerMap.d.ts.map +1 -1
  143. package/types/interactions/useInteractions.d.ts.map +1 -1
  144. package/types/middleware/inner.d.ts.map +1 -1
  145. package/types/useFloating.d.ts.map +1 -1
  146. package/dist/esm/Floating.mjs.map +0 -1
  147. package/dist/esm/index.js.map +0 -1
  148. package/dist/esm/index.mjs.map +0 -1
  149. package/dist/esm/index.native.js.map +0 -1
  150. package/dist/esm/interactions/types.mjs.map +0 -1
  151. package/dist/esm/interactions/types.native.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useListNavigation_exports","__export","useListNavigation","module","exports","import_react","require","import_use_event","import_utils","ARROW_UP","ARROW_DOWN","ARROW_LEFT","ARROW_RIGHT","doSwitch","orientation","vertical","horizontal","isMainOrientationKey","key","isMainOrientationToEndKey","rtl","isCrossOrientationOpenKey","isCrossOrientationCloseKey","context","props","open","onOpenChange","elements","listRef","activeIndex","onNavigate","unstable_onNavigate","enabled","selectedIndex","allowEscape","loop","nested","virtual","focusItemOnOpen","focusItemOnHover","openOnArrowKeyDown","disabledIndices","scrollItemIntoView","typeableComboboxReference","isTypeableCombobox","domReference","focusItemOnOpenRef","useRef","indexRef","keyRef","isPointerModalityRef","previousMountedRef","floating","previousOpenRef","forceSyncFocusRef","forceScrollIntoViewRef","disabledIndicesRef","current","latestOpenRef","scrollItemIntoViewRef","selectedIndexRef","stableOnNavigate","useEvent","activeId","setActiveId","useState","previousOnNavigateRef","focusItem","runFocus","item2","id","enqueueFocus","sync","preventScroll","initialItem","forceScrollIntoView","scheduler","v","requestAnimationFrame","waitedItem","scrollIntoViewOptions","shouldScrollIntoView","_waitedItem_scrollIntoView","scrollIntoView","call","block","inline","useLayoutEffect","runs","waitForListPopulated","queueMicrotask","getMinListIndex","getMaxListIndex","isIndexOutOfListBounds","hasActiveIndex","commonOnKeyDown","event","which","currentTarget","stopEvent","nativeEvent","isHTMLElement","focus","currentIndex","minIndex","maxIndex","activeElement","ownerDocument","length","findNonDisabledListIndex","startingIndex","Math","min","decrement","max","ariaActiveDescendantProp","useMemo","onKeyDown","onPointerMove","reference","checkVirtualMouse","isVirtualClick","checkVirtualPointer","isVirtualPointerEvent","isArrowKey","startsWith","isCrossOpenKey","isMainKey","isNavigationKey","trim","onFocus","onPointerDown","onPointerEnter","onMouseDown","onClick","item","syncCurrentTarget","index","indexOf","itemProps","param","onMouseMove","onPointerLeave","pointerType","_elements_floating"],"sources":["../../../src/interactions/useListNavigation.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useListNavigation.native.js","names":[],"sources":["cjs/interactions/useListNavigation.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar useListNavigation_exports = {};\n__export(useListNavigation_exports, {\n useListNavigation: () => useListNavigation\n});\nmodule.exports = __toCommonJS(useListNavigation_exports);\nvar import_react = require(\"react\");\nvar import_use_event = require(\"@tamagui/use-event\");\nvar import_utils = require(\"./utils\");\nvar ARROW_UP = \"ArrowUp\";\nvar ARROW_DOWN = \"ArrowDown\";\nvar ARROW_LEFT = \"ArrowLeft\";\nvar ARROW_RIGHT = \"ArrowRight\";\nfunction doSwitch(orientation, vertical, horizontal) {\n switch (orientation) {\n case \"vertical\":\n return vertical;\n case \"horizontal\":\n return horizontal;\n default:\n return vertical || horizontal;\n }\n}\nfunction isMainOrientationKey(key, orientation) {\n var vertical = key === ARROW_UP || key === ARROW_DOWN;\n var horizontal = key === ARROW_LEFT || key === ARROW_RIGHT;\n return doSwitch(orientation, vertical, horizontal);\n}\nfunction isMainOrientationToEndKey(key, orientation, rtl) {\n var vertical = key === ARROW_DOWN;\n var horizontal = rtl ? key === ARROW_LEFT : key === ARROW_RIGHT;\n return doSwitch(orientation, vertical, horizontal) || key === \"Enter\" || key === \" \" || key === \"\";\n}\nfunction isCrossOrientationOpenKey(key, orientation, rtl) {\n var vertical = rtl ? key === ARROW_LEFT : key === ARROW_RIGHT;\n var horizontal = key === ARROW_DOWN;\n return doSwitch(orientation, vertical, horizontal);\n}\nfunction isCrossOrientationCloseKey(key, orientation, rtl) {\n var vertical = rtl ? key === ARROW_RIGHT : key === ARROW_LEFT;\n var horizontal = key === ARROW_UP;\n return doSwitch(orientation, vertical, horizontal);\n}\nfunction useListNavigation(context, props) {\n var { open, onOpenChange, elements } = context;\n var { listRef, activeIndex, onNavigate: unstable_onNavigate = function() {\n }, enabled = true, selectedIndex = null, allowEscape = false, loop = false, nested = false, rtl = false, virtual = false, focusItemOnOpen = \"auto\", focusItemOnHover = true, openOnArrowKeyDown = true, disabledIndices = void 0, orientation = \"vertical\", scrollItemIntoView = true } = props;\n var typeableComboboxReference = (0, import_utils.isTypeableCombobox)(elements.domReference);\n var focusItemOnOpenRef = (0, import_react.useRef)(focusItemOnOpen);\n var indexRef = (0, import_react.useRef)(selectedIndex !== null && selectedIndex !== void 0 ? selectedIndex : -1);\n var keyRef = (0, import_react.useRef)(null);\n var isPointerModalityRef = (0, import_react.useRef)(true);\n var previousMountedRef = (0, import_react.useRef)(!!elements.floating);\n var previousOpenRef = (0, import_react.useRef)(open);\n var forceSyncFocusRef = (0, import_react.useRef)(false);\n var forceScrollIntoViewRef = (0, import_react.useRef)(false);\n var disabledIndicesRef = (0, import_react.useRef)(disabledIndices);\n disabledIndicesRef.current = disabledIndices;\n var latestOpenRef = (0, import_react.useRef)(open);\n latestOpenRef.current = open;\n var scrollItemIntoViewRef = (0, import_react.useRef)(scrollItemIntoView);\n scrollItemIntoViewRef.current = scrollItemIntoView;\n var selectedIndexRef = (0, import_react.useRef)(selectedIndex);\n selectedIndexRef.current = selectedIndex;\n var stableOnNavigate = (0, import_use_event.useEvent)(unstable_onNavigate);\n var [activeId, setActiveId] = (0, import_react.useState)();\n var onNavigate = (0, import_use_event.useEvent)(function() {\n stableOnNavigate(indexRef.current === -1 ? null : indexRef.current);\n });\n var previousOnNavigateRef = (0, import_react.useRef)(onNavigate);\n var focusItem = (0, import_use_event.useEvent)(function() {\n function runFocus(item2) {\n if (virtual) {\n setActiveId(item2.id);\n } else {\n (0, import_utils.enqueueFocus)(item2, {\n sync: forceSyncFocusRef.current,\n preventScroll: true\n });\n }\n }\n var initialItem = listRef.current[indexRef.current];\n var forceScrollIntoView = forceScrollIntoViewRef.current;\n if (initialItem) {\n runFocus(initialItem);\n }\n var scheduler = forceSyncFocusRef.current ? function(v) {\n return v();\n } : requestAnimationFrame;\n scheduler(function() {\n var waitedItem = listRef.current[indexRef.current] || initialItem;\n if (!waitedItem) return;\n if (!initialItem) {\n runFocus(waitedItem);\n }\n var scrollIntoViewOptions = scrollItemIntoViewRef.current;\n var shouldScrollIntoView = scrollIntoViewOptions && waitedItem && (forceScrollIntoView || !isPointerModalityRef.current);\n if (shouldScrollIntoView) {\n var _waitedItem_scrollIntoView;\n (_waitedItem_scrollIntoView = waitedItem.scrollIntoView) === null || _waitedItem_scrollIntoView === void 0 ? void 0 : _waitedItem_scrollIntoView.call(waitedItem, typeof scrollIntoViewOptions === \"boolean\" ? {\n block: \"nearest\",\n inline: \"nearest\"\n } : scrollIntoViewOptions);\n }\n });\n });\n (0, import_react.useLayoutEffect)(function() {\n if (!enabled) return;\n if (open && elements.floating) {\n if (focusItemOnOpenRef.current && selectedIndex != null) {\n forceScrollIntoViewRef.current = true;\n indexRef.current = selectedIndex;\n onNavigate();\n }\n } else if (previousMountedRef.current) {\n indexRef.current = -1;\n previousOnNavigateRef.current();\n }\n }, [\n enabled,\n open,\n elements.floating,\n selectedIndex,\n onNavigate\n ]);\n (0, import_react.useLayoutEffect)(function() {\n if (!enabled) return;\n if (!open) return;\n if (!elements.floating) return;\n if (activeIndex == null) {\n forceSyncFocusRef.current = false;\n if (selectedIndexRef.current != null) {\n return;\n }\n if (previousMountedRef.current) {\n indexRef.current = -1;\n focusItem();\n }\n if ((!previousOpenRef.current || !previousMountedRef.current) && focusItemOnOpenRef.current && (keyRef.current != null || focusItemOnOpenRef.current === true && keyRef.current == null)) {\n var runs = 0;\n var waitForListPopulated = function() {\n if (listRef.current[0] == null) {\n if (runs < 2) {\n var scheduler = runs ? requestAnimationFrame : queueMicrotask;\n scheduler(waitForListPopulated);\n }\n runs++;\n } else {\n indexRef.current = keyRef.current == null || isMainOrientationToEndKey(keyRef.current, orientation, rtl) || nested ? (0, import_utils.getMinListIndex)(listRef, disabledIndicesRef.current) : (0, import_utils.getMaxListIndex)(listRef, disabledIndicesRef.current);\n keyRef.current = null;\n onNavigate();\n }\n };\n waitForListPopulated();\n }\n } else if (!(0, import_utils.isIndexOutOfListBounds)(listRef, activeIndex)) {\n indexRef.current = activeIndex;\n focusItem();\n forceScrollIntoViewRef.current = false;\n }\n }, [\n enabled,\n open,\n elements.floating,\n activeIndex,\n selectedIndexRef,\n nested,\n listRef,\n orientation,\n rtl,\n onNavigate,\n focusItem,\n disabledIndicesRef\n ]);\n (0, import_react.useLayoutEffect)(function() {\n previousOnNavigateRef.current = onNavigate;\n previousOpenRef.current = open;\n previousMountedRef.current = !!elements.floating;\n });\n (0, import_react.useLayoutEffect)(function() {\n if (!open) {\n keyRef.current = null;\n focusItemOnOpenRef.current = focusItemOnOpen;\n }\n }, [\n open,\n focusItemOnOpen\n ]);\n var hasActiveIndex = activeIndex != null;\n var commonOnKeyDown = (0, import_use_event.useEvent)(function(event) {\n isPointerModalityRef.current = false;\n forceSyncFocusRef.current = true;\n if (event.which === 229) {\n return;\n }\n if (!latestOpenRef.current && event.currentTarget === elements.floating) {\n return;\n }\n if (nested && isCrossOrientationCloseKey(event.key, orientation, rtl)) {\n (0, import_utils.stopEvent)(event);\n onOpenChange(false, event.nativeEvent, \"list-navigation\");\n if ((0, import_utils.isHTMLElement)(elements.domReference)) {\n elements.domReference.focus();\n }\n return;\n }\n var currentIndex = indexRef.current;\n var minIndex = (0, import_utils.getMinListIndex)(listRef, disabledIndices);\n var maxIndex = (0, import_utils.getMaxListIndex)(listRef, disabledIndices);\n if (!typeableComboboxReference) {\n if (event.key === \"Home\") {\n (0, import_utils.stopEvent)(event);\n indexRef.current = minIndex;\n onNavigate();\n }\n if (event.key === \"End\") {\n (0, import_utils.stopEvent)(event);\n indexRef.current = maxIndex;\n onNavigate();\n }\n }\n if (isMainOrientationKey(event.key, orientation)) {\n (0, import_utils.stopEvent)(event);\n if (open && !virtual && (0, import_utils.activeElement)(event.currentTarget.ownerDocument) === event.currentTarget) {\n indexRef.current = isMainOrientationToEndKey(event.key, orientation, rtl) ? minIndex : maxIndex;\n onNavigate();\n return;\n }\n if (isMainOrientationToEndKey(event.key, orientation, rtl)) {\n if (loop) {\n indexRef.current = currentIndex >= maxIndex ? allowEscape && currentIndex !== listRef.current.length ? -1 : minIndex : (0, import_utils.findNonDisabledListIndex)(listRef, {\n startingIndex: currentIndex,\n disabledIndices\n });\n } else {\n indexRef.current = Math.min(maxIndex, (0, import_utils.findNonDisabledListIndex)(listRef, {\n startingIndex: currentIndex,\n disabledIndices\n }));\n }\n } else {\n if (loop) {\n indexRef.current = currentIndex <= minIndex ? allowEscape && currentIndex !== -1 ? listRef.current.length : maxIndex : (0, import_utils.findNonDisabledListIndex)(listRef, {\n startingIndex: currentIndex,\n decrement: true,\n disabledIndices\n });\n } else {\n indexRef.current = Math.max(minIndex, (0, import_utils.findNonDisabledListIndex)(listRef, {\n startingIndex: currentIndex,\n decrement: true,\n disabledIndices\n }));\n }\n }\n if ((0, import_utils.isIndexOutOfListBounds)(listRef, indexRef.current)) {\n indexRef.current = -1;\n }\n onNavigate();\n }\n });\n var ariaActiveDescendantProp = (0, import_react.useMemo)(function() {\n return virtual && open && hasActiveIndex && {\n \"aria-activedescendant\": activeId\n };\n }, [\n virtual,\n open,\n hasActiveIndex,\n activeId\n ]);\n var floating = (0, import_react.useMemo)(function() {\n return {\n \"aria-orientation\": orientation === \"both\" ? void 0 : orientation,\n ...!typeableComboboxReference ? ariaActiveDescendantProp : {},\n onKeyDown: commonOnKeyDown,\n onPointerMove() {\n isPointerModalityRef.current = true;\n }\n };\n }, [\n ariaActiveDescendantProp,\n commonOnKeyDown,\n orientation,\n typeableComboboxReference\n ]);\n var reference = (0, import_react.useMemo)(function() {\n function checkVirtualMouse(event) {\n if (focusItemOnOpen === \"auto\" && (0, import_utils.isVirtualClick)(event.nativeEvent)) {\n focusItemOnOpenRef.current = true;\n }\n }\n function checkVirtualPointer(event) {\n focusItemOnOpenRef.current = focusItemOnOpen;\n if (focusItemOnOpen === \"auto\" && (0, import_utils.isVirtualPointerEvent)(event.nativeEvent)) {\n focusItemOnOpenRef.current = true;\n }\n }\n return {\n ...ariaActiveDescendantProp,\n onKeyDown(event) {\n isPointerModalityRef.current = false;\n var isArrowKey = event.key.startsWith(\"Arrow\");\n var isCrossOpenKey = isCrossOrientationOpenKey(event.key, orientation, rtl);\n var isMainKey = isMainOrientationKey(event.key, orientation);\n var isNavigationKey = (nested ? isCrossOpenKey : isMainKey) || event.key === \"Enter\" || event.key.trim() === \"\";\n if (virtual && open) {\n return commonOnKeyDown(event);\n }\n if (!open && !openOnArrowKeyDown && isArrowKey) {\n return;\n }\n if (isNavigationKey) {\n keyRef.current = event.key;\n }\n if (nested) {\n if (isCrossOpenKey) {\n (0, import_utils.stopEvent)(event);\n if (open) {\n indexRef.current = (0, import_utils.getMinListIndex)(listRef, disabledIndicesRef.current);\n onNavigate();\n } else {\n onOpenChange(true, event.nativeEvent, \"list-navigation\");\n }\n }\n return;\n }\n if (isMainKey) {\n if (selectedIndex != null) {\n indexRef.current = selectedIndex;\n }\n (0, import_utils.stopEvent)(event);\n if (!open && openOnArrowKeyDown) {\n onOpenChange(true, event.nativeEvent, \"list-navigation\");\n } else {\n commonOnKeyDown(event);\n }\n if (open) {\n onNavigate();\n }\n }\n },\n onFocus() {\n if (open && !virtual) {\n indexRef.current = -1;\n onNavigate();\n }\n },\n onPointerDown: checkVirtualPointer,\n onPointerEnter: checkVirtualPointer,\n onMouseDown: checkVirtualMouse,\n onClick: checkVirtualMouse\n };\n }, [\n ariaActiveDescendantProp,\n commonOnKeyDown,\n disabledIndicesRef,\n focusItemOnOpen,\n listRef,\n nested,\n onNavigate,\n onOpenChange,\n open,\n openOnArrowKeyDown,\n orientation,\n rtl,\n selectedIndex,\n virtual\n ]);\n var item = (0, import_react.useMemo)(function() {\n function syncCurrentTarget(currentTarget) {\n if (!latestOpenRef.current) return;\n var index = listRef.current.indexOf(currentTarget);\n if (index !== -1 && indexRef.current !== index) {\n indexRef.current = index;\n onNavigate();\n }\n }\n var itemProps = {\n onFocus(param) {\n var { currentTarget } = param;\n forceSyncFocusRef.current = true;\n syncCurrentTarget(currentTarget);\n },\n onClick: function(param) {\n var { currentTarget } = param;\n return currentTarget.focus({\n preventScroll: true\n });\n },\n // safari\n onMouseMove(param) {\n var { currentTarget } = param;\n forceSyncFocusRef.current = true;\n forceScrollIntoViewRef.current = false;\n if (focusItemOnHover) {\n syncCurrentTarget(currentTarget);\n }\n },\n onPointerLeave(param) {\n var { pointerType } = param;\n if (!isPointerModalityRef.current || pointerType === \"touch\") {\n return;\n }\n forceSyncFocusRef.current = true;\n if (!focusItemOnHover) {\n return;\n }\n indexRef.current = -1;\n onNavigate();\n if (!virtual) {\n var _elements_floating;\n (_elements_floating = elements.floating) === null || _elements_floating === void 0 ? void 0 : _elements_floating.focus({\n preventScroll: true\n });\n }\n }\n };\n return itemProps;\n }, [\n latestOpenRef,\n focusItemOnHover,\n listRef,\n onNavigate,\n virtual,\n elements.floating\n ]);\n return (0, import_react.useMemo)(function() {\n return enabled ? {\n reference,\n floating,\n item\n } : {};\n }, [\n enabled,\n reference,\n floating,\n item\n ]);\n}\n//# sourceMappingURL=useListNavigation.js.map\n"],"mappings":";;;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,4BAA4B,CAAC;AACjC,SAAS,2BAA2B,EAClC,yBAAyB,kBAC3B,CAAC;AACD,OAAO,UAAU,aAAa,yBAAyB;AACvD,IAAI,eAAe,QAAQ,OAAO;AAClC,IAAI,mBAAmB,QAAQ,oBAAoB;AACnD,IAAI,eAAe,QAAQ,mBAAS;AACpC,IAAI,WAAW;AACf,IAAI,aAAa;AACjB,IAAI,aAAa;AACjB,IAAI,cAAc;AAClB,SAAS,SAAS,aAAa,UAAU,YAAY;CACnD,QAAQ,aAAR;EACE,KAAK,YACH,OAAO;EACT,KAAK,cACH,OAAO;EACT,SACE,OAAO,YAAY;CACvB;AACF;AACA,SAAS,qBAAqB,KAAK,aAAa;CAC9C,IAAI,WAAW,QAAQ,YAAY,QAAQ;CAC3C,IAAI,aAAa,QAAQ,cAAc,QAAQ;CAC/C,OAAO,SAAS,aAAa,UAAU,UAAU;AACnD;AACA,SAAS,0BAA0B,KAAK,aAAa,KAAK;CACxD,IAAI,WAAW,QAAQ;CACvB,IAAI,aAAa,MAAM,QAAQ,aAAa,QAAQ;CACpD,OAAO,SAAS,aAAa,UAAU,UAAU,KAAK,QAAQ,WAAW,QAAQ,OAAO,QAAQ;AAClG;AACA,SAAS,0BAA0B,KAAK,aAAa,KAAK;CACxD,IAAI,WAAW,MAAM,QAAQ,aAAa,QAAQ;CAClD,IAAI,aAAa,QAAQ;CACzB,OAAO,SAAS,aAAa,UAAU,UAAU;AACnD;AACA,SAAS,2BAA2B,KAAK,aAAa,KAAK;CACzD,IAAI,WAAW,MAAM,QAAQ,cAAc,QAAQ;CACnD,IAAI,aAAa,QAAQ;CACzB,OAAO,SAAS,aAAa,UAAU,UAAU;AACnD;AACA,SAAS,kBAAkB,SAAS,OAAO;CACzC,IAAI,EAAE,MAAM,cAAc,aAAa;CACvC,IAAI,EAAE,SAAS,aAAa,YAAY,sBAAsB,WAAW,CACzE,GAAG,UAAU,MAAM,gBAAgB,MAAM,cAAc,OAAO,OAAO,OAAO,SAAS,OAAO,MAAM,OAAO,UAAU,OAAO,kBAAkB,QAAQ,mBAAmB,MAAM,qBAAqB,MAAM,kBAAkB,KAAK,GAAG,cAAc,YAAY,qBAAqB,SAAS;CAC1R,IAAI,6BAA6B,GAAG,aAAa,oBAAoB,SAAS,YAAY;CAC1F,IAAI,sBAAsB,GAAG,aAAa,QAAQ,eAAe;CACjE,IAAI,YAAY,GAAG,aAAa,QAAQ,kBAAkB,QAAQ,kBAAkB,KAAK,IAAI,gBAAgB,CAAC,CAAC;CAC/G,IAAI,UAAU,GAAG,aAAa,QAAQ,IAAI;CAC1C,IAAI,wBAAwB,GAAG,aAAa,QAAQ,IAAI;CACxD,IAAI,sBAAsB,GAAG,aAAa,QAAQ,CAAC,CAAC,SAAS,QAAQ;CACrE,IAAI,mBAAmB,GAAG,aAAa,QAAQ,IAAI;CACnD,IAAI,qBAAqB,GAAG,aAAa,QAAQ,KAAK;CACtD,IAAI,0BAA0B,GAAG,aAAa,QAAQ,KAAK;CAC3D,IAAI,sBAAsB,GAAG,aAAa,QAAQ,eAAe;CACjE,mBAAmB,UAAU;CAC7B,IAAI,iBAAiB,GAAG,aAAa,QAAQ,IAAI;CACjD,cAAc,UAAU;CACxB,IAAI,yBAAyB,GAAG,aAAa,QAAQ,kBAAkB;CACvE,sBAAsB,UAAU;CAChC,IAAI,oBAAoB,GAAG,aAAa,QAAQ,aAAa;CAC7D,iBAAiB,UAAU;CAC3B,IAAI,oBAAoB,GAAG,iBAAiB,UAAU,mBAAmB;CACzE,IAAI,CAAC,UAAU,gBAAgB,GAAG,aAAa,UAAU;CACzD,IAAI,cAAc,GAAG,iBAAiB,UAAU,WAAW;EACzD,iBAAiB,SAAS,YAAY,CAAC,IAAI,OAAO,SAAS,OAAO;CACpE,CAAC;CACD,IAAI,yBAAyB,GAAG,aAAa,QAAQ,UAAU;CAC/D,IAAI,aAAa,GAAG,iBAAiB,UAAU,WAAW;EACxD,SAAS,SAAS,OAAO;GACvB,IAAI,SAAS;IACX,YAAY,MAAM,EAAE;GACtB,OAAO;IACL,CAAC,GAAG,aAAa,cAAc,OAAO;KACpC,MAAM,kBAAkB;KACxB,eAAe;IACjB,CAAC;GACH;EACF;EACA,IAAI,cAAc,QAAQ,QAAQ,SAAS;EAC3C,IAAI,sBAAsB,uBAAuB;EACjD,IAAI,aAAa;GACf,SAAS,WAAW;EACtB;EACA,IAAI,YAAY,kBAAkB,UAAU,SAAS,GAAG;GACtD,OAAO,EAAE;EACX,IAAI;EACJ,UAAU,WAAW;GACnB,IAAI,aAAa,QAAQ,QAAQ,SAAS,YAAY;GACtD,IAAI,CAAC,YAAY;GACjB,IAAI,CAAC,aAAa;IAChB,SAAS,UAAU;GACrB;GACA,IAAI,wBAAwB,sBAAsB;GAClD,IAAI,uBAAuB,yBAAyB,eAAe,uBAAuB,CAAC,qBAAqB;GAChH,IAAI,sBAAsB;IACxB,IAAI;IACJ,CAAC,6BAA6B,WAAW,oBAAoB,QAAQ,+BAA+B,KAAK,IAAI,KAAK,IAAI,2BAA2B,KAAK,YAAY,OAAO,0BAA0B,YAAY;KAC7M,OAAO;KACP,QAAQ;IACV,IAAI,qBAAqB;GAC3B;EACF,CAAC;CACH,CAAC;CACD,CAAC,GAAG,aAAa,iBAAiB,WAAW;EAC3C,IAAI,CAAC,SAAS;EACd,IAAI,QAAQ,SAAS,UAAU;GAC7B,IAAI,mBAAmB,WAAW,iBAAiB,MAAM;IACvD,uBAAuB,UAAU;IACjC,SAAS,UAAU;IACnB,WAAW;GACb;EACF,OAAO,IAAI,mBAAmB,SAAS;GACrC,SAAS,UAAU,CAAC;GACpB,sBAAsB,QAAQ;EAChC;CACF,GAAG;EACD;EACA;EACA,SAAS;EACT;EACA;CACF,CAAC;CACD,CAAC,GAAG,aAAa,iBAAiB,WAAW;EAC3C,IAAI,CAAC,SAAS;EACd,IAAI,CAAC,MAAM;EACX,IAAI,CAAC,SAAS,UAAU;EACxB,IAAI,eAAe,MAAM;GACvB,kBAAkB,UAAU;GAC5B,IAAI,iBAAiB,WAAW,MAAM;IACpC;GACF;GACA,IAAI,mBAAmB,SAAS;IAC9B,SAAS,UAAU,CAAC;IACpB,UAAU;GACZ;GACA,KAAK,CAAC,gBAAgB,WAAW,CAAC,mBAAmB,YAAY,mBAAmB,YAAY,OAAO,WAAW,QAAQ,mBAAmB,YAAY,QAAQ,OAAO,WAAW,OAAO;IACxL,IAAI,OAAO;IACX,IAAI,uBAAuB,WAAW;KACpC,IAAI,QAAQ,QAAQ,MAAM,MAAM;MAC9B,IAAI,OAAO,GAAG;OACZ,IAAI,YAAY,OAAO,wBAAwB;OAC/C,UAAU,oBAAoB;MAChC;MACA;KACF,OAAO;MACL,SAAS,UAAU,OAAO,WAAW,QAAQ,0BAA0B,OAAO,SAAS,aAAa,GAAG,KAAK,UAAU,GAAG,aAAa,iBAAiB,SAAS,mBAAmB,OAAO,KAAK,GAAG,aAAa,iBAAiB,SAAS,mBAAmB,OAAO;MACnQ,OAAO,UAAU;MACjB,WAAW;KACb;IACF;IACA,qBAAqB;GACvB;EACF,OAAO,IAAI,EAAE,GAAG,aAAa,wBAAwB,SAAS,WAAW,GAAG;GAC1E,SAAS,UAAU;GACnB,UAAU;GACV,uBAAuB,UAAU;EACnC;CACF,GAAG;EACD;EACA;EACA,SAAS;EACT;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CACD,CAAC,GAAG,aAAa,iBAAiB,WAAW;EAC3C,sBAAsB,UAAU;EAChC,gBAAgB,UAAU;EAC1B,mBAAmB,UAAU,CAAC,CAAC,SAAS;CAC1C,CAAC;CACD,CAAC,GAAG,aAAa,iBAAiB,WAAW;EAC3C,IAAI,CAAC,MAAM;GACT,OAAO,UAAU;GACjB,mBAAmB,UAAU;EAC/B;CACF,GAAG,CACD,MACA,eACF,CAAC;CACD,IAAI,iBAAiB,eAAe;CACpC,IAAI,mBAAmB,GAAG,iBAAiB,UAAU,SAAS,OAAO;EACnE,qBAAqB,UAAU;EAC/B,kBAAkB,UAAU;EAC5B,IAAI,MAAM,UAAU,KAAK;GACvB;EACF;EACA,IAAI,CAAC,cAAc,WAAW,MAAM,kBAAkB,SAAS,UAAU;GACvE;EACF;EACA,IAAI,UAAU,2BAA2B,MAAM,KAAK,aAAa,GAAG,GAAG;GACrE,CAAC,GAAG,aAAa,WAAW,KAAK;GACjC,aAAa,OAAO,MAAM,aAAa,iBAAiB;GACxD,KAAK,GAAG,aAAa,eAAe,SAAS,YAAY,GAAG;IAC1D,SAAS,aAAa,MAAM;GAC9B;GACA;EACF;EACA,IAAI,eAAe,SAAS;EAC5B,IAAI,YAAY,GAAG,aAAa,iBAAiB,SAAS,eAAe;EACzE,IAAI,YAAY,GAAG,aAAa,iBAAiB,SAAS,eAAe;EACzE,IAAI,CAAC,2BAA2B;GAC9B,IAAI,MAAM,QAAQ,QAAQ;IACxB,CAAC,GAAG,aAAa,WAAW,KAAK;IACjC,SAAS,UAAU;IACnB,WAAW;GACb;GACA,IAAI,MAAM,QAAQ,OAAO;IACvB,CAAC,GAAG,aAAa,WAAW,KAAK;IACjC,SAAS,UAAU;IACnB,WAAW;GACb;EACF;EACA,IAAI,qBAAqB,MAAM,KAAK,WAAW,GAAG;GAChD,CAAC,GAAG,aAAa,WAAW,KAAK;GACjC,IAAI,QAAQ,CAAC,YAAY,GAAG,aAAa,eAAe,MAAM,cAAc,aAAa,MAAM,MAAM,eAAe;IAClH,SAAS,UAAU,0BAA0B,MAAM,KAAK,aAAa,GAAG,IAAI,WAAW;IACvF,WAAW;IACX;GACF;GACA,IAAI,0BAA0B,MAAM,KAAK,aAAa,GAAG,GAAG;IAC1D,IAAI,MAAM;KACR,SAAS,UAAU,gBAAgB,WAAW,eAAe,iBAAiB,QAAQ,QAAQ,SAAS,CAAC,IAAI,YAAY,GAAG,aAAa,0BAA0B,SAAS;MACzK,eAAe;MACf;KACF,CAAC;IACH,OAAO;KACL,SAAS,UAAU,KAAK,IAAI,WAAW,GAAG,aAAa,0BAA0B,SAAS;MACxF,eAAe;MACf;KACF,CAAC,CAAC;IACJ;GACF,OAAO;IACL,IAAI,MAAM;KACR,SAAS,UAAU,gBAAgB,WAAW,eAAe,iBAAiB,CAAC,IAAI,QAAQ,QAAQ,SAAS,YAAY,GAAG,aAAa,0BAA0B,SAAS;MACzK,eAAe;MACf,WAAW;MACX;KACF,CAAC;IACH,OAAO;KACL,SAAS,UAAU,KAAK,IAAI,WAAW,GAAG,aAAa,0BAA0B,SAAS;MACxF,eAAe;MACf,WAAW;MACX;KACF,CAAC,CAAC;IACJ;GACF;GACA,KAAK,GAAG,aAAa,wBAAwB,SAAS,SAAS,OAAO,GAAG;IACvE,SAAS,UAAU,CAAC;GACtB;GACA,WAAW;EACb;CACF,CAAC;CACD,IAAI,4BAA4B,GAAG,aAAa,SAAS,WAAW;EAClE,OAAO,WAAW,QAAQ,kBAAkB,EAC1C,yBAAyB,SAC3B;CACF,GAAG;EACD;EACA;EACA;EACA;CACF,CAAC;CACD,IAAI,YAAY,GAAG,aAAa,SAAS,WAAW;EAClD,OAAO;GACL,oBAAoB,gBAAgB,SAAS,KAAK,IAAI;GACtD,GAAG,CAAC,4BAA4B,2BAA2B,CAAC;GAC5D,WAAW;GACX,gBAAgB;IACd,qBAAqB,UAAU;GACjC;EACF;CACF,GAAG;EACD;EACA;EACA;EACA;CACF,CAAC;CACD,IAAI,aAAa,GAAG,aAAa,SAAS,WAAW;EACnD,SAAS,kBAAkB,OAAO;GAChC,IAAI,oBAAoB,WAAW,GAAG,aAAa,gBAAgB,MAAM,WAAW,GAAG;IACrF,mBAAmB,UAAU;GAC/B;EACF;EACA,SAAS,oBAAoB,OAAO;GAClC,mBAAmB,UAAU;GAC7B,IAAI,oBAAoB,WAAW,GAAG,aAAa,uBAAuB,MAAM,WAAW,GAAG;IAC5F,mBAAmB,UAAU;GAC/B;EACF;EACA,OAAO;GACL,GAAG;GACH,UAAU,OAAO;IACf,qBAAqB,UAAU;IAC/B,IAAI,aAAa,MAAM,IAAI,WAAW,OAAO;IAC7C,IAAI,iBAAiB,0BAA0B,MAAM,KAAK,aAAa,GAAG;IAC1E,IAAI,YAAY,qBAAqB,MAAM,KAAK,WAAW;IAC3D,IAAI,mBAAmB,SAAS,iBAAiB,cAAc,MAAM,QAAQ,WAAW,MAAM,IAAI,KAAK,MAAM;IAC7G,IAAI,WAAW,MAAM;KACnB,OAAO,gBAAgB,KAAK;IAC9B;IACA,IAAI,CAAC,QAAQ,CAAC,sBAAsB,YAAY;KAC9C;IACF;IACA,IAAI,iBAAiB;KACnB,OAAO,UAAU,MAAM;IACzB;IACA,IAAI,QAAQ;KACV,IAAI,gBAAgB;MAClB,CAAC,GAAG,aAAa,WAAW,KAAK;MACjC,IAAI,MAAM;OACR,SAAS,WAAW,GAAG,aAAa,iBAAiB,SAAS,mBAAmB,OAAO;OACxF,WAAW;MACb,OAAO;OACL,aAAa,MAAM,MAAM,aAAa,iBAAiB;MACzD;KACF;KACA;IACF;IACA,IAAI,WAAW;KACb,IAAI,iBAAiB,MAAM;MACzB,SAAS,UAAU;KACrB;KACA,CAAC,GAAG,aAAa,WAAW,KAAK;KACjC,IAAI,CAAC,QAAQ,oBAAoB;MAC/B,aAAa,MAAM,MAAM,aAAa,iBAAiB;KACzD,OAAO;MACL,gBAAgB,KAAK;KACvB;KACA,IAAI,MAAM;MACR,WAAW;KACb;IACF;GACF;GACA,UAAU;IACR,IAAI,QAAQ,CAAC,SAAS;KACpB,SAAS,UAAU,CAAC;KACpB,WAAW;IACb;GACF;GACA,eAAe;GACf,gBAAgB;GAChB,aAAa;GACb,SAAS;EACX;CACF,GAAG;EACD;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CACD,IAAI,QAAQ,GAAG,aAAa,SAAS,WAAW;EAC9C,SAAS,kBAAkB,eAAe;GACxC,IAAI,CAAC,cAAc,SAAS;GAC5B,IAAI,QAAQ,QAAQ,QAAQ,QAAQ,aAAa;GACjD,IAAI,UAAU,CAAC,KAAK,SAAS,YAAY,OAAO;IAC9C,SAAS,UAAU;IACnB,WAAW;GACb;EACF;EACA,IAAI,YAAY;GACd,QAAQ,OAAO;IACb,IAAI,EAAE,kBAAkB;IACxB,kBAAkB,UAAU;IAC5B,kBAAkB,aAAa;GACjC;GACA,SAAS,SAAS,OAAO;IACvB,IAAI,EAAE,kBAAkB;IACxB,OAAO,cAAc,MAAM,EACzB,eAAe,KACjB,CAAC;GACH;GAEA,YAAY,OAAO;IACjB,IAAI,EAAE,kBAAkB;IACxB,kBAAkB,UAAU;IAC5B,uBAAuB,UAAU;IACjC,IAAI,kBAAkB;KACpB,kBAAkB,aAAa;IACjC;GACF;GACA,eAAe,OAAO;IACpB,IAAI,EAAE,gBAAgB;IACtB,IAAI,CAAC,qBAAqB,WAAW,gBAAgB,SAAS;KAC5D;IACF;IACA,kBAAkB,UAAU;IAC5B,IAAI,CAAC,kBAAkB;KACrB;IACF;IACA,SAAS,UAAU,CAAC;IACpB,WAAW;IACX,IAAI,CAAC,SAAS;KACZ,IAAI;KACJ,CAAC,qBAAqB,SAAS,cAAc,QAAQ,uBAAuB,KAAK,IAAI,KAAK,IAAI,mBAAmB,MAAM,EACrH,eAAe,KACjB,CAAC;IACH;GACF;EACF;EACA,OAAO;CACT,GAAG;EACD;EACA;EACA;EACA;EACA;EACA,SAAS;CACX,CAAC;CACD,QAAQ,GAAG,aAAa,SAAS,WAAW;EAC1C,OAAO,UAAU;GACf;GACA;GACA;EACF,IAAI,CAAC;CACP,GAAG;EACD;EACA;EACA;EACA;CACF,CAAC;AACH"}
@@ -1,3 +1,4 @@
1
+
1
2
  var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -5,118 +6,103 @@ var __getOwnPropNames = Object.getOwnPropertyNames;
5
6
  var __getProtoOf = Object.getPrototypeOf;
6
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
8
  var __export = (target, all) => {
8
- for (var name in all) __defProp(target, name, {
9
- get: all[name],
10
- enumerable: true
11
- });
9
+ for (var name in all) __defProp(target, name, {
10
+ get: all[name],
11
+ enumerable: true
12
+ });
12
13
  };
13
14
  var __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from === "object" || typeof from === "function") {
15
- for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
- get: () => from[key],
17
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
- });
19
- }
20
- return to;
15
+ if (from && typeof from === "object" || typeof from === "function") {
16
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
17
+ get: () => from[key],
18
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
19
+ });
20
+ }
21
+ return to;
21
22
  };
22
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
- // If the importer is in node compatibility mode or this is not an ESM
24
- // file that has been converted to a CommonJS file using a Babel-
25
- // compatible transform (i.e. "__esModule" has not been set), then set
26
- // "default" to the CommonJS "module.exports" for node compatibility.
27
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
- value: mod,
29
- enumerable: true
23
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
24
+ value: mod,
25
+ enumerable: true
30
26
  }) : target, mod));
31
- var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
- value: true
33
- }), mod);
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
34
28
  var useRole_exports = {};
35
- __export(useRole_exports, {
36
- useRole: () => useRole
37
- });
29
+ __export(useRole_exports, { useRole: () => useRole });
38
30
  module.exports = __toCommonJS(useRole_exports);
39
31
  var React = __toESM(require("react"), 1);
40
- const componentRoleToAriaRoleMap = /* @__PURE__ */new Map([["select", "listbox"], ["combobox", "listbox"], ["label", false]]);
32
+ const componentRoleToAriaRoleMap = /* @__PURE__ */ new Map([
33
+ ["select", "listbox"],
34
+ ["combobox", "listbox"],
35
+ ["label", false]
36
+ ]);
41
37
  let idCounter = 0;
42
38
  function useRole(context, props = {}) {
43
- const {
44
- open,
45
- elements
46
- } = context;
47
- const {
48
- enabled = true,
49
- role = "dialog"
50
- } = props;
51
- const defaultReferenceId = React.useId();
52
- const referenceId = elements.domReference?.id || defaultReferenceId;
53
- const defaultFloatingId = React.useMemo(() => `floating-${idCounter++}`, []);
54
- const floatingId = React.useMemo(() => elements.floating?.id || defaultFloatingId, [elements.floating, defaultFloatingId]);
55
- const ariaRole = componentRoleToAriaRoleMap.get(role) ?? role;
56
- const reference = React.useMemo(() => {
57
- if (ariaRole === "tooltip" || role === "label") {
58
- return {
59
- [`aria-${role === "label" ? "labelledby" : "describedby"}`]: open ? floatingId : void 0
60
- };
61
- }
62
- return {
63
- "aria-expanded": open ? "true" : "false",
64
- "aria-haspopup": ariaRole === "alertdialog" ? "dialog" : ariaRole,
65
- "aria-controls": open ? floatingId : void 0,
66
- ...(ariaRole === "listbox" && {
67
- role: "combobox"
68
- }),
69
- ...(ariaRole === "menu" && {
70
- id: referenceId
71
- }),
72
- ...(role === "select" && {
73
- "aria-autocomplete": "none"
74
- }),
75
- ...(role === "combobox" && {
76
- "aria-autocomplete": "list"
77
- })
78
- };
79
- }, [ariaRole, floatingId, open, referenceId, role]);
80
- const floating = React.useMemo(() => {
81
- const floatingProps = {
82
- id: floatingId,
83
- ...(ariaRole && {
84
- role: ariaRole
85
- })
86
- };
87
- if (ariaRole === "tooltip" || role === "label") {
88
- return floatingProps;
89
- }
90
- return {
91
- ...floatingProps,
92
- ...(ariaRole === "menu" && {
93
- "aria-labelledby": referenceId
94
- })
95
- };
96
- }, [ariaRole, floatingId, referenceId, role]);
97
- const item = React.useCallback(({
98
- active,
99
- selected
100
- }) => {
101
- const commonProps = {
102
- role: "option",
103
- ...(active && {
104
- id: `${floatingId}-fui-option`
105
- })
106
- };
107
- switch (role) {
108
- case "select":
109
- case "combobox":
110
- return {
111
- ...commonProps,
112
- "aria-selected": selected
113
- };
114
- }
115
- return {};
116
- }, [floatingId, role]);
117
- return React.useMemo(() => enabled ? {
118
- reference,
119
- floating,
120
- item
121
- } : {}, [enabled, reference, floating, item]);
122
- }
39
+ const { open, elements } = context;
40
+ const { enabled = true, role = "dialog" } = props;
41
+ const defaultReferenceId = React.useId();
42
+ const referenceId = elements.domReference?.id || defaultReferenceId;
43
+ const defaultFloatingId = React.useMemo(() => `floating-${idCounter++}`, []);
44
+ const floatingId = React.useMemo(() => elements.floating?.id || defaultFloatingId, [elements.floating, defaultFloatingId]);
45
+ const ariaRole = componentRoleToAriaRoleMap.get(role) ?? role;
46
+ const reference = React.useMemo(() => {
47
+ if (ariaRole === "tooltip" || role === "label") {
48
+ return { [`aria-${role === "label" ? "labelledby" : "describedby"}`]: open ? floatingId : void 0 };
49
+ }
50
+ return {
51
+ "aria-expanded": open ? "true" : "false",
52
+ "aria-haspopup": ariaRole === "alertdialog" ? "dialog" : ariaRole,
53
+ "aria-controls": open ? floatingId : void 0,
54
+ ...ariaRole === "listbox" && { role: "combobox" },
55
+ ...ariaRole === "menu" && { id: referenceId },
56
+ ...role === "select" && { "aria-autocomplete": "none" },
57
+ ...role === "combobox" && { "aria-autocomplete": "list" }
58
+ };
59
+ }, [
60
+ ariaRole,
61
+ floatingId,
62
+ open,
63
+ referenceId,
64
+ role
65
+ ]);
66
+ const floating = React.useMemo(() => {
67
+ const floatingProps = {
68
+ id: floatingId,
69
+ ...ariaRole && { role: ariaRole }
70
+ };
71
+ if (ariaRole === "tooltip" || role === "label") {
72
+ return floatingProps;
73
+ }
74
+ return {
75
+ ...floatingProps,
76
+ ...ariaRole === "menu" && { "aria-labelledby": referenceId }
77
+ };
78
+ }, [
79
+ ariaRole,
80
+ floatingId,
81
+ referenceId,
82
+ role
83
+ ]);
84
+ const item = React.useCallback(({ active, selected }) => {
85
+ const commonProps = {
86
+ role: "option",
87
+ ...active && { id: `${floatingId}-fui-option` }
88
+ };
89
+ switch (role) {
90
+ case "select":
91
+ case "combobox": return {
92
+ ...commonProps,
93
+ "aria-selected": selected
94
+ };
95
+ }
96
+ return {};
97
+ }, [floatingId, role]);
98
+ return React.useMemo(() => enabled ? {
99
+ reference,
100
+ floating,
101
+ item
102
+ } : {}, [
103
+ enabled,
104
+ reference,
105
+ floating,
106
+ item
107
+ ]);
108
+ }
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+
3
+
4
+ var __create = Object.create;
5
+ var __defProp = Object.defineProperty;
6
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
7
+ var __getOwnPropNames = Object.getOwnPropertyNames;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __export = (target, all) => {
11
+ for (var name in all) __defProp(target, name, {
12
+ get: all[name],
13
+ enumerable: true
14
+ });
15
+ };
16
+ var __copyProps = (to, from, except, desc) => {
17
+ if (from && typeof from === "object" || typeof from === "function") {
18
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
19
+ get: () => from[key],
20
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
21
+ });
22
+ }
23
+ return to;
24
+ };
25
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
+ value: mod,
27
+ enumerable: true
28
+ }) : target, mod));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var useRole_exports = {};
31
+ __export(useRole_exports, { useRole: () => useRole });
32
+ module.exports = __toCommonJS(useRole_exports);
33
+ var React = __toESM(require("react"), 1);
34
+ var componentRoleToAriaRoleMap = /* @__PURE__ */ new Map([
35
+ ["select", "listbox"],
36
+ ["combobox", "listbox"],
37
+ ["label", false]
38
+ ]);
39
+ var idCounter = 0;
40
+ function useRole(context) {
41
+ var props = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
42
+ var _elements_domReference;
43
+ var { open, elements } = context;
44
+ var { enabled = true, role = "dialog" } = props;
45
+ var defaultReferenceId = React.useId();
46
+ var referenceId = ((_elements_domReference = elements.domReference) === null || _elements_domReference === void 0 ? void 0 : _elements_domReference.id) || defaultReferenceId;
47
+ var defaultFloatingId = React.useMemo(function() {
48
+ return `floating-${idCounter++}`;
49
+ }, []);
50
+ var floatingId = React.useMemo(function() {
51
+ var _elements_floating;
52
+ return ((_elements_floating = elements.floating) === null || _elements_floating === void 0 ? void 0 : _elements_floating.id) || defaultFloatingId;
53
+ }, [elements.floating, defaultFloatingId]);
54
+ var _componentRoleToAriaRoleMap_get;
55
+ var ariaRole = (_componentRoleToAriaRoleMap_get = componentRoleToAriaRoleMap.get(role)) !== null && _componentRoleToAriaRoleMap_get !== void 0 ? _componentRoleToAriaRoleMap_get : role;
56
+ var reference = React.useMemo(function() {
57
+ if (ariaRole === "tooltip" || role === "label") {
58
+ return { [`aria-${role === "label" ? "labelledby" : "describedby"}`]: open ? floatingId : void 0 };
59
+ }
60
+ return {
61
+ "aria-expanded": open ? "true" : "false",
62
+ "aria-haspopup": ariaRole === "alertdialog" ? "dialog" : ariaRole,
63
+ "aria-controls": open ? floatingId : void 0,
64
+ ...ariaRole === "listbox" && { role: "combobox" },
65
+ ...ariaRole === "menu" && { id: referenceId },
66
+ ...role === "select" && { "aria-autocomplete": "none" },
67
+ ...role === "combobox" && { "aria-autocomplete": "list" }
68
+ };
69
+ }, [
70
+ ariaRole,
71
+ floatingId,
72
+ open,
73
+ referenceId,
74
+ role
75
+ ]);
76
+ var floating = React.useMemo(function() {
77
+ var floatingProps = {
78
+ id: floatingId,
79
+ ...ariaRole && { role: ariaRole }
80
+ };
81
+ if (ariaRole === "tooltip" || role === "label") {
82
+ return floatingProps;
83
+ }
84
+ return {
85
+ ...floatingProps,
86
+ ...ariaRole === "menu" && { "aria-labelledby": referenceId }
87
+ };
88
+ }, [
89
+ ariaRole,
90
+ floatingId,
91
+ referenceId,
92
+ role
93
+ ]);
94
+ var item = React.useCallback(function(param) {
95
+ var { active, selected } = param;
96
+ var commonProps = {
97
+ role: "option",
98
+ ...active && { id: `${floatingId}-fui-option` }
99
+ };
100
+ switch (role) {
101
+ case "select":
102
+ case "combobox": return {
103
+ ...commonProps,
104
+ "aria-selected": selected
105
+ };
106
+ }
107
+ return {};
108
+ }, [floatingId, role]);
109
+ return React.useMemo(function() {
110
+ return enabled ? {
111
+ reference,
112
+ floating,
113
+ item
114
+ } : {};
115
+ }, [
116
+ enabled,
117
+ reference,
118
+ floating,
119
+ item
120
+ ]);
121
+ }