@basic-ui/core 0.0.41 → 0.0.42

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 (350) hide show
  1. package/build/cjs/index.js +1312 -464
  2. package/build/cjs/index.js.map +1 -1
  3. package/build/esm/Accordion/Accordion.d.ts +0 -0
  4. package/build/esm/Accordion/Accordion.js +4 -3
  5. package/build/esm/Accordion/Accordion.js.map +1 -1
  6. package/build/esm/Accordion/AccordionBody.d.ts +0 -0
  7. package/build/esm/Accordion/AccordionBody.js +4 -3
  8. package/build/esm/Accordion/AccordionBody.js.map +1 -1
  9. package/build/esm/Accordion/AccordionHeader.d.ts +0 -0
  10. package/build/esm/Accordion/AccordionHeader.js +4 -3
  11. package/build/esm/Accordion/AccordionHeader.js.map +1 -1
  12. package/build/esm/Accordion/AccordionItem.d.ts +0 -0
  13. package/build/esm/Accordion/AccordionItem.js +2 -1
  14. package/build/esm/Accordion/AccordionItem.js.map +1 -1
  15. package/build/esm/Accordion/context.d.ts +0 -0
  16. package/build/esm/Accordion/context.js +0 -0
  17. package/build/esm/Accordion/context.js.map +1 -1
  18. package/build/esm/Accordion/index.d.ts +0 -0
  19. package/build/esm/Accordion/index.js +0 -0
  20. package/build/esm/Accordion/index.js.map +1 -1
  21. package/build/esm/Accordion/scopeQuery.d.ts +0 -0
  22. package/build/esm/Accordion/scopeQuery.js +0 -0
  23. package/build/esm/Accordion/scopeQuery.js.map +1 -1
  24. package/build/esm/CheckBox/CheckBox.d.ts +0 -0
  25. package/build/esm/CheckBox/CheckBox.js +2 -1
  26. package/build/esm/CheckBox/CheckBox.js.map +1 -1
  27. package/build/esm/CheckBox/index.d.ts +0 -0
  28. package/build/esm/CheckBox/index.js +0 -0
  29. package/build/esm/CheckBox/index.js.map +1 -1
  30. package/build/esm/ComboBox/Combobox.d.ts +0 -0
  31. package/build/esm/ComboBox/Combobox.js +3 -2
  32. package/build/esm/ComboBox/Combobox.js.map +1 -1
  33. package/build/esm/ComboBox/ComboboxButton.d.ts +0 -0
  34. package/build/esm/ComboBox/ComboboxButton.js +4 -3
  35. package/build/esm/ComboBox/ComboboxButton.js.map +1 -1
  36. package/build/esm/ComboBox/ComboboxInput.d.ts +0 -0
  37. package/build/esm/ComboBox/ComboboxInput.js +3 -2
  38. package/build/esm/ComboBox/ComboboxInput.js.map +1 -1
  39. package/build/esm/ComboBox/ComboboxLabel.d.ts +0 -0
  40. package/build/esm/ComboBox/ComboboxLabel.js +2 -1
  41. package/build/esm/ComboBox/ComboboxLabel.js.map +1 -1
  42. package/build/esm/ComboBox/ComboboxList.d.ts +0 -0
  43. package/build/esm/ComboBox/ComboboxList.js +3 -2
  44. package/build/esm/ComboBox/ComboboxList.js.map +1 -1
  45. package/build/esm/ComboBox/ComboboxOption.d.ts +0 -0
  46. package/build/esm/ComboBox/ComboboxOption.js +4 -3
  47. package/build/esm/ComboBox/ComboboxOption.js.map +1 -1
  48. package/build/esm/ComboBox/ComboboxPopover.d.ts +0 -0
  49. package/build/esm/ComboBox/ComboboxPopover.js +5 -4
  50. package/build/esm/ComboBox/ComboboxPopover.js.map +1 -1
  51. package/build/esm/ComboBox/cities.d.ts +0 -0
  52. package/build/esm/ComboBox/cities.js +0 -0
  53. package/build/esm/ComboBox/cities.js.map +1 -1
  54. package/build/esm/ComboBox/context.d.ts +0 -0
  55. package/build/esm/ComboBox/context.js +0 -0
  56. package/build/esm/ComboBox/context.js.map +1 -1
  57. package/build/esm/ComboBox/hooks.d.ts +0 -0
  58. package/build/esm/ComboBox/hooks.js +11 -11
  59. package/build/esm/ComboBox/hooks.js.map +1 -1
  60. package/build/esm/ComboBox/index.d.ts +0 -0
  61. package/build/esm/ComboBox/index.js +0 -0
  62. package/build/esm/ComboBox/index.js.map +1 -1
  63. package/build/esm/ComboBox/makeHash.d.ts +0 -0
  64. package/build/esm/ComboBox/makeHash.js +0 -0
  65. package/build/esm/ComboBox/makeHash.js.map +1 -1
  66. package/build/esm/ComboBox/scopeQuery.d.ts +0 -0
  67. package/build/esm/ComboBox/scopeQuery.js +0 -0
  68. package/build/esm/ComboBox/scopeQuery.js.map +1 -1
  69. package/build/esm/FocusLock/FocusLock.d.ts +0 -0
  70. package/build/esm/FocusLock/FocusLock.js +2 -1
  71. package/build/esm/FocusLock/FocusLock.js.map +1 -1
  72. package/build/esm/FocusLock/index.d.ts +0 -0
  73. package/build/esm/FocusLock/index.js +0 -0
  74. package/build/esm/FocusLock/index.js.map +1 -1
  75. package/build/esm/FocusLock/tabUtils.d.ts +0 -0
  76. package/build/esm/FocusLock/tabUtils.js +0 -0
  77. package/build/esm/FocusLock/tabUtils.js.map +1 -1
  78. package/build/esm/FocusLock/useFocusLock.d.ts +0 -0
  79. package/build/esm/FocusLock/useFocusLock.js +0 -0
  80. package/build/esm/FocusLock/useFocusLock.js.map +1 -1
  81. package/build/esm/List/List.d.ts +0 -0
  82. package/build/esm/List/List.js +2 -1
  83. package/build/esm/List/List.js.map +1 -1
  84. package/build/esm/List/ListItem.d.ts +0 -0
  85. package/build/esm/List/ListItem.js +2 -1
  86. package/build/esm/List/ListItem.js.map +1 -1
  87. package/build/esm/List/context.d.ts +0 -0
  88. package/build/esm/List/context.js +0 -0
  89. package/build/esm/List/context.js.map +1 -1
  90. package/build/esm/List/index.d.ts +0 -0
  91. package/build/esm/List/index.js +0 -0
  92. package/build/esm/List/index.js.map +1 -1
  93. package/build/esm/Menu/Menu.d.ts +0 -0
  94. package/build/esm/Menu/Menu.js +2 -1
  95. package/build/esm/Menu/Menu.js.map +1 -1
  96. package/build/esm/Menu/MenuButton.d.ts +0 -0
  97. package/build/esm/Menu/MenuButton.js +3 -2
  98. package/build/esm/Menu/MenuButton.js.map +1 -1
  99. package/build/esm/Menu/MenuItem.d.ts +0 -0
  100. package/build/esm/Menu/MenuItem.js +4 -3
  101. package/build/esm/Menu/MenuItem.js.map +1 -1
  102. package/build/esm/Menu/MenuList.d.ts +0 -0
  103. package/build/esm/Menu/MenuList.js +6 -5
  104. package/build/esm/Menu/MenuList.js.map +1 -1
  105. package/build/esm/Menu/MenuPopover.d.ts +0 -0
  106. package/build/esm/Menu/MenuPopover.js +2 -1
  107. package/build/esm/Menu/MenuPopover.js.map +1 -1
  108. package/build/esm/Menu/context.d.ts +0 -0
  109. package/build/esm/Menu/context.js +0 -0
  110. package/build/esm/Menu/context.js.map +1 -1
  111. package/build/esm/Menu/index.d.ts +0 -0
  112. package/build/esm/Menu/index.js +0 -0
  113. package/build/esm/Menu/index.js.map +1 -1
  114. package/build/esm/Menu/scope.d.ts +0 -0
  115. package/build/esm/Menu/scope.js +0 -0
  116. package/build/esm/Menu/scope.js.map +1 -1
  117. package/build/esm/Modal/Modal.d.ts +0 -0
  118. package/build/esm/Modal/Modal.js +5 -4
  119. package/build/esm/Modal/Modal.js.map +1 -1
  120. package/build/esm/Modal/ModalBackdrop.d.ts +0 -0
  121. package/build/esm/Modal/ModalBackdrop.js +6 -5
  122. package/build/esm/Modal/ModalBackdrop.js.map +1 -1
  123. package/build/esm/Modal/index.d.ts +0 -0
  124. package/build/esm/Modal/index.js +0 -0
  125. package/build/esm/Modal/index.js.map +1 -1
  126. package/build/esm/Popper/Popper.d.ts +0 -0
  127. package/build/esm/Popper/Popper.js +6 -5
  128. package/build/esm/Popper/Popper.js.map +1 -1
  129. package/build/esm/Popper/PopperArrow.d.ts +0 -0
  130. package/build/esm/Popper/PopperArrow.js +5 -5
  131. package/build/esm/Popper/PopperArrow.js.map +1 -1
  132. package/build/esm/Popper/context.d.ts +0 -0
  133. package/build/esm/Popper/context.js +0 -0
  134. package/build/esm/Popper/context.js.map +1 -1
  135. package/build/esm/Popper/index.d.ts +0 -0
  136. package/build/esm/Popper/index.js +0 -0
  137. package/build/esm/Popper/index.js.map +1 -1
  138. package/build/esm/Portal/Portal.d.ts +0 -0
  139. package/build/esm/Portal/Portal.js +0 -0
  140. package/build/esm/Portal/Portal.js.map +1 -1
  141. package/build/esm/Portal/index.d.ts +0 -0
  142. package/build/esm/Portal/index.js +0 -0
  143. package/build/esm/Portal/index.js.map +1 -1
  144. package/build/esm/RadioButton/RadioButton.d.ts +0 -0
  145. package/build/esm/RadioButton/RadioButton.js +5 -2
  146. package/build/esm/RadioButton/RadioButton.js.map +1 -1
  147. package/build/esm/RadioButton/RadioGroup.d.ts +0 -0
  148. package/build/esm/RadioButton/RadioGroup.js +2 -1
  149. package/build/esm/RadioButton/RadioGroup.js.map +1 -1
  150. package/build/esm/RadioButton/context.d.ts +0 -0
  151. package/build/esm/RadioButton/context.js +0 -0
  152. package/build/esm/RadioButton/context.js.map +1 -1
  153. package/build/esm/RadioButton/index.d.ts +0 -0
  154. package/build/esm/RadioButton/index.js +0 -0
  155. package/build/esm/RadioButton/index.js.map +1 -1
  156. package/build/esm/SkipNav/SkipNav.d.ts +0 -0
  157. package/build/esm/SkipNav/SkipNav.js +2 -1
  158. package/build/esm/SkipNav/SkipNav.js.map +1 -1
  159. package/build/esm/SkipNav/index.d.ts +0 -0
  160. package/build/esm/SkipNav/index.js +0 -0
  161. package/build/esm/SkipNav/index.js.map +1 -1
  162. package/build/esm/Slider/Slider.d.ts +218 -0
  163. package/build/esm/Slider/Slider.js +842 -0
  164. package/build/esm/Slider/Slider.js.map +1 -0
  165. package/build/esm/Slider/index.d.ts +1 -0
  166. package/build/esm/Slider/index.js +2 -0
  167. package/build/esm/Slider/index.js.map +1 -0
  168. package/build/esm/Spinner/Spinner.d.ts +0 -0
  169. package/build/esm/Spinner/Spinner.js +2 -1
  170. package/build/esm/Spinner/Spinner.js.map +1 -1
  171. package/build/esm/Spinner/SpinnerButton.d.ts +0 -0
  172. package/build/esm/Spinner/SpinnerButton.js +3 -2
  173. package/build/esm/Spinner/SpinnerButton.js.map +1 -1
  174. package/build/esm/Spinner/context.d.ts +0 -0
  175. package/build/esm/Spinner/context.js +0 -0
  176. package/build/esm/Spinner/context.js.map +1 -1
  177. package/build/esm/Spinner/index.d.ts +0 -0
  178. package/build/esm/Spinner/index.js +0 -0
  179. package/build/esm/Spinner/index.js.map +1 -1
  180. package/build/esm/Tabs/Tab.d.ts +0 -0
  181. package/build/esm/Tabs/Tab.js +3 -2
  182. package/build/esm/Tabs/Tab.js.map +1 -1
  183. package/build/esm/Tabs/TabList.d.ts +0 -0
  184. package/build/esm/Tabs/TabList.js +4 -3
  185. package/build/esm/Tabs/TabList.js.map +1 -1
  186. package/build/esm/Tabs/TabPanel.d.ts +0 -0
  187. package/build/esm/Tabs/TabPanel.js +4 -3
  188. package/build/esm/Tabs/TabPanel.js.map +1 -1
  189. package/build/esm/Tabs/TabPanels.d.ts +0 -0
  190. package/build/esm/Tabs/TabPanels.js +4 -3
  191. package/build/esm/Tabs/TabPanels.js.map +1 -1
  192. package/build/esm/Tabs/Tabs.d.ts +0 -0
  193. package/build/esm/Tabs/Tabs.js +2 -1
  194. package/build/esm/Tabs/Tabs.js.map +1 -1
  195. package/build/esm/Tabs/context.d.ts +0 -0
  196. package/build/esm/Tabs/context.js +0 -0
  197. package/build/esm/Tabs/context.js.map +1 -1
  198. package/build/esm/Tabs/index.d.ts +0 -0
  199. package/build/esm/Tabs/index.js +0 -0
  200. package/build/esm/Tabs/index.js.map +1 -1
  201. package/build/esm/Tabs/scopeQuery.d.ts +0 -0
  202. package/build/esm/Tabs/scopeQuery.js +0 -0
  203. package/build/esm/Tabs/scopeQuery.js.map +1 -1
  204. package/build/esm/Tooltip/Tooltip.d.ts +0 -0
  205. package/build/esm/Tooltip/Tooltip.js +4 -2
  206. package/build/esm/Tooltip/Tooltip.js.map +1 -1
  207. package/build/esm/Tooltip/index.d.ts +0 -0
  208. package/build/esm/Tooltip/index.js +0 -0
  209. package/build/esm/Tooltip/index.js.map +1 -1
  210. package/build/esm/Tooltip/stateMachine.d.ts +0 -0
  211. package/build/esm/Tooltip/stateMachine.js +9 -9
  212. package/build/esm/Tooltip/stateMachine.js.map +1 -1
  213. package/build/esm/Tooltip/useTooltip.d.ts +0 -0
  214. package/build/esm/Tooltip/useTooltip.js +6 -5
  215. package/build/esm/Tooltip/useTooltip.js.map +1 -1
  216. package/build/esm/hooks/index.d.ts +0 -0
  217. package/build/esm/hooks/index.js +0 -0
  218. package/build/esm/hooks/index.js.map +1 -1
  219. package/build/esm/hooks/useAutoFocus.d.ts +0 -0
  220. package/build/esm/hooks/useAutoFocus.js +0 -0
  221. package/build/esm/hooks/useAutoFocus.js.map +1 -1
  222. package/build/esm/hooks/useChildrenCounter.d.ts +0 -0
  223. package/build/esm/hooks/useChildrenCounter.js +0 -0
  224. package/build/esm/hooks/useChildrenCounter.js.map +1 -1
  225. package/build/esm/hooks/useControlledState.d.ts +1 -1
  226. package/build/esm/hooks/useControlledState.js +8 -7
  227. package/build/esm/hooks/useControlledState.js.map +1 -1
  228. package/build/esm/hooks/useFocusReturn.d.ts +0 -0
  229. package/build/esm/hooks/useFocusReturn.js +2 -2
  230. package/build/esm/hooks/useFocusReturn.js.map +1 -1
  231. package/build/esm/hooks/useFocusState.d.ts +2 -2
  232. package/build/esm/hooks/useFocusState.js +1 -1
  233. package/build/esm/hooks/useFocusState.js.map +1 -1
  234. package/build/esm/hooks/useGestureHandlers.d.ts +0 -0
  235. package/build/esm/hooks/useGestureHandlers.js +23 -15
  236. package/build/esm/hooks/useGestureHandlers.js.map +1 -1
  237. package/build/esm/hooks/useMeasure.d.ts +0 -0
  238. package/build/esm/hooks/useMeasure.js +0 -1
  239. package/build/esm/hooks/useMeasure.js.map +1 -1
  240. package/build/esm/hooks/useOnClickOutside.d.ts +0 -0
  241. package/build/esm/hooks/useOnClickOutside.js +0 -0
  242. package/build/esm/hooks/useOnClickOutside.js.map +1 -1
  243. package/build/esm/hooks/useOnKeyDown.d.ts +1 -1
  244. package/build/esm/hooks/useOnKeyDown.js +5 -5
  245. package/build/esm/hooks/useOnKeyDown.js.map +1 -1
  246. package/build/esm/hooks/useReducerMachine.d.ts +0 -0
  247. package/build/esm/hooks/useReducerMachine.js +2 -1
  248. package/build/esm/hooks/useReducerMachine.js.map +1 -1
  249. package/build/esm/hooks/useRemoveBodyScroll.d.ts +2 -1
  250. package/build/esm/hooks/useRemoveBodyScroll.js +12 -8
  251. package/build/esm/hooks/useRemoveBodyScroll.js.map +1 -1
  252. package/build/esm/hooks/useScope.d.ts +0 -0
  253. package/build/esm/hooks/useScope.js +0 -0
  254. package/build/esm/hooks/useScope.js.map +1 -1
  255. package/build/esm/hooks/useThrottle.d.ts +0 -0
  256. package/build/esm/hooks/useThrottle.js +0 -0
  257. package/build/esm/hooks/useThrottle.js.map +1 -1
  258. package/build/esm/index.d.ts +1 -0
  259. package/build/esm/index.js +1 -0
  260. package/build/esm/index.js.map +1 -1
  261. package/build/esm/utils/assign-ref.d.ts +3 -0
  262. package/build/esm/utils/{assignRef.js → assign-ref.js} +1 -1
  263. package/build/esm/utils/assign-ref.js.map +1 -0
  264. package/build/esm/utils/can-use-dom.d.ts +1 -0
  265. package/build/esm/utils/can-use-dom.js +4 -0
  266. package/build/esm/utils/can-use-dom.js.map +1 -0
  267. package/build/esm/utils/clamp.d.ts +0 -0
  268. package/build/esm/utils/clamp.js +0 -0
  269. package/build/esm/utils/clamp.js.map +1 -1
  270. package/build/esm/utils/context.d.ts +7 -0
  271. package/build/esm/utils/context.js +41 -0
  272. package/build/esm/utils/context.js.map +1 -0
  273. package/build/esm/utils/{createSubscription.d.ts → create-subscription.d.ts} +0 -0
  274. package/build/esm/utils/{createSubscription.js → create-subscription.js} +1 -1
  275. package/build/esm/utils/create-subscription.js.map +1 -0
  276. package/build/esm/utils/{getCircularIndex.d.ts → get-circular-index.d.ts} +0 -0
  277. package/build/esm/utils/{getCircularIndex.js → get-circular-index.js} +1 -1
  278. package/build/esm/utils/get-circular-index.js.map +1 -0
  279. package/build/esm/utils/index.d.ts +10 -4
  280. package/build/esm/utils/index.js +10 -4
  281. package/build/esm/utils/index.js.map +1 -1
  282. package/build/esm/utils/is-right-click.d.ts +6 -0
  283. package/build/esm/utils/is-right-click.js +9 -0
  284. package/build/esm/utils/is-right-click.js.map +1 -0
  285. package/build/esm/utils/owner-document.d.ts +7 -0
  286. package/build/esm/utils/owner-document.js +12 -0
  287. package/build/esm/utils/owner-document.js.map +1 -0
  288. package/build/esm/utils/polymorphic.d.ts +32 -0
  289. package/build/esm/utils/polymorphic.js +2 -0
  290. package/build/esm/utils/polymorphic.js.map +1 -0
  291. package/build/esm/utils/{rubberBandClamp.d.ts → rubber-band-clamp.d.ts} +0 -0
  292. package/build/esm/utils/{rubberBandClamp.js → rubber-band-clamp.js} +1 -1
  293. package/build/esm/utils/rubber-band-clamp.js.map +1 -0
  294. package/build/esm/utils/use-stable-callback.d.ts +16 -0
  295. package/build/esm/utils/use-stable-callback.js +43 -0
  296. package/build/esm/utils/use-stable-callback.js.map +1 -0
  297. package/build/esm/utils/wrap-event.d.ts +3 -0
  298. package/build/esm/utils/{wrapEvent.js → wrap-event.js} +1 -1
  299. package/build/esm/utils/wrap-event.js.map +1 -0
  300. package/build/tsconfig-build.tsbuildinfo +1 -1
  301. package/package.json +3 -4
  302. package/src/ComboBox/ComboboxButton.tsx +2 -2
  303. package/src/ComboBox/ComboboxOption.tsx +1 -1
  304. package/src/ComboBox/ComboboxPopover.tsx +2 -2
  305. package/src/ComboBox/hooks.tsx +1 -1
  306. package/src/Menu/MenuButton.tsx +1 -1
  307. package/src/Menu/MenuItem.tsx +1 -1
  308. package/src/Menu/MenuList.tsx +1 -1
  309. package/src/Modal/Modal.tsx +1 -1
  310. package/src/Modal/ModalBackdrop.tsx +2 -2
  311. package/src/Popper/Popper.tsx +1 -1
  312. package/src/Popper/PopperArrow.tsx +2 -4
  313. package/src/Slider/Slider.story.tsx +45 -0
  314. package/src/Slider/Slider.tsx +1106 -0
  315. package/src/Slider/index.ts +1 -0
  316. package/src/Slider/styles.css +131 -0
  317. package/src/Tooltip/Tooltip.story.tsx +2 -2
  318. package/src/Tooltip/stateMachine.ts +9 -13
  319. package/src/Tooltip/useTooltip.ts +2 -2
  320. package/src/hooks/useControlledState.ts +12 -9
  321. package/src/hooks/useFocusState.ts +1 -1
  322. package/src/hooks/useGestureHandlers.ts +22 -12
  323. package/src/hooks/useMeasure.ts +0 -1
  324. package/src/hooks/useOnKeyDown.ts +4 -3
  325. package/src/hooks/useRemoveBodyScroll.ts +18 -8
  326. package/src/index.ts +1 -0
  327. package/src/utils/{assignRef.ts → assign-ref.ts} +4 -4
  328. package/src/utils/can-use-dom.ts +7 -0
  329. package/src/utils/context.tsx +48 -0
  330. package/src/utils/{createSubscription.ts → create-subscription.ts} +0 -0
  331. package/src/utils/{getCircularIndex.ts → get-circular-index.ts} +0 -0
  332. package/src/utils/index.ts +10 -4
  333. package/src/utils/is-right-click.ts +14 -0
  334. package/src/utils/owner-document.ts +13 -0
  335. package/src/utils/polymorphic.ts +72 -0
  336. package/src/utils/{rubberBandClamp.ts → rubber-band-clamp.ts} +0 -0
  337. package/src/utils/use-stable-callback.ts +58 -0
  338. package/src/utils/wrap-event.ts +22 -0
  339. package/build/esm/hooks/useId.d.ts +0 -3
  340. package/build/esm/hooks/useId.js +0 -16
  341. package/build/esm/hooks/useId.js.map +0 -1
  342. package/build/esm/utils/assignRef.d.ts +0 -3
  343. package/build/esm/utils/assignRef.js.map +0 -1
  344. package/build/esm/utils/createSubscription.js.map +0 -1
  345. package/build/esm/utils/getCircularIndex.js.map +0 -1
  346. package/build/esm/utils/rubberBandClamp.js.map +0 -1
  347. package/build/esm/utils/wrapEvent.d.ts +0 -3
  348. package/build/esm/utils/wrapEvent.js.map +0 -1
  349. package/build/tsconfig.tsbuildinfo +0 -1
  350. package/src/utils/wrapEvent.ts +0 -19
@@ -1,9 +1,10 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
+ var _excluded = ["as", "onKeyDown", "id", "defaultActiveItemValue"];
4
5
  import { forwardRef, useEffect, useRef, useState, useLayoutEffect } from 'react';
5
6
  import { useMenuContext, MenuListProvider } from './context';
6
- import { assignMultipleRefs } from '../utils/assignRef';
7
+ import { assignMultipleRefs } from '../utils/assign-ref';
7
8
  import { useOnClickOutside } from '../hooks/useOnClickOutside';
8
9
  import { useScope } from '../hooks';
9
10
  import { queryScope } from './scope';
@@ -18,7 +19,7 @@ export var MenuList = /*#__PURE__*/forwardRef(function MenuList(props, forwarded
18
19
  onKeyDown = props.onKeyDown,
19
20
  preferredId = props.id,
20
21
  defaultActiveItemValue = props.defaultActiveItemValue,
21
- otherProps = _objectWithoutProperties(props, ["as", "onKeyDown", "id", "defaultActiveItemValue"]);
22
+ otherProps = _objectWithoutProperties(props, _excluded);
22
23
 
23
24
  var _useMenuContext = useMenuContext(),
24
25
  menuListIdRef = _useMenuContext.menuListIdRef,
@@ -71,7 +72,7 @@ export var MenuList = /*#__PURE__*/forwardRef(function MenuList(props, forwarded
71
72
  useOnClickOutside(menuListRef, function (e) {
72
73
  var _buttonRef$current;
73
74
 
74
- if (e.target instanceof HTMLElement && e.target !== buttonRef.current && !((_buttonRef$current = buttonRef.current) != null && _buttonRef$current.contains(e.target))) {
75
+ if (e.target instanceof HTMLElement && e.target !== buttonRef.current && !((_buttonRef$current = buttonRef.current) !== null && _buttonRef$current !== void 0 && _buttonRef$current.contains(e.target))) {
75
76
  onChange && onChange(e, false);
76
77
  }
77
78
 
@@ -88,7 +89,7 @@ export var MenuList = /*#__PURE__*/forwardRef(function MenuList(props, forwarded
88
89
  onChange && onChange(e, false);
89
90
  e.preventDefault(); // prevents focusing on next element, because we will be handling it
90
91
 
91
- (_buttonRef$current2 = buttonRef.current) == null ? void 0 : _buttonRef$current2.focus();
92
+ (_buttonRef$current2 = buttonRef.current) === null || _buttonRef$current2 === void 0 ? void 0 : _buttonRef$current2.focus();
92
93
  break;
93
94
  }
94
95
 
@@ -181,7 +182,7 @@ export var MenuList = /*#__PURE__*/forwardRef(function MenuList(props, forwarded
181
182
  ref: assignMultipleRefs(forwardedRef, menuListRef),
182
183
  id: menuListIdRef.current,
183
184
  role: "menu",
184
- "aria-labelledby": (_buttonRef$current3 = buttonRef.current) == null ? void 0 : _buttonRef$current3.id,
185
+ "aria-labelledby": (_buttonRef$current3 = buttonRef.current) === null || _buttonRef$current3 === void 0 ? void 0 : _buttonRef$current3.id,
185
186
  "data-menu-list": "",
186
187
  tabIndex: "-1",
187
188
  onKeyDown: wrapEvent(onKeyDown, handleKeyDown)
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Menu/MenuList.tsx"],"names":["forwardRef","useEffect","useRef","useState","useLayoutEffect","useMenuContext","MenuListProvider","assignMultipleRefs","useOnClickOutside","useScope","queryScope","getCircularIndex","wrapEvent","useEnhancedEffect","window","MenuList","props","forwardedRef","as","Comp","onKeyDown","preferredId","id","defaultActiveItemValue","otherProps","menuListIdRef","buttonRef","onChange","openWithArrowKeyRef","open","navigationItem","setNavigationItem","mounted","setMounted","menuListRef","scope","onNavigate","el","focus","current","allItems","queryAllNodes","index","length","i","dataset","value","e","target","HTMLElement","contains","preventDefault","handleKeyDown","key","currentIndex","findIndex","nextIndex","firstLetter","toLowerCase","idx","dom","domText","innerText","charAt"],"mappings":"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","sourcesContent":["import type { HTMLAttributes, ElementType, KeyboardEvent } from 'react';\nimport {\n forwardRef,\n useEffect,\n useRef,\n useState,\n useLayoutEffect,\n} from 'react';\n\nimport { useMenuContext, MenuListProvider } from './context';\nimport { assignMultipleRefs } from '../utils/assignRef';\nimport { useOnClickOutside } from '../hooks/useOnClickOutside';\nimport { useScope } from '../hooks';\nimport { queryScope } from './scope';\nimport { getCircularIndex, wrapEvent } from '../utils';\n\nconst useEnhancedEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n\nexport interface MenuListProps extends HTMLAttributes<HTMLUListElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n defaultActiveItemValue?: string;\n}\n\nexport const MenuList = forwardRef<HTMLUListElement, MenuListProps>(\n function MenuList(props, forwardedRef) {\n const {\n as: Comp = 'ul',\n onKeyDown,\n id: preferredId,\n defaultActiveItemValue,\n ...otherProps\n } = props;\n\n const { menuListIdRef, buttonRef, onChange, openWithArrowKeyRef, open } =\n useMenuContext();\n\n const [navigationItem, setNavigationItem] = useState<\n HTMLElement | undefined\n >();\n\n const [mounted, setMounted] = useState(false);\n\n const menuListRef = useRef<HTMLUListElement>();\n\n const scope = useScope<HTMLLIElement, HTMLUListElement>(menuListRef);\n\n const onNavigate = (el: HTMLElement) => {\n el.focus();\n setNavigationItem(el);\n };\n\n menuListIdRef.current = preferredId || menuListIdRef.current;\n\n useEnhancedEffect(() => {\n if (!mounted) {\n const allItems = scope.current.queryAllNodes(queryScope);\n let index = getCircularIndex(\n openWithArrowKeyRef.current === 'ArrowUp' ? -1 : 0,\n allItems.length\n );\n\n if (defaultActiveItemValue) {\n for (let i = 0; i < allItems.length; i++) {\n if (allItems[i].dataset.value === defaultActiveItemValue) {\n index = i;\n break;\n }\n }\n }\n\n if (index !== null) {\n onNavigate && onNavigate(allItems[index]);\n }\n }\n\n openWithArrowKeyRef.current = null;\n setMounted(true);\n }, [\n mounted,\n navigationItem,\n onNavigate,\n openWithArrowKeyRef,\n scope,\n defaultActiveItemValue,\n ]);\n\n useOnClickOutside(\n menuListRef,\n (e) => {\n if (\n e.target instanceof HTMLElement &&\n e.target !== buttonRef.current &&\n !buttonRef.current?.contains(e.target)\n ) {\n onChange && onChange(e as any, false);\n }\n e.preventDefault();\n },\n true\n );\n\n function handleKeyDown(e: KeyboardEvent<HTMLUListElement>) {\n switch (e.key) {\n case 'Escape':\n case 'Tab': {\n onChange && onChange(e, false);\n e.preventDefault(); // prevents focusing on next element, because we will be handling it\n buttonRef.current?.focus();\n break;\n }\n case 'Home':\n case 'End':\n case 'ArrowDown':\n case 'ArrowUp':\n e.preventDefault();\n const allItems = scope ? scope.current.queryAllNodes(queryScope) : [];\n const currentIndex = allItems.findIndex((e) => e === navigationItem);\n if (allItems.length === 0) {\n return;\n }\n let nextIndex: number = currentIndex;\n switch (e.key) {\n case 'ArrowUp':\n nextIndex += -1;\n break;\n case 'ArrowDown':\n nextIndex += 1;\n break;\n case 'Home':\n nextIndex = 0;\n break;\n case 'End':\n nextIndex = -1;\n break;\n }\n // We already checked if allItems.length = 0 above\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n nextIndex = getCircularIndex(nextIndex, allItems.length)!;\n onNavigate && onNavigate(allItems[nextIndex]);\n break;\n default: {\n if (e.key.length === 1) {\n // A-Z\n e.preventDefault();\n const allItems = scope\n ? scope.current.queryAllNodes(queryScope)\n : [];\n const currentIndex = allItems.findIndex(\n (e) => e === navigationItem\n );\n const firstLetter = e.key.toLowerCase();\n let nextIndex = -1;\n for (let i = 1; i < allItems.length; i++) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const idx = getCircularIndex(currentIndex + i, allItems.length)!;\n const dom = allItems[idx];\n const domText = dom.innerText.toLowerCase();\n if (domText.length > 0 && domText.charAt(0) === firstLetter) {\n nextIndex = idx;\n break;\n }\n }\n if (nextIndex >= 0 && nextIndex < allItems.length) {\n onNavigate && onNavigate(allItems[nextIndex]);\n }\n }\n }\n }\n }\n\n if (!open) {\n return null;\n }\n\n return (\n <MenuListProvider\n value={{\n navigationItem,\n onNavigate,\n }}\n >\n <Comp\n ref={assignMultipleRefs(forwardedRef, menuListRef)}\n id={menuListIdRef.current}\n role=\"menu\"\n aria-labelledby={buttonRef.current?.id}\n data-menu-list=\"\"\n tabIndex=\"-1\"\n onKeyDown={wrapEvent(onKeyDown, handleKeyDown)}\n {...otherProps}\n />\n </MenuListProvider>\n );\n }\n);\n"],"file":"MenuList.js"}
1
+ {"version":3,"file":"MenuList.js","names":["forwardRef","useEffect","useRef","useState","useLayoutEffect","useMenuContext","MenuListProvider","assignMultipleRefs","useOnClickOutside","useScope","queryScope","getCircularIndex","wrapEvent","useEnhancedEffect","window","MenuList","props","forwardedRef","as","Comp","onKeyDown","preferredId","id","defaultActiveItemValue","otherProps","menuListIdRef","buttonRef","onChange","openWithArrowKeyRef","open","navigationItem","setNavigationItem","mounted","setMounted","menuListRef","scope","onNavigate","el","focus","current","allItems","queryAllNodes","index","length","i","dataset","value","e","target","HTMLElement","contains","preventDefault","handleKeyDown","key","currentIndex","findIndex","nextIndex","firstLetter","toLowerCase","idx","dom","domText","innerText","charAt"],"sources":["../../../src/Menu/MenuList.tsx"],"sourcesContent":["import type { HTMLAttributes, ElementType, KeyboardEvent } from 'react';\nimport {\n forwardRef,\n useEffect,\n useRef,\n useState,\n useLayoutEffect,\n} from 'react';\n\nimport { useMenuContext, MenuListProvider } from './context';\nimport { assignMultipleRefs } from '../utils/assign-ref';\nimport { useOnClickOutside } from '../hooks/useOnClickOutside';\nimport { useScope } from '../hooks';\nimport { queryScope } from './scope';\nimport { getCircularIndex, wrapEvent } from '../utils';\n\nconst useEnhancedEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n\nexport interface MenuListProps extends HTMLAttributes<HTMLUListElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n defaultActiveItemValue?: string;\n}\n\nexport const MenuList = forwardRef<HTMLUListElement, MenuListProps>(\n function MenuList(props, forwardedRef) {\n const {\n as: Comp = 'ul',\n onKeyDown,\n id: preferredId,\n defaultActiveItemValue,\n ...otherProps\n } = props;\n\n const { menuListIdRef, buttonRef, onChange, openWithArrowKeyRef, open } =\n useMenuContext();\n\n const [navigationItem, setNavigationItem] = useState<\n HTMLElement | undefined\n >();\n\n const [mounted, setMounted] = useState(false);\n\n const menuListRef = useRef<HTMLUListElement>();\n\n const scope = useScope<HTMLLIElement, HTMLUListElement>(menuListRef);\n\n const onNavigate = (el: HTMLElement) => {\n el.focus();\n setNavigationItem(el);\n };\n\n menuListIdRef.current = preferredId || menuListIdRef.current;\n\n useEnhancedEffect(() => {\n if (!mounted) {\n const allItems = scope.current.queryAllNodes(queryScope);\n let index = getCircularIndex(\n openWithArrowKeyRef.current === 'ArrowUp' ? -1 : 0,\n allItems.length\n );\n\n if (defaultActiveItemValue) {\n for (let i = 0; i < allItems.length; i++) {\n if (allItems[i].dataset.value === defaultActiveItemValue) {\n index = i;\n break;\n }\n }\n }\n\n if (index !== null) {\n onNavigate && onNavigate(allItems[index]);\n }\n }\n\n openWithArrowKeyRef.current = null;\n setMounted(true);\n }, [\n mounted,\n navigationItem,\n onNavigate,\n openWithArrowKeyRef,\n scope,\n defaultActiveItemValue,\n ]);\n\n useOnClickOutside(\n menuListRef,\n (e) => {\n if (\n e.target instanceof HTMLElement &&\n e.target !== buttonRef.current &&\n !buttonRef.current?.contains(e.target)\n ) {\n onChange && onChange(e as any, false);\n }\n e.preventDefault();\n },\n true\n );\n\n function handleKeyDown(e: KeyboardEvent<HTMLUListElement>) {\n switch (e.key) {\n case 'Escape':\n case 'Tab': {\n onChange && onChange(e, false);\n e.preventDefault(); // prevents focusing on next element, because we will be handling it\n buttonRef.current?.focus();\n break;\n }\n case 'Home':\n case 'End':\n case 'ArrowDown':\n case 'ArrowUp':\n e.preventDefault();\n const allItems = scope ? scope.current.queryAllNodes(queryScope) : [];\n const currentIndex = allItems.findIndex((e) => e === navigationItem);\n if (allItems.length === 0) {\n return;\n }\n let nextIndex: number = currentIndex;\n switch (e.key) {\n case 'ArrowUp':\n nextIndex += -1;\n break;\n case 'ArrowDown':\n nextIndex += 1;\n break;\n case 'Home':\n nextIndex = 0;\n break;\n case 'End':\n nextIndex = -1;\n break;\n }\n // We already checked if allItems.length = 0 above\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n nextIndex = getCircularIndex(nextIndex, allItems.length)!;\n onNavigate && onNavigate(allItems[nextIndex]);\n break;\n default: {\n if (e.key.length === 1) {\n // A-Z\n e.preventDefault();\n const allItems = scope\n ? scope.current.queryAllNodes(queryScope)\n : [];\n const currentIndex = allItems.findIndex(\n (e) => e === navigationItem\n );\n const firstLetter = e.key.toLowerCase();\n let nextIndex = -1;\n for (let i = 1; i < allItems.length; i++) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const idx = getCircularIndex(currentIndex + i, allItems.length)!;\n const dom = allItems[idx];\n const domText = dom.innerText.toLowerCase();\n if (domText.length > 0 && domText.charAt(0) === firstLetter) {\n nextIndex = idx;\n break;\n }\n }\n if (nextIndex >= 0 && nextIndex < allItems.length) {\n onNavigate && onNavigate(allItems[nextIndex]);\n }\n }\n }\n }\n }\n\n if (!open) {\n return null;\n }\n\n return (\n <MenuListProvider\n value={{\n navigationItem,\n onNavigate,\n }}\n >\n <Comp\n ref={assignMultipleRefs(forwardedRef, menuListRef)}\n id={menuListIdRef.current}\n role=\"menu\"\n aria-labelledby={buttonRef.current?.id}\n data-menu-list=\"\"\n tabIndex=\"-1\"\n onKeyDown={wrapEvent(onKeyDown, handleKeyDown)}\n {...otherProps}\n />\n </MenuListProvider>\n );\n }\n);\n"],"mappings":"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"}
File without changes
@@ -1,5 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["as"];
3
4
  import { forwardRef } from 'react';
4
5
  import { Popper } from '../Popper';
5
6
  import { useMenuContext } from './context';
@@ -7,7 +8,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
7
8
  export var MenuPopover = /*#__PURE__*/forwardRef(function MenuPopover(props, forwardedRef) {
8
9
  var _props$as = props.as,
9
10
  as = _props$as === void 0 ? 'div' : _props$as,
10
- otherProps = _objectWithoutProperties(props, ["as"]);
11
+ otherProps = _objectWithoutProperties(props, _excluded);
11
12
 
12
13
  var _useMenuContext = useMenuContext(),
13
14
  buttonRef = _useMenuContext.buttonRef,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Menu/MenuPopover.tsx"],"names":["forwardRef","Popper","useMenuContext","MenuPopover","props","forwardedRef","as","otherProps","buttonRef","open"],"mappings":";;AACA,SAASA,UAAT,QAA2B,OAA3B;AAGA,SAASC,MAAT,QAAuB,WAAvB;AACA,SAASC,cAAT,QAA+B,WAA/B;;AAQA,OAAO,IAAMC,WAAW,gBAAGH,UAAU,CACnC,SAASG,WAAT,CAAqBC,KAArB,EAA4BC,YAA5B,EAA0C;AAAA,kBACFD,KADE,CAChCE,EADgC;AAAA,MAChCA,EADgC,0BAC3B,KAD2B;AAAA,MACjBC,UADiB,4BACFH,KADE;;AAAA,wBAEZF,cAAc,EAFF;AAAA,MAEhCM,SAFgC,mBAEhCA,SAFgC;AAAA,MAErBC,IAFqB,mBAErBA,IAFqB;;AAIxC,MAAI,CAACA,IAAL,EAAW;AACT,WAAO,IAAP;AACD;;AAED,sBACE,KAAC,MAAD;AAAQ,IAAA,EAAE,EAAEH,EAAZ;AAAgB,IAAA,GAAG,EAAED,YAArB;AAAmC,IAAA,QAAQ,EAAEG;AAA7C,KAA4DD,UAA5D,EADF;AAGD,CAZkC,CAA9B","sourcesContent":["import type { ElementType, ReactNode } from 'react';\nimport { forwardRef } from 'react';\n\nimport type { PopperProps } from '../Popper';\nimport { Popper } from '../Popper';\nimport { useMenuContext } from './context';\n\nexport interface MenuPopoverProps extends Omit<PopperProps, 'anchorEl'> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n children?: ReactNode;\n}\n\nexport const MenuPopover = forwardRef<HTMLDivElement, MenuPopoverProps>(\n function MenuPopover(props, forwardedRef) {\n const { as = 'div', ...otherProps } = props;\n const { buttonRef, open } = useMenuContext();\n\n if (!open) {\n return null;\n }\n\n return (\n <Popper as={as} ref={forwardedRef} anchorEl={buttonRef} {...otherProps} />\n );\n }\n);\n"],"file":"MenuPopover.js"}
1
+ {"version":3,"file":"MenuPopover.js","names":["forwardRef","Popper","useMenuContext","MenuPopover","props","forwardedRef","as","otherProps","buttonRef","open"],"sources":["../../../src/Menu/MenuPopover.tsx"],"sourcesContent":["import type { ElementType, ReactNode } from 'react';\nimport { forwardRef } from 'react';\n\nimport type { PopperProps } from '../Popper';\nimport { Popper } from '../Popper';\nimport { useMenuContext } from './context';\n\nexport interface MenuPopoverProps extends Omit<PopperProps, 'anchorEl'> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n children?: ReactNode;\n}\n\nexport const MenuPopover = forwardRef<HTMLDivElement, MenuPopoverProps>(\n function MenuPopover(props, forwardedRef) {\n const { as = 'div', ...otherProps } = props;\n const { buttonRef, open } = useMenuContext();\n\n if (!open) {\n return null;\n }\n\n return (\n <Popper as={as} ref={forwardedRef} anchorEl={buttonRef} {...otherProps} />\n );\n }\n);\n"],"mappings":";;;AACA,SAASA,UAAT,QAA2B,OAA3B;AAGA,SAASC,MAAT,QAAuB,WAAvB;AACA,SAASC,cAAT,QAA+B,WAA/B;;AAQA,OAAO,IAAMC,WAAW,gBAAGH,UAAU,CACnC,SAASG,WAAT,CAAqBC,KAArB,EAA4BC,YAA5B,EAA0C;EACxC,gBAAsCD,KAAtC,CAAQE,EAAR;EAAA,IAAQA,EAAR,0BAAa,KAAb;EAAA,IAAuBC,UAAvB,4BAAsCH,KAAtC;;EACA,sBAA4BF,cAAc,EAA1C;EAAA,IAAQM,SAAR,mBAAQA,SAAR;EAAA,IAAmBC,IAAnB,mBAAmBA,IAAnB;;EAEA,IAAI,CAACA,IAAL,EAAW;IACT,OAAO,IAAP;EACD;;EAED,oBACE,KAAC,MAAD;IAAQ,EAAE,EAAEH,EAAZ;IAAgB,GAAG,EAAED,YAArB;IAAmC,QAAQ,EAAEG;EAA7C,GAA4DD,UAA5D,EADF;AAGD,CAZkC,CAA9B"}
File without changes
File without changes
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Menu/context.ts"],"names":["createContext","useContext","menuContext","MenuProvider","Provider","useMenuContext","menuListContext","MenuListProvider","useMenuListContext"],"mappings":"AAMA,SAASA,aAAT,EAAwBC,UAAxB,QAA0C,OAA1C;AAmBA,IAAMC,WAAW,gBAAGF,aAAa,CAAmB,IAAnB,CAAjC;IACyBG,Y,GAAiBD,W,CAA3BE,Q;;AACf,OAAO,IAAMC,cAAc,GAAG,SAAjBA,cAAiB;AAAA,SAAMJ,UAAU,CAACC,WAAD,CAAhB;AAAA,CAAvB,C,CAEP;;AAMA,IAAMI,eAAe,gBAAGN,aAAa,CAAuB,IAAvB,CAArC;AACA,OAAO,IAAMO,gBAAgB,GAAGD,eAAe,CAACF,QAAzC;AACP,OAAO,IAAMI,kBAAkB,GAAG,SAArBA,kBAAqB;AAAA,SAAMP,UAAU,CAACK,eAAD,CAAhB;AAAA,CAA3B","sourcesContent":["import type {\n KeyboardEvent,\n MouseEvent,\n MutableRefObject,\n PointerEvent,\n} from 'react';\nimport { createContext, useContext } from 'react';\n\nexport type ItemObject = { text: string; value: any; id: string | undefined };\n\n// MenuRoot\nexport interface MenuContextProps {\n buttonRef: MutableRefObject<HTMLButtonElement | null>;\n menuListIdRef: MutableRefObject<undefined | string>;\n openWithArrowKeyRef: MutableRefObject<string | null>;\n onChange?: (\n e:\n | KeyboardEvent<HTMLElement>\n | MouseEvent<HTMLElement>\n | PointerEvent<HTMLElement>,\n isOpen: boolean\n ) => void;\n open: boolean;\n}\n\nconst menuContext = createContext<MenuContextProps>(null as any);\nexport const { Provider: MenuProvider } = menuContext;\nexport const useMenuContext = () => useContext(menuContext);\n\n// MenuList\nexport interface MenuListContextProps {\n navigationItem: HTMLElement | undefined;\n onNavigate: undefined | ((idx: HTMLElement) => void);\n}\n\nconst menuListContext = createContext<MenuListContextProps>(null as any);\nexport const MenuListProvider = menuListContext.Provider;\nexport const useMenuListContext = () => useContext(menuListContext);\n"],"file":"context.js"}
1
+ {"version":3,"file":"context.js","names":["createContext","useContext","menuContext","MenuProvider","Provider","useMenuContext","menuListContext","MenuListProvider","useMenuListContext"],"sources":["../../../src/Menu/context.ts"],"sourcesContent":["import type {\n KeyboardEvent,\n MouseEvent,\n MutableRefObject,\n PointerEvent,\n} from 'react';\nimport { createContext, useContext } from 'react';\n\nexport type ItemObject = { text: string; value: any; id: string | undefined };\n\n// MenuRoot\nexport interface MenuContextProps {\n buttonRef: MutableRefObject<HTMLButtonElement | null>;\n menuListIdRef: MutableRefObject<undefined | string>;\n openWithArrowKeyRef: MutableRefObject<string | null>;\n onChange?: (\n e:\n | KeyboardEvent<HTMLElement>\n | MouseEvent<HTMLElement>\n | PointerEvent<HTMLElement>,\n isOpen: boolean\n ) => void;\n open: boolean;\n}\n\nconst menuContext = createContext<MenuContextProps>(null as any);\nexport const { Provider: MenuProvider } = menuContext;\nexport const useMenuContext = () => useContext(menuContext);\n\n// MenuList\nexport interface MenuListContextProps {\n navigationItem: HTMLElement | undefined;\n onNavigate: undefined | ((idx: HTMLElement) => void);\n}\n\nconst menuListContext = createContext<MenuListContextProps>(null as any);\nexport const MenuListProvider = menuListContext.Provider;\nexport const useMenuListContext = () => useContext(menuListContext);\n"],"mappings":"AAMA,SAASA,aAAT,EAAwBC,UAAxB,QAA0C,OAA1C;AAmBA,IAAMC,WAAW,gBAAGF,aAAa,CAAmB,IAAnB,CAAjC;AACO,IAAkBG,YAAlB,GAAmCD,WAAnC,CAAQE,QAAR;;AACP,OAAO,IAAMC,cAAc,GAAG,SAAjBA,cAAiB;EAAA,OAAMJ,UAAU,CAACC,WAAD,CAAhB;AAAA,CAAvB,C,CAEP;;AAMA,IAAMI,eAAe,gBAAGN,aAAa,CAAuB,IAAvB,CAArC;AACA,OAAO,IAAMO,gBAAgB,GAAGD,eAAe,CAACF,QAAzC;AACP,OAAO,IAAMI,kBAAkB,GAAG,SAArBA,kBAAqB;EAAA,OAAMP,UAAU,CAACK,eAAD,CAAhB;AAAA,CAA3B"}
File without changes
File without changes
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Menu/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAd;AACA,cAAc,cAAd;AACA,cAAc,YAAd;AACA,cAAc,YAAd;AACA,cAAc,eAAd","sourcesContent":["export * from './Menu';\nexport * from './MenuButton';\nexport * from './MenuItem';\nexport * from './MenuList';\nexport * from './MenuPopover';\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/Menu/index.ts"],"sourcesContent":["export * from './Menu';\nexport * from './MenuButton';\nexport * from './MenuItem';\nexport * from './MenuList';\nexport * from './MenuPopover';\n"],"mappings":"AAAA,cAAc,QAAd;AACA,cAAc,cAAd;AACA,cAAc,YAAd;AACA,cAAc,YAAd;AACA,cAAc,eAAd"}
File without changes
File without changes
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Menu/scope.ts"],"names":["queryScope","type","props"],"mappings":"AAAA,OAAO,SAASA,UAAT,CAAoBC,IAApB,EAAkCC,KAAlC,EAAkE;AACvE,SACEA,KAAK,CAAC,gBAAD,CAAL,KAA4B,EAA5B,IACAA,KAAK,CAAC,eAAD,CAAL,KAA2B,EAD3B,IAEAA,KAAK,CAAC,eAAD,CAAL,KAA2B,IAH7B;AAKD","sourcesContent":["export function queryScope(type: string, props: Record<string, unknown>) {\n return (\n props['data-menu-item'] === '' &&\n props['data-disabled'] !== '' &&\n props['data-disabled'] !== true\n );\n}\n"],"file":"scope.js"}
1
+ {"version":3,"file":"scope.js","names":["queryScope","type","props"],"sources":["../../../src/Menu/scope.ts"],"sourcesContent":["export function queryScope(type: string, props: Record<string, unknown>) {\n return (\n props['data-menu-item'] === '' &&\n props['data-disabled'] !== '' &&\n props['data-disabled'] !== true\n );\n}\n"],"mappings":"AAAA,OAAO,SAASA,UAAT,CAAoBC,IAApB,EAAkCC,KAAlC,EAAkE;EACvE,OACEA,KAAK,CAAC,gBAAD,CAAL,KAA4B,EAA5B,IACAA,KAAK,CAAC,eAAD,CAAL,KAA2B,EAD3B,IAEAA,KAAK,CAAC,eAAD,CAAL,KAA2B,IAH7B;AAKD"}
File without changes
@@ -1,5 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["as", "children", "trapFocus", "style"];
3
4
  import { forwardRef, useRef } from 'react';
4
5
  import { useAutoFocus, useFocusReturn, useRemoveBodyScroll } from '../hooks';
5
6
  import { FocusLock } from '../FocusLock';
@@ -13,23 +14,23 @@ export var Modal = /*#__PURE__*/forwardRef(function (_ref, ref) {
13
14
  trapFocus = _ref$trapFocus === void 0 ? true : _ref$trapFocus,
14
15
  _ref$style = _ref.style,
15
16
  style = _ref$style === void 0 ? {} : _ref$style,
16
- otherProps = _objectWithoutProperties(_ref, ["as", "children", "trapFocus", "style"]);
17
+ otherProps = _objectWithoutProperties(_ref, _excluded);
17
18
 
18
19
  var modalRef = useRef(null);
19
20
  useFocusReturn(trapFocus, modalRef);
20
- useRemoveBodyScroll(trapFocus);
21
+ useRemoveBodyScroll(trapFocus, modalRef);
21
22
  useAutoFocus(trapFocus, modalRef);
22
23
  return /*#__PURE__*/_jsx(FocusLock, {
23
24
  childRef: modalRef,
24
25
  enabled: trapFocus,
25
- children: /*#__PURE__*/_jsx(Comp, _extends({
26
+ children: /*#__PURE__*/_jsx(Comp, _extends(_extends({
26
27
  ref: assignMultipleRefs(ref, modalRef),
27
28
  "data-modal-container": "",
28
29
  role: "dialog",
29
30
  "aria-modal": "true",
30
31
  style: style,
31
32
  tabIndex: -1
32
- }, otherProps, {
33
+ }, otherProps), {}, {
33
34
  children: children
34
35
  }))
35
36
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Modal/Modal.tsx"],"names":["forwardRef","useRef","useAutoFocus","useFocusReturn","useRemoveBodyScroll","FocusLock","assignMultipleRefs","Modal","ref","as","Comp","children","trapFocus","style","otherProps","modalRef"],"mappings":";;AAMA,SAASA,UAAT,EAAqBC,MAArB,QAAmC,OAAnC;AAEA,SAASC,YAAT,EAAuBC,cAAvB,EAAuCC,mBAAvC,QAAkE,UAAlE;AACA,SAASC,SAAT,QAA0B,cAA1B;AACA,SAASC,kBAAT,QAAmC,UAAnC;;AAUA,OAAO,IAAMC,KAAK,gBAAGP,UAAU,CAC7B,gBAEEQ,GAFF,EAGK;AAAA,qBAFDC,EAEC;AAAA,MAFGC,IAEH,wBAFU,KAEV;AAAA,MAFiBC,QAEjB,QAFiBA,QAEjB;AAAA,4BAF2BC,SAE3B;AAAA,MAF2BA,SAE3B,+BAFuC,IAEvC;AAAA,wBAF6CC,KAE7C;AAAA,MAF6CA,KAE7C,2BAFqD,EAErD;AAAA,MAF4DC,UAE5D;;AACH,MAAMC,QAAQ,GAAGd,MAAM,CAAiB,IAAjB,CAAvB;AAEAE,EAAAA,cAAc,CAACS,SAAD,EAAYG,QAAZ,CAAd;AACAX,EAAAA,mBAAmB,CAACQ,SAAD,CAAnB;AACAV,EAAAA,YAAY,CAACU,SAAD,EAAYG,QAAZ,CAAZ;AAEA,sBACE,KAAC,SAAD;AAAW,IAAA,QAAQ,EAAEA,QAArB;AAA+B,IAAA,OAAO,EAAEH,SAAxC;AAAA,2BACE,KAAC,IAAD;AACE,MAAA,GAAG,EAAEN,kBAAkB,CAACE,GAAD,EAAMO,QAAN,CADzB;AAEE,8BAAqB,EAFvB;AAGE,MAAA,IAAI,EAAC,QAHP;AAIE,oBAAW,MAJb;AAKE,MAAA,KAAK,EAAEF,KALT;AAME,MAAA,QAAQ,EAAE,CAAC;AANb,OAOMC,UAPN;AAAA,gBASGH;AATH;AADF,IADF;AAeD,CA1B4B,CAAxB","sourcesContent":["import type {\n CSSProperties,\n ElementType,\n HTMLAttributes,\n ReactNode,\n} from 'react';\nimport { forwardRef, useRef } from 'react';\n\nimport { useAutoFocus, useFocusReturn, useRemoveBodyScroll } from '../hooks';\nimport { FocusLock } from '../FocusLock';\nimport { assignMultipleRefs } from '../utils';\n\nexport interface ModalProps extends HTMLAttributes<HTMLDivElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n children?: ReactNode;\n style?: CSSProperties;\n trapFocus?: boolean;\n}\n\nexport const Modal = forwardRef<HTMLDivElement, ModalProps>(\n (\n { as: Comp = 'div', children, trapFocus = true, style = {}, ...otherProps },\n ref\n ) => {\n const modalRef = useRef<HTMLDivElement>(null);\n\n useFocusReturn(trapFocus, modalRef);\n useRemoveBodyScroll(trapFocus);\n useAutoFocus(trapFocus, modalRef);\n\n return (\n <FocusLock childRef={modalRef} enabled={trapFocus}>\n <Comp\n ref={assignMultipleRefs(ref, modalRef)}\n data-modal-container=\"\"\n role=\"dialog\"\n aria-modal=\"true\"\n style={style}\n tabIndex={-1}\n {...otherProps}\n >\n {children}\n </Comp>\n </FocusLock>\n );\n }\n);\n"],"file":"Modal.js"}
1
+ {"version":3,"file":"Modal.js","names":["forwardRef","useRef","useAutoFocus","useFocusReturn","useRemoveBodyScroll","FocusLock","assignMultipleRefs","Modal","ref","as","Comp","children","trapFocus","style","otherProps","modalRef"],"sources":["../../../src/Modal/Modal.tsx"],"sourcesContent":["import type {\n CSSProperties,\n ElementType,\n HTMLAttributes,\n ReactNode,\n} from 'react';\nimport { forwardRef, useRef } from 'react';\n\nimport { useAutoFocus, useFocusReturn, useRemoveBodyScroll } from '../hooks';\nimport { FocusLock } from '../FocusLock';\nimport { assignMultipleRefs } from '../utils';\n\nexport interface ModalProps extends HTMLAttributes<HTMLDivElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n children?: ReactNode;\n style?: CSSProperties;\n trapFocus?: boolean;\n}\n\nexport const Modal = forwardRef<HTMLDivElement, ModalProps>(\n (\n { as: Comp = 'div', children, trapFocus = true, style = {}, ...otherProps },\n ref\n ) => {\n const modalRef = useRef<HTMLDivElement>(null);\n\n useFocusReturn(trapFocus, modalRef);\n useRemoveBodyScroll(trapFocus, modalRef);\n useAutoFocus(trapFocus, modalRef);\n\n return (\n <FocusLock childRef={modalRef} enabled={trapFocus}>\n <Comp\n ref={assignMultipleRefs(ref, modalRef)}\n data-modal-container=\"\"\n role=\"dialog\"\n aria-modal=\"true\"\n style={style}\n tabIndex={-1}\n {...otherProps}\n >\n {children}\n </Comp>\n </FocusLock>\n );\n }\n);\n"],"mappings":";;;AAMA,SAASA,UAAT,EAAqBC,MAArB,QAAmC,OAAnC;AAEA,SAASC,YAAT,EAAuBC,cAAvB,EAAuCC,mBAAvC,QAAkE,UAAlE;AACA,SAASC,SAAT,QAA0B,cAA1B;AACA,SAASC,kBAAT,QAAmC,UAAnC;;AAUA,OAAO,IAAMC,KAAK,gBAAGP,UAAU,CAC7B,gBAEEQ,GAFF,EAGK;EAAA,mBAFDC,EAEC;EAAA,IAFGC,IAEH,wBAFU,KAEV;EAAA,IAFiBC,QAEjB,QAFiBA,QAEjB;EAAA,0BAF2BC,SAE3B;EAAA,IAF2BA,SAE3B,+BAFuC,IAEvC;EAAA,sBAF6CC,KAE7C;EAAA,IAF6CA,KAE7C,2BAFqD,EAErD;EAAA,IAF4DC,UAE5D;;EACH,IAAMC,QAAQ,GAAGd,MAAM,CAAiB,IAAjB,CAAvB;EAEAE,cAAc,CAACS,SAAD,EAAYG,QAAZ,CAAd;EACAX,mBAAmB,CAACQ,SAAD,EAAYG,QAAZ,CAAnB;EACAb,YAAY,CAACU,SAAD,EAAYG,QAAZ,CAAZ;EAEA,oBACE,KAAC,SAAD;IAAW,QAAQ,EAAEA,QAArB;IAA+B,OAAO,EAAEH,SAAxC;IAAA,uBACE,KAAC,IAAD;MACE,GAAG,EAAEN,kBAAkB,CAACE,GAAD,EAAMO,QAAN,CADzB;MAEE,wBAAqB,EAFvB;MAGE,IAAI,EAAC,QAHP;MAIE,cAAW,MAJb;MAKE,KAAK,EAAEF,KALT;MAME,QAAQ,EAAE,CAAC;IANb,GAOMC,UAPN;MAAA,UASGH;IATH;EADF,EADF;AAeD,CA1B4B,CAAxB"}
File without changes
@@ -1,8 +1,9 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["as", "onClose", "onClick", "onMouseDown", "onKeyDown", "disableCloseOnClick", "disableEscapeKeyDown"];
3
4
  import { useRef, forwardRef } from 'react';
4
- import { assignMultipleRefs } from '../utils/assignRef';
5
- import { wrapEvent } from '../utils/wrapEvent';
5
+ import { assignMultipleRefs } from '../utils/assign-ref';
6
+ import { wrapEvent } from '../utils/wrap-event';
6
7
  import { jsx as _jsx } from "react/jsx-runtime";
7
8
  export var ModalBackdrop = /*#__PURE__*/forwardRef(function (_ref, forwardedRef) {
8
9
  var _ref$as = _ref.as,
@@ -15,7 +16,7 @@ export var ModalBackdrop = /*#__PURE__*/forwardRef(function (_ref, forwardedRef)
15
16
  disableCloseOnClick = _ref$disableCloseOnCl === void 0 ? false : _ref$disableCloseOnCl,
16
17
  _ref$disableEscapeKey = _ref.disableEscapeKeyDown,
17
18
  disableEscapeKeyDown = _ref$disableEscapeKey === void 0 ? false : _ref$disableEscapeKey,
18
- otherProps = _objectWithoutProperties(_ref, ["as", "onClose", "onClick", "onMouseDown", "onKeyDown", "disableCloseOnClick", "disableEscapeKeyDown"]);
19
+ otherProps = _objectWithoutProperties(_ref, _excluded);
19
20
 
20
21
  var ref = useRef();
21
22
  var mouseDownTargetRef = useRef(null);
@@ -33,7 +34,7 @@ export var ModalBackdrop = /*#__PURE__*/forwardRef(function (_ref, forwardedRef)
33
34
  }
34
35
 
35
36
  mouseDownTargetRef.current = null;
36
- !disableCloseOnClick && (onClose == null ? void 0 : onClose());
37
+ !disableCloseOnClick && (onClose === null || onClose === void 0 ? void 0 : onClose());
37
38
  e.stopPropagation();
38
39
  };
39
40
 
@@ -43,7 +44,7 @@ export var ModalBackdrop = /*#__PURE__*/forwardRef(function (_ref, forwardedRef)
43
44
 
44
45
  var handleKeyDown = function handleKeyDown(e) {
45
46
  if (e.key === 'Escape') {
46
- !disableEscapeKeyDown && (onClose == null ? void 0 : onClose());
47
+ !disableEscapeKeyDown && (onClose === null || onClose === void 0 ? void 0 : onClose());
47
48
  e.stopPropagation();
48
49
  }
49
50
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Modal/ModalBackdrop.tsx"],"names":["useRef","forwardRef","assignMultipleRefs","wrapEvent","ModalBackdrop","forwardedRef","as","Comp","onClose","onClick","onMouseDown","onKeyDown","disableCloseOnClick","disableEscapeKeyDown","otherProps","ref","mouseDownTargetRef","handleClick","e","target","currentTarget","current","stopPropagation","handleMouseDown","handleKeyDown","key"],"mappings":";;AAOA,SAASA,MAAT,EAAiBC,UAAjB,QAAmC,OAAnC;AAEA,SAASC,kBAAT,QAAmC,oBAAnC;AACA,SAASC,SAAT,QAA0B,oBAA1B;;AAWA,OAAO,IAAMC,aAAa,gBAAGH,UAAU,CACrC,gBAWEI,YAXF,EAYK;AAAA,qBAVDC,EAUC;AAAA,MAVGC,IAUH,wBAVU,KAUV;AAAA,MATDC,OASC,QATDA,OASC;AAAA,MARDC,OAQC,QARDA,OAQC;AAAA,MAPDC,WAOC,QAPDA,WAOC;AAAA,MANDC,SAMC,QANDA,SAMC;AAAA,mCALDC,mBAKC;AAAA,MALDA,mBAKC,sCALqB,KAKrB;AAAA,mCAJDC,oBAIC;AAAA,MAJDA,oBAIC,sCAJsB,KAItB;AAAA,MAHEC,UAGF;;AACH,MAAMC,GAAG,GAAGf,MAAM,EAAlB;AACA,MAAMgB,kBAAkB,GAAGhB,MAAM,CAAqB,IAArB,CAAjC;;AAEA,MAAMiB,WAAW,GAAG,SAAdA,WAAc,CAACC,CAAD,EAAmC;AACrD;AACA;AACA,QAAIA,CAAC,CAACC,MAAF,KAAaD,CAAC,CAACE,aAAnB,EAAkC;AAChC;AACD,KALoD,CAOrD;;;AACA,QAAIF,CAAC,CAACC,MAAF,KAAaH,kBAAkB,CAACK,OAApC,EAA6C;AAC3C;AACD;;AAEDL,IAAAA,kBAAkB,CAACK,OAAnB,GAA6B,IAA7B;AACA,KAACT,mBAAD,KAAwBJ,OAAxB,oBAAwBA,OAAO,EAA/B;AACAU,IAAAA,CAAC,CAACI,eAAF;AACD,GAfD;;AAiBA,MAAMC,eAAe,GAAG,SAAlBA,eAAkB,CAACL,CAAD,EAAmC;AACzDF,IAAAA,kBAAkB,CAACK,OAAnB,GAA6BH,CAAC,CAACC,MAA/B;AACD,GAFD;;AAIA,MAAMK,aAAa,GAAG,SAAhBA,aAAgB,CAACN,CAAD,EAAsC;AAC1D,QAAIA,CAAC,CAACO,GAAF,KAAU,QAAd,EAAwB;AACtB,OAACZ,oBAAD,KAAyBL,OAAzB,oBAAyBA,OAAO,EAAhC;AACAU,MAAAA,CAAC,CAACI,eAAF;AACD;AACF,GALD;;AAOA,sBACE,KAAC,IAAD;AACE,IAAA,GAAG,EAAEpB,kBAAkB,CAACa,GAAD,EAAMV,YAAN,CADzB;AAEE,uBAAgB,EAFlB;AAGE,IAAA,OAAO,EAAEF,SAAS,CAACM,OAAD,EAAUQ,WAAV,CAHpB;AAIE,IAAA,WAAW,EAAEd,SAAS,CAACO,WAAD,EAAca,eAAd,CAJxB;AAKE,IAAA,SAAS,EAAEpB,SAAS,CAACQ,SAAD,EAAYa,aAAZ;AALtB,KAMMV,UANN,EADF;AAUD,CAvDoC,CAAhC","sourcesContent":["import type {\n HTMLAttributes,\n ElementType,\n CSSProperties,\n MouseEvent,\n KeyboardEvent,\n} from 'react';\nimport { useRef, forwardRef } from 'react';\n\nimport { assignMultipleRefs } from '../utils/assignRef';\nimport { wrapEvent } from '../utils/wrapEvent';\n\nexport interface ModalBackdropProps extends HTMLAttributes<HTMLDivElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n onClose?: () => void;\n style?: CSSProperties;\n disableCloseOnClick?: boolean;\n disableEscapeKeyDown?: boolean;\n}\n\nexport const ModalBackdrop = forwardRef<HTMLDivElement, ModalBackdropProps>(\n (\n {\n as: Comp = 'div',\n onClose,\n onClick,\n onMouseDown,\n onKeyDown,\n disableCloseOnClick = false,\n disableEscapeKeyDown = false,\n ...otherProps\n },\n forwardedRef\n ) => {\n const ref = useRef();\n const mouseDownTargetRef = useRef<EventTarget | null>(null);\n\n const handleClick = (e: MouseEvent<HTMLDivElement>) => {\n // Ignore the events not coming from the \"backdrop\"\n // We don't want to close the dialog when clicking the dialog content.\n if (e.target !== e.currentTarget) {\n return;\n }\n\n // Make sure the event starts and ends on the same DOM element.\n if (e.target !== mouseDownTargetRef.current) {\n return;\n }\n\n mouseDownTargetRef.current = null;\n !disableCloseOnClick && onClose?.();\n e.stopPropagation();\n };\n\n const handleMouseDown = (e: MouseEvent<HTMLDivElement>) => {\n mouseDownTargetRef.current = e.target;\n };\n\n const handleKeyDown = (e: KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Escape') {\n !disableEscapeKeyDown && onClose?.();\n e.stopPropagation();\n }\n };\n\n return (\n <Comp\n ref={assignMultipleRefs(ref, forwardedRef)}\n data-modal-root=\"\"\n onClick={wrapEvent(onClick, handleClick)}\n onMouseDown={wrapEvent(onMouseDown, handleMouseDown)}\n onKeyDown={wrapEvent(onKeyDown, handleKeyDown)}\n {...otherProps}\n />\n );\n }\n);\n"],"file":"ModalBackdrop.js"}
1
+ {"version":3,"file":"ModalBackdrop.js","names":["useRef","forwardRef","assignMultipleRefs","wrapEvent","ModalBackdrop","forwardedRef","as","Comp","onClose","onClick","onMouseDown","onKeyDown","disableCloseOnClick","disableEscapeKeyDown","otherProps","ref","mouseDownTargetRef","handleClick","e","target","currentTarget","current","stopPropagation","handleMouseDown","handleKeyDown","key"],"sources":["../../../src/Modal/ModalBackdrop.tsx"],"sourcesContent":["import type {\n HTMLAttributes,\n ElementType,\n CSSProperties,\n MouseEvent,\n KeyboardEvent,\n} from 'react';\nimport { useRef, forwardRef } from 'react';\n\nimport { assignMultipleRefs } from '../utils/assign-ref';\nimport { wrapEvent } from '../utils/wrap-event';\n\nexport interface ModalBackdropProps extends HTMLAttributes<HTMLDivElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n onClose?: () => void;\n style?: CSSProperties;\n disableCloseOnClick?: boolean;\n disableEscapeKeyDown?: boolean;\n}\n\nexport const ModalBackdrop = forwardRef<HTMLDivElement, ModalBackdropProps>(\n (\n {\n as: Comp = 'div',\n onClose,\n onClick,\n onMouseDown,\n onKeyDown,\n disableCloseOnClick = false,\n disableEscapeKeyDown = false,\n ...otherProps\n },\n forwardedRef\n ) => {\n const ref = useRef();\n const mouseDownTargetRef = useRef<EventTarget | null>(null);\n\n const handleClick = (e: MouseEvent<HTMLDivElement>) => {\n // Ignore the events not coming from the \"backdrop\"\n // We don't want to close the dialog when clicking the dialog content.\n if (e.target !== e.currentTarget) {\n return;\n }\n\n // Make sure the event starts and ends on the same DOM element.\n if (e.target !== mouseDownTargetRef.current) {\n return;\n }\n\n mouseDownTargetRef.current = null;\n !disableCloseOnClick && onClose?.();\n e.stopPropagation();\n };\n\n const handleMouseDown = (e: MouseEvent<HTMLDivElement>) => {\n mouseDownTargetRef.current = e.target;\n };\n\n const handleKeyDown = (e: KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Escape') {\n !disableEscapeKeyDown && onClose?.();\n e.stopPropagation();\n }\n };\n\n return (\n <Comp\n ref={assignMultipleRefs(ref, forwardedRef)}\n data-modal-root=\"\"\n onClick={wrapEvent(onClick, handleClick)}\n onMouseDown={wrapEvent(onMouseDown, handleMouseDown)}\n onKeyDown={wrapEvent(onKeyDown, handleKeyDown)}\n {...otherProps}\n />\n );\n }\n);\n"],"mappings":";;;AAOA,SAASA,MAAT,EAAiBC,UAAjB,QAAmC,OAAnC;AAEA,SAASC,kBAAT,QAAmC,qBAAnC;AACA,SAASC,SAAT,QAA0B,qBAA1B;;AAWA,OAAO,IAAMC,aAAa,gBAAGH,UAAU,CACrC,gBAWEI,YAXF,EAYK;EAAA,mBAVDC,EAUC;EAAA,IAVGC,IAUH,wBAVU,KAUV;EAAA,IATDC,OASC,QATDA,OASC;EAAA,IARDC,OAQC,QARDA,OAQC;EAAA,IAPDC,WAOC,QAPDA,WAOC;EAAA,IANDC,SAMC,QANDA,SAMC;EAAA,iCALDC,mBAKC;EAAA,IALDA,mBAKC,sCALqB,KAKrB;EAAA,iCAJDC,oBAIC;EAAA,IAJDA,oBAIC,sCAJsB,KAItB;EAAA,IAHEC,UAGF;;EACH,IAAMC,GAAG,GAAGf,MAAM,EAAlB;EACA,IAAMgB,kBAAkB,GAAGhB,MAAM,CAAqB,IAArB,CAAjC;;EAEA,IAAMiB,WAAW,GAAG,SAAdA,WAAc,CAACC,CAAD,EAAmC;IACrD;IACA;IACA,IAAIA,CAAC,CAACC,MAAF,KAAaD,CAAC,CAACE,aAAnB,EAAkC;MAChC;IACD,CALoD,CAOrD;;;IACA,IAAIF,CAAC,CAACC,MAAF,KAAaH,kBAAkB,CAACK,OAApC,EAA6C;MAC3C;IACD;;IAEDL,kBAAkB,CAACK,OAAnB,GAA6B,IAA7B;IACA,CAACT,mBAAD,KAAwBJ,OAAxB,aAAwBA,OAAxB,uBAAwBA,OAAO,EAA/B;IACAU,CAAC,CAACI,eAAF;EACD,CAfD;;EAiBA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB,CAACL,CAAD,EAAmC;IACzDF,kBAAkB,CAACK,OAAnB,GAA6BH,CAAC,CAACC,MAA/B;EACD,CAFD;;EAIA,IAAMK,aAAa,GAAG,SAAhBA,aAAgB,CAACN,CAAD,EAAsC;IAC1D,IAAIA,CAAC,CAACO,GAAF,KAAU,QAAd,EAAwB;MACtB,CAACZ,oBAAD,KAAyBL,OAAzB,aAAyBA,OAAzB,uBAAyBA,OAAO,EAAhC;MACAU,CAAC,CAACI,eAAF;IACD;EACF,CALD;;EAOA,oBACE,KAAC,IAAD;IACE,GAAG,EAAEpB,kBAAkB,CAACa,GAAD,EAAMV,YAAN,CADzB;IAEE,mBAAgB,EAFlB;IAGE,OAAO,EAAEF,SAAS,CAACM,OAAD,EAAUQ,WAAV,CAHpB;IAIE,WAAW,EAAEd,SAAS,CAACO,WAAD,EAAca,eAAd,CAJxB;IAKE,SAAS,EAAEpB,SAAS,CAACQ,SAAD,EAAYa,aAAZ;EALtB,GAMMV,UANN,EADF;AAUD,CAvDoC,CAAhC"}
File without changes
File without changes
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Modal/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAd;AACA,cAAc,iBAAd","sourcesContent":["export * from './Modal';\nexport * from './ModalBackdrop';\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/Modal/index.ts"],"sourcesContent":["export * from './Modal';\nexport * from './ModalBackdrop';\n"],"mappings":"AAAA,cAAc,SAAd;AACA,cAAc,iBAAd"}
File without changes
@@ -1,9 +1,10 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
+ var _excluded = ["placement", "strategy", "as", "innerAs", "anchorEl", "children", "modifiers", "usePortal", "style", "portalSelector", "distance", "skidding", "arrowPadding", "offsetFn"];
4
5
  import { forwardRef, useRef, useEffect, useLayoutEffect, useMemo, memo } from 'react';
5
6
  import { createPopper } from '@popperjs/core';
6
- import { assignMultipleRefs } from '../utils/assignRef';
7
+ import { assignMultipleRefs } from '../utils/assign-ref';
7
8
  import { PopperProvider } from './context';
8
9
  import { Portal } from '../Portal';
9
10
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -34,7 +35,7 @@ export var Popper = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Popper(_
34
35
  _ref$arrowPadding = _ref.arrowPadding,
35
36
  arrowPadding = _ref$arrowPadding === void 0 ? 5 : _ref$arrowPadding,
36
37
  offsetFn = _ref.offsetFn,
37
- props = _objectWithoutProperties(_ref, ["placement", "strategy", "as", "innerAs", "anchorEl", "children", "modifiers", "usePortal", "style", "portalSelector", "distance", "skidding", "arrowPadding", "offsetFn"]);
38
+ props = _objectWithoutProperties(_ref, _excluded);
38
39
 
39
40
  var arrowRef = useRef(null);
40
41
  var popperRef = useRef(null);
@@ -50,7 +51,7 @@ export var Popper = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Popper(_
50
51
  var offsetModifier = {
51
52
  name: 'offset',
52
53
  options: {
53
- offset: offsetFn != null ? offsetFn : [skidding, distance]
54
+ offset: offsetFn !== null && offsetFn !== void 0 ? offsetFn : [skidding, distance]
54
55
  }
55
56
  };
56
57
  return [arrowModifier, offsetModifier];
@@ -72,7 +73,7 @@ export var Popper = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Popper(_
72
73
  useEnhancedEffect(function () {
73
74
  var _popperEngineInstance;
74
75
 
75
- (_popperEngineInstance = popperEngineInstance.current) == null ? void 0 : _popperEngineInstance.forceUpdate();
76
+ (_popperEngineInstance = popperEngineInstance.current) === null || _popperEngineInstance === void 0 ? void 0 : _popperEngineInstance.forceUpdate();
76
77
  }, [props.hidden || props['aria-hidden']]);
77
78
  var contextValue = {
78
79
  arrowRef: arrowRef
@@ -80,7 +81,7 @@ export var Popper = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Popper(_
80
81
 
81
82
  var ret = /*#__PURE__*/_jsx(PopperProvider, {
82
83
  value: contextValue,
83
- children: /*#__PURE__*/_jsx(Comp, _extends({}, props, {
84
+ children: /*#__PURE__*/_jsx(Comp, _extends(_extends({}, props), {}, {
84
85
  as: innerAs,
85
86
  ref: assignMultipleRefs(popperRef, forwardedRef),
86
87
  style: _extends({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Popper/Popper.tsx"],"names":["forwardRef","useRef","useEffect","useLayoutEffect","useMemo","memo","createPopper","assignMultipleRefs","PopperProvider","Portal","useEnhancedEffect","window","emptyModifiers","Popper","forwardedRef","placement","strategy","as","Comp","innerAs","anchorEl","children","modifiers","usePortal","style","portalSelector","distance","skidding","arrowPadding","offsetFn","props","arrowRef","popperRef","popperEngineInstance","defaultModifiers","arrowModifier","name","options","element","padding","offsetModifier","offset","current","destroy","forceUpdate","hidden","contextValue","ret","position","left","top"],"mappings":"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","sourcesContent":["import type { HTMLAttributes, ElementType, RefObject, ReactNode } from 'react';\nimport {\n forwardRef,\n useRef,\n useEffect,\n useLayoutEffect,\n useMemo,\n memo,\n} from 'react';\nimport type {\n Placement,\n Modifier,\n PositioningStrategy,\n Instance,\n Rect,\n} from '@popperjs/core';\nimport { createPopper } from '@popperjs/core';\nimport type { OffsetModifier } from '@popperjs/core/lib/modifiers/offset';\nimport type { ArrowModifier } from '@popperjs/core/lib/modifiers/arrow';\n\nimport { assignMultipleRefs } from '../utils/assignRef';\nimport type { PopperContextProps } from './context';\nimport { PopperProvider } from './context';\nimport { Portal } from '../Portal';\n\nconst useEnhancedEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n\nexport type OffsetsFunction = (arg0: {\n popper: Rect;\n reference: Rect;\n placement: Placement;\n}) => [number | null | undefined, number | null | undefined];\n\nexport interface PopperProps extends HTMLAttributes<HTMLDivElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n anchorEl: RefObject<HTMLElement>;\n children?: ReactNode;\n placement?: Placement;\n strategy?: PositioningStrategy;\n modifiers?: Array<Partial<Modifier<any, any>>>;\n usePortal?: boolean;\n portalSelector?: string;\n /**\n * Displaces the popper along the reference element.\n */\n skidding?: number;\n /**\n * Displaces the popper away from, or toward, the reference element in the direction of its placement. A positive number displaces it further away, while a negative number lets it overlap the reference.\n */\n distance?: number;\n /**\n * An optional function that must return a pair of [skidding, padding]. Useful for doing things like, displace the popper by 100%.\n */\n offsetFn?: OffsetsFunction;\n /**\n * If you don't want the arrow to reach the very edge of the popper (this is common if your popper has rounded corners using border-radius), you can apply some padding to it.\n */\n arrowPadding?: number;\n}\n\nconst emptyModifiers: Array<Partial<Modifier<any, any>>> = [];\nexport const Popper = memo(\n forwardRef<HTMLDivElement, PopperProps>(function Popper(\n {\n placement = 'bottom',\n strategy = 'absolute',\n as: Comp = 'div',\n innerAs,\n anchorEl,\n children,\n modifiers = emptyModifiers,\n usePortal = false,\n style = {},\n portalSelector = 'body',\n distance = 0,\n skidding = 0,\n arrowPadding = 5,\n offsetFn,\n ...props\n },\n forwardedRef\n ) {\n const arrowRef = useRef<HTMLSpanElement>(null);\n\n const popperRef = useRef<HTMLDivElement | null>(null);\n const popperEngineInstance = useRef<null | Instance>(null);\n\n const defaultModifiers: Array<Partial<Modifier<any, any>>> = useMemo(() => {\n const arrowModifier: Omit<ArrowModifier, 'enabled' | 'fn' | 'phase'> = {\n name: 'arrow',\n options: {\n element: '[data-popper-arrow]',\n padding: arrowPadding,\n },\n };\n const offsetModifier: Omit<OffsetModifier, 'enabled' | 'fn' | 'phase'> = {\n name: 'offset',\n options: {\n offset: offsetFn ?? [skidding, distance],\n },\n };\n\n return [arrowModifier, offsetModifier];\n }, [arrowPadding, distance, skidding, offsetFn]);\n\n useEnhancedEffect(() => {\n if (anchorEl && anchorEl.current && popperRef.current) {\n popperEngineInstance.current = createPopper(\n anchorEl.current,\n popperRef.current,\n {\n placement,\n strategy,\n modifiers: [...defaultModifiers, ...modifiers],\n }\n );\n }\n\n return () => {\n popperEngineInstance.current && popperEngineInstance.current.destroy();\n popperEngineInstance.current = null;\n };\n }, [anchorEl, modifiers, placement, strategy, defaultModifiers]);\n\n useEnhancedEffect(() => {\n popperEngineInstance.current?.forceUpdate();\n }, [props.hidden || props['aria-hidden']]);\n\n const contextValue: PopperContextProps = {\n arrowRef,\n };\n\n const ret = (\n <PopperProvider value={contextValue}>\n <Comp\n {...props}\n as={innerAs}\n ref={assignMultipleRefs(popperRef, forwardedRef)}\n style={{ position: 'fixed', left: -5000, top: -5000, ...style }}\n >\n {children}\n </Comp>\n </PopperProvider>\n );\n\n if (usePortal) {\n return <Portal selector={portalSelector}>{ret}</Portal>;\n }\n\n return ret;\n })\n);\n"],"file":"Popper.js"}
1
+ {"version":3,"file":"Popper.js","names":["forwardRef","useRef","useEffect","useLayoutEffect","useMemo","memo","createPopper","assignMultipleRefs","PopperProvider","Portal","useEnhancedEffect","window","emptyModifiers","Popper","forwardedRef","placement","strategy","as","Comp","innerAs","anchorEl","children","modifiers","usePortal","style","portalSelector","distance","skidding","arrowPadding","offsetFn","props","arrowRef","popperRef","popperEngineInstance","defaultModifiers","arrowModifier","name","options","element","padding","offsetModifier","offset","current","destroy","forceUpdate","hidden","contextValue","ret","position","left","top"],"sources":["../../../src/Popper/Popper.tsx"],"sourcesContent":["import type { HTMLAttributes, ElementType, RefObject, ReactNode } from 'react';\nimport {\n forwardRef,\n useRef,\n useEffect,\n useLayoutEffect,\n useMemo,\n memo,\n} from 'react';\nimport type {\n Placement,\n Modifier,\n PositioningStrategy,\n Instance,\n Rect,\n} from '@popperjs/core';\nimport { createPopper } from '@popperjs/core';\nimport type { OffsetModifier } from '@popperjs/core/lib/modifiers/offset';\nimport type { ArrowModifier } from '@popperjs/core/lib/modifiers/arrow';\n\nimport { assignMultipleRefs } from '../utils/assign-ref';\nimport type { PopperContextProps } from './context';\nimport { PopperProvider } from './context';\nimport { Portal } from '../Portal';\n\nconst useEnhancedEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n\nexport type OffsetsFunction = (arg0: {\n popper: Rect;\n reference: Rect;\n placement: Placement;\n}) => [number | null | undefined, number | null | undefined];\n\nexport interface PopperProps extends HTMLAttributes<HTMLDivElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n anchorEl: RefObject<HTMLElement>;\n children?: ReactNode;\n placement?: Placement;\n strategy?: PositioningStrategy;\n modifiers?: Array<Partial<Modifier<any, any>>>;\n usePortal?: boolean;\n portalSelector?: string;\n /**\n * Displaces the popper along the reference element.\n */\n skidding?: number;\n /**\n * Displaces the popper away from, or toward, the reference element in the direction of its placement. A positive number displaces it further away, while a negative number lets it overlap the reference.\n */\n distance?: number;\n /**\n * An optional function that must return a pair of [skidding, padding]. Useful for doing things like, displace the popper by 100%.\n */\n offsetFn?: OffsetsFunction;\n /**\n * If you don't want the arrow to reach the very edge of the popper (this is common if your popper has rounded corners using border-radius), you can apply some padding to it.\n */\n arrowPadding?: number;\n}\n\nconst emptyModifiers: Array<Partial<Modifier<any, any>>> = [];\nexport const Popper = memo(\n forwardRef<HTMLDivElement, PopperProps>(function Popper(\n {\n placement = 'bottom',\n strategy = 'absolute',\n as: Comp = 'div',\n innerAs,\n anchorEl,\n children,\n modifiers = emptyModifiers,\n usePortal = false,\n style = {},\n portalSelector = 'body',\n distance = 0,\n skidding = 0,\n arrowPadding = 5,\n offsetFn,\n ...props\n },\n forwardedRef\n ) {\n const arrowRef = useRef<HTMLSpanElement>(null);\n\n const popperRef = useRef<HTMLDivElement | null>(null);\n const popperEngineInstance = useRef<null | Instance>(null);\n\n const defaultModifiers: Array<Partial<Modifier<any, any>>> = useMemo(() => {\n const arrowModifier: Omit<ArrowModifier, 'enabled' | 'fn' | 'phase'> = {\n name: 'arrow',\n options: {\n element: '[data-popper-arrow]',\n padding: arrowPadding,\n },\n };\n const offsetModifier: Omit<OffsetModifier, 'enabled' | 'fn' | 'phase'> = {\n name: 'offset',\n options: {\n offset: offsetFn ?? [skidding, distance],\n },\n };\n\n return [arrowModifier, offsetModifier];\n }, [arrowPadding, distance, skidding, offsetFn]);\n\n useEnhancedEffect(() => {\n if (anchorEl && anchorEl.current && popperRef.current) {\n popperEngineInstance.current = createPopper(\n anchorEl.current,\n popperRef.current,\n {\n placement,\n strategy,\n modifiers: [...defaultModifiers, ...modifiers],\n }\n );\n }\n\n return () => {\n popperEngineInstance.current && popperEngineInstance.current.destroy();\n popperEngineInstance.current = null;\n };\n }, [anchorEl, modifiers, placement, strategy, defaultModifiers]);\n\n useEnhancedEffect(() => {\n popperEngineInstance.current?.forceUpdate();\n }, [props.hidden || props['aria-hidden']]);\n\n const contextValue: PopperContextProps = {\n arrowRef,\n };\n\n const ret = (\n <PopperProvider value={contextValue}>\n <Comp\n {...props}\n as={innerAs}\n ref={assignMultipleRefs(popperRef, forwardedRef)}\n style={{ position: 'fixed', left: -5000, top: -5000, ...style }}\n >\n {children}\n </Comp>\n </PopperProvider>\n );\n\n if (usePortal) {\n return <Portal selector={portalSelector}>{ret}</Portal>;\n }\n\n return ret;\n })\n);\n"],"mappings":"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"}
File without changes
@@ -1,13 +1,14 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["as"];
3
4
  import { forwardRef } from 'react';
4
5
  import { usePopperContext } from './context';
5
- import { assignRef } from '../utils/assignRef';
6
+ import { assignMultipleRefs } from '../utils/assign-ref';
6
7
  import { jsx as _jsx } from "react/jsx-runtime";
7
8
  export var PopperArrow = /*#__PURE__*/forwardRef(function PopperArrow(_ref, _ref2) {
8
9
  var _ref$as = _ref.as,
9
10
  Comp = _ref$as === void 0 ? 'div' : _ref$as,
10
- props = _objectWithoutProperties(_ref, ["as"]);
11
+ props = _objectWithoutProperties(_ref, _excluded);
11
12
 
12
13
  var ctx = usePopperContext();
13
14
 
@@ -15,14 +16,13 @@ export var PopperArrow = /*#__PURE__*/forwardRef(function PopperArrow(_ref, _ref
15
16
  return null;
16
17
  }
17
18
 
18
- return /*#__PURE__*/_jsx(Comp, _extends({}, props, {
19
+ return /*#__PURE__*/_jsx(Comp, _extends(_extends({}, props), {}, {
19
20
  ref: function ref(node) {
20
21
  if (node && ctx.arrowRef.current && ctx.arrowRef.current !== node) {
21
22
  throw new Error('You can only render one <PopperArrow /> per <Popper> component');
22
23
  }
23
24
 
24
- assignRef(_ref2, node);
25
- assignRef(ctx.arrowRef, node);
25
+ assignMultipleRefs(_ref2, ctx.arrowRef)(node);
26
26
  },
27
27
  "data-popper-arrow": ""
28
28
  }));
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Popper/PopperArrow.tsx"],"names":["forwardRef","usePopperContext","assignRef","PopperArrow","ref","as","Comp","props","ctx","node","arrowRef","current","Error"],"mappings":";;AACA,SAASA,UAAT,QAA2B,OAA3B;AAEA,SAASC,gBAAT,QAAiC,WAAjC;AACA,SAASC,SAAT,QAA0B,oBAA1B;;AAOA,OAAO,IAAMC,WAAW,gBAAGH,UAAU,CACnC,SAASG,WAAT,OAAqDC,KAArD,EAA0D;AAAA,qBAAnCC,EAAmC;AAAA,MAA/BC,IAA+B,wBAAxB,KAAwB;AAAA,MAAdC,KAAc;;AACxD,MAAMC,GAAG,GAAGP,gBAAgB,EAA5B;;AAEA,MAAIO,GAAG,KAAK,IAAZ,EAAkB;AAChB,WAAO,IAAP;AACD;;AAED,sBACE,KAAC,IAAD,eACMD,KADN;AAEE,IAAA,GAAG,EAAE,aAACE,IAAD,EAAiC;AACpC,UAAIA,IAAI,IAAID,GAAG,CAACE,QAAJ,CAAaC,OAArB,IAAgCH,GAAG,CAACE,QAAJ,CAAaC,OAAb,KAAyBF,IAA7D,EAAmE;AACjE,cAAM,IAAIG,KAAJ,CACJ,gEADI,CAAN;AAGD;;AAEDV,MAAAA,SAAS,CAACE,KAAD,EAAMK,IAAN,CAAT;AACAP,MAAAA,SAAS,CAACM,GAAG,CAACE,QAAL,EAAeD,IAAf,CAAT;AACD,KAXH;AAYE,yBAAkB;AAZpB,KADF;AAgBD,CAxBkC,CAA9B","sourcesContent":["import type { ElementType, HTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport { usePopperContext } from './context';\nimport { assignRef } from '../utils/assignRef';\n\nexport interface PopperArrowProps extends HTMLAttributes<HTMLDivElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n}\n\nexport const PopperArrow = forwardRef<HTMLDivElement, PopperArrowProps>(\n function PopperArrow({ as: Comp = 'div', ...props }, ref) {\n const ctx = usePopperContext();\n\n if (ctx === null) {\n return null;\n }\n\n return (\n <Comp\n {...props}\n ref={(node: HTMLDivElement | null) => {\n if (node && ctx.arrowRef.current && ctx.arrowRef.current !== node) {\n throw new Error(\n 'You can only render one <PopperArrow /> per <Popper> component'\n );\n }\n\n assignRef(ref, node);\n assignRef(ctx.arrowRef, node);\n }}\n data-popper-arrow=\"\"\n />\n );\n }\n);\n"],"file":"PopperArrow.js"}
1
+ {"version":3,"file":"PopperArrow.js","names":["forwardRef","usePopperContext","assignMultipleRefs","PopperArrow","ref","as","Comp","props","ctx","node","arrowRef","current","Error"],"sources":["../../../src/Popper/PopperArrow.tsx"],"sourcesContent":["import type { ElementType, HTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport { usePopperContext } from './context';\nimport { assignMultipleRefs } from '../utils/assign-ref';\n\nexport interface PopperArrowProps extends HTMLAttributes<HTMLDivElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n}\n\nexport const PopperArrow = forwardRef<HTMLDivElement, PopperArrowProps>(\n function PopperArrow({ as: Comp = 'div', ...props }, ref) {\n const ctx = usePopperContext();\n\n if (ctx === null) {\n return null;\n }\n\n return (\n <Comp\n {...props}\n ref={(node: HTMLDivElement | null) => {\n if (node && ctx.arrowRef.current && ctx.arrowRef.current !== node) {\n throw new Error(\n 'You can only render one <PopperArrow /> per <Popper> component'\n );\n }\n assignMultipleRefs(ref, ctx.arrowRef)(node);\n }}\n data-popper-arrow=\"\"\n />\n );\n }\n);\n"],"mappings":";;;AACA,SAASA,UAAT,QAA2B,OAA3B;AAEA,SAASC,gBAAT,QAAiC,WAAjC;AACA,SAASC,kBAAT,QAAmC,qBAAnC;;AAOA,OAAO,IAAMC,WAAW,gBAAGH,UAAU,CACnC,SAASG,WAAT,OAAqDC,KAArD,EAA0D;EAAA,mBAAnCC,EAAmC;EAAA,IAA/BC,IAA+B,wBAAxB,KAAwB;EAAA,IAAdC,KAAc;;EACxD,IAAMC,GAAG,GAAGP,gBAAgB,EAA5B;;EAEA,IAAIO,GAAG,KAAK,IAAZ,EAAkB;IAChB,OAAO,IAAP;EACD;;EAED,oBACE,KAAC,IAAD,wBACMD,KADN;IAEE,GAAG,EAAE,aAACE,IAAD,EAAiC;MACpC,IAAIA,IAAI,IAAID,GAAG,CAACE,QAAJ,CAAaC,OAArB,IAAgCH,GAAG,CAACE,QAAJ,CAAaC,OAAb,KAAyBF,IAA7D,EAAmE;QACjE,MAAM,IAAIG,KAAJ,CACJ,gEADI,CAAN;MAGD;;MACDV,kBAAkB,CAACE,KAAD,EAAMI,GAAG,CAACE,QAAV,CAAlB,CAAsCD,IAAtC;IACD,CATH;IAUE,qBAAkB;EAVpB,GADF;AAcD,CAtBkC,CAA9B"}
File without changes
File without changes
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Popper/context.ts"],"names":["createContext","useContext","context","PopperProvider","Provider","usePopperContext"],"mappings":"AACA,SAASA,aAAT,EAAwBC,UAAxB,QAA0C,OAA1C;AAMA,IAAMC,OAAO,gBAAGF,aAAa,CAA4B,IAA5B,CAA7B;AACA,OAAO,IAAMG,cAAc,GAAGD,OAAO,CAACE,QAA/B;AACP,OAAO,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB;AAAA,SAAMJ,UAAU,CAACC,OAAD,CAAhB;AAAA,CAAzB","sourcesContent":["import type { MutableRefObject } from 'react';\nimport { createContext, useContext } from 'react';\n\nexport interface PopperContextProps {\n arrowRef: MutableRefObject<HTMLSpanElement | null>;\n}\n\nconst context = createContext<PopperContextProps | null>(null);\nexport const PopperProvider = context.Provider;\nexport const usePopperContext = () => useContext(context);\n"],"file":"context.js"}
1
+ {"version":3,"file":"context.js","names":["createContext","useContext","context","PopperProvider","Provider","usePopperContext"],"sources":["../../../src/Popper/context.ts"],"sourcesContent":["import type { MutableRefObject } from 'react';\nimport { createContext, useContext } from 'react';\n\nexport interface PopperContextProps {\n arrowRef: MutableRefObject<HTMLSpanElement | null>;\n}\n\nconst context = createContext<PopperContextProps | null>(null);\nexport const PopperProvider = context.Provider;\nexport const usePopperContext = () => useContext(context);\n"],"mappings":"AACA,SAASA,aAAT,EAAwBC,UAAxB,QAA0C,OAA1C;AAMA,IAAMC,OAAO,gBAAGF,aAAa,CAA4B,IAA5B,CAA7B;AACA,OAAO,IAAMG,cAAc,GAAGD,OAAO,CAACE,QAA/B;AACP,OAAO,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB;EAAA,OAAMJ,UAAU,CAACC,OAAD,CAAhB;AAAA,CAAzB"}
File without changes
File without changes
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Popper/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAd;AACA,cAAc,eAAd;AACA,cAAc,WAAd","sourcesContent":["export * from './Popper';\nexport * from './PopperArrow';\nexport * from './context';\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/Popper/index.ts"],"sourcesContent":["export * from './Popper';\nexport * from './PopperArrow';\nexport * from './context';\n"],"mappings":"AAAA,cAAc,UAAd;AACA,cAAc,eAAd;AACA,cAAc,WAAd"}
File without changes
File without changes
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Portal/Portal.tsx"],"names":["createPortal","Portal","children","selector","window","dom","document","querySelector"],"mappings":"AACA,SAASA,YAAT,QAA6B,WAA7B;;AAOA,OAAO,IAAMC,MAAuB,GAAG,SAA1BA,MAA0B,OAAqC;AAAA,MAAlCC,QAAkC,QAAlCA,QAAkC;AAAA,2BAAxBC,QAAwB;AAAA,MAAxBA,QAAwB,8BAAb,MAAa;;AAC1E,MAAI,OAAOC,MAAP,KAAkB,WAAtB,EAAmC;AACjC,WAAO,IAAP;AACD;;AAED,MAAMC,GAAG,GAAGC,QAAQ,CAACC,aAAT,CAAuBJ,QAAvB,CAAZ;;AACA,MAAIE,GAAJ,EAAS;AACP,wBAAOL,YAAY,eAAC;AAAK,qBAAY,EAAjB;AAAA,gBAAqBE;AAArB,MAAD,EAAuCG,GAAvC,CAAnB;AACD;;AAED,SAAO,IAAP;AACD,CAXM","sourcesContent":["import type { FC, ReactNode } from 'react';\nimport { createPortal } from 'react-dom';\n\nexport interface PortalProps {\n children?: ReactNode;\n selector?: string;\n}\n\nexport const Portal: FC<PortalProps> = ({ children, selector = 'body' }) => {\n if (typeof window === 'undefined') {\n return null;\n }\n\n const dom = document.querySelector(selector);\n if (dom) {\n return createPortal(<div data-portal=\"\">{children}</div>, dom);\n }\n\n return null;\n};\n"],"file":"Portal.js"}
1
+ {"version":3,"file":"Portal.js","names":["createPortal","Portal","children","selector","window","dom","document","querySelector"],"sources":["../../../src/Portal/Portal.tsx"],"sourcesContent":["import type { FC, ReactNode } from 'react';\nimport { createPortal } from 'react-dom';\n\nexport interface PortalProps {\n children?: ReactNode;\n selector?: string;\n}\n\nexport const Portal: FC<PortalProps> = ({ children, selector = 'body' }) => {\n if (typeof window === 'undefined') {\n return null;\n }\n\n const dom = document.querySelector(selector);\n if (dom) {\n return createPortal(<div data-portal=\"\">{children}</div>, dom);\n }\n\n return null;\n};\n"],"mappings":"AACA,SAASA,YAAT,QAA6B,WAA7B;;AAOA,OAAO,IAAMC,MAAuB,GAAG,SAA1BA,MAA0B,OAAqC;EAAA,IAAlCC,QAAkC,QAAlCA,QAAkC;EAAA,yBAAxBC,QAAwB;EAAA,IAAxBA,QAAwB,8BAAb,MAAa;;EAC1E,IAAI,OAAOC,MAAP,KAAkB,WAAtB,EAAmC;IACjC,OAAO,IAAP;EACD;;EAED,IAAMC,GAAG,GAAGC,QAAQ,CAACC,aAAT,CAAuBJ,QAAvB,CAAZ;;EACA,IAAIE,GAAJ,EAAS;IACP,oBAAOL,YAAY,eAAC;MAAK,eAAY,EAAjB;MAAA,UAAqBE;IAArB,EAAD,EAAuCG,GAAvC,CAAnB;EACD;;EAED,OAAO,IAAP;AACD,CAXM"}
File without changes
File without changes
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/Portal/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAd","sourcesContent":["export * from './Portal';\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/Portal/index.ts"],"sourcesContent":["export * from './Portal';\n"],"mappings":"AAAA,cAAc,UAAd"}
File without changes
@@ -1,5 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ var _excluded = ["as", "value", "onChange", "checked", "name"];
3
4
  import { forwardRef } from 'react';
4
5
  import { useRadioGroupContext } from './context';
5
6
  import { wrapEvent } from '../utils';
@@ -11,12 +12,14 @@ export var RadioButton = /*#__PURE__*/forwardRef(function RadioButton(props, for
11
12
  onChangeProp = props.onChange,
12
13
  checkedProp = props.checked,
13
14
  nameProp = props.name,
14
- otherProps = _objectWithoutProperties(props, ["as", "value", "onChange", "checked", "name"]);
15
+ otherProps = _objectWithoutProperties(props, _excluded);
15
16
 
16
17
  var radioGroupContext = useRadioGroupContext();
17
18
 
18
19
  var handleChange = function handleChange(e) {
19
- radioGroupContext == null ? void 0 : radioGroupContext.onChange == null ? void 0 : radioGroupContext.onChange(e, valueProp);
20
+ var _radioGroupContext$on;
21
+
22
+ radioGroupContext === null || radioGroupContext === void 0 ? void 0 : (_radioGroupContext$on = radioGroupContext.onChange) === null || _radioGroupContext$on === void 0 ? void 0 : _radioGroupContext$on.call(radioGroupContext, e, valueProp);
20
23
  };
21
24
 
22
25
  var checked = radioGroupContext ? radioGroupContext.value === valueProp : checkedProp;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/RadioButton/RadioButton.tsx"],"names":["forwardRef","useRadioGroupContext","wrapEvent","RadioButton","props","forwardedRef","as","Comp","valueProp","value","onChangeProp","onChange","checkedProp","checked","nameProp","name","otherProps","radioGroupContext","handleChange","e","String"],"mappings":";;AAMA,SAASA,UAAT,QAA2B,OAA3B;AAGA,SAASC,oBAAT,QAAqC,WAArC;AACA,SAASC,SAAT,QAA0B,UAA1B;;AAWA,OAAO,IAAMC,WAAW,gBAAGH,UAAU,CACnC,SAASG,WAAT,CAAqBC,KAArB,EAA4BC,YAA5B,EAA0C;AAAA,kBAQpCD,KARoC,CAEtCE,EAFsC;AAAA,MAElCC,IAFkC,0BAE3B,OAF2B;AAAA,MAG/BC,SAH+B,GAQpCJ,KARoC,CAGtCK,KAHsC;AAAA,MAI5BC,YAJ4B,GAQpCN,KARoC,CAItCO,QAJsC;AAAA,MAK7BC,WAL6B,GAQpCR,KARoC,CAKtCS,OALsC;AAAA,MAMhCC,QANgC,GAQpCV,KARoC,CAMtCW,IANsC;AAAA,MAOnCC,UAPmC,4BAQpCZ,KARoC;;AASxC,MAAMa,iBAAiB,GAAGhB,oBAAoB,EAA9C;;AAEA,MAAMiB,YAAY,GAAG,SAAfA,YAAe,CAACC,CAAD,EAAsC;AACzDF,IAAAA,iBAAiB,QAAjB,YAAAA,iBAAiB,CAAEN,QAAnB,oBAAAM,iBAAiB,CAAEN,QAAnB,CAA8BQ,CAA9B,EAAiCX,SAAjC;AACD,GAFD;;AAIA,MAAMK,OAAO,GAAGI,iBAAiB,GAC7BA,iBAAiB,CAACR,KAAlB,KAA4BD,SADC,GAE7BI,WAFJ;AAIA,sBACE,KAAC,IAAD;AACE,IAAA,GAAG,EAAEP,YADP;AAEE,IAAA,IAAI,EAAC,OAFP;AAGE,IAAA,OAAO,EAAEQ,OAHX;AAIE,oBAAcO,MAAM,CAACP,OAAD,CAJtB;AAKE,IAAA,IAAI,EAAEI,iBAAiB,GAAGA,iBAAiB,CAACF,IAArB,GAA4BD,QALrD;AAME,IAAA,QAAQ,EAAEZ,SAAS,CAACQ,YAAD,EAAeQ,YAAf,CANrB;AAOE,IAAA,KAAK,EAAEV;AAPT,KAQMQ,UARN,EADF;AAYD,CAhCkC,CAA9B","sourcesContent":["import type {\n ChangeEvent,\n ElementType,\n InputHTMLAttributes,\n ReactNode,\n} from 'react';\nimport { forwardRef } from 'react';\n\nimport type { RadioValue } from './context';\nimport { useRadioGroupContext } from './context';\nimport { wrapEvent } from '../utils';\n\nexport interface RadioButtonProps\n extends Omit<InputHTMLAttributes<HTMLInputElement>, 'value'> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n children?: ReactNode;\n checked?: boolean;\n value: RadioValue;\n}\n\nexport const RadioButton = forwardRef<HTMLInputElement, RadioButtonProps>(\n function RadioButton(props, forwardedRef) {\n const {\n as: Comp = 'input',\n value: valueProp,\n onChange: onChangeProp,\n checked: checkedProp,\n name: nameProp,\n ...otherProps\n } = props;\n const radioGroupContext = useRadioGroupContext();\n\n const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n radioGroupContext?.onChange?.(e, valueProp);\n };\n\n const checked = radioGroupContext\n ? radioGroupContext.value === valueProp\n : checkedProp;\n\n return (\n <Comp\n ref={forwardedRef}\n type=\"radio\"\n checked={checked}\n aria-checked={String(checked)}\n name={radioGroupContext ? radioGroupContext.name : nameProp}\n onChange={wrapEvent(onChangeProp, handleChange)}\n value={valueProp}\n {...otherProps}\n />\n );\n }\n);\n"],"file":"RadioButton.js"}
1
+ {"version":3,"file":"RadioButton.js","names":["forwardRef","useRadioGroupContext","wrapEvent","RadioButton","props","forwardedRef","as","Comp","valueProp","value","onChangeProp","onChange","checkedProp","checked","nameProp","name","otherProps","radioGroupContext","handleChange","e","String"],"sources":["../../../src/RadioButton/RadioButton.tsx"],"sourcesContent":["import type {\n ChangeEvent,\n ElementType,\n InputHTMLAttributes,\n ReactNode,\n} from 'react';\nimport { forwardRef } from 'react';\n\nimport type { RadioValue } from './context';\nimport { useRadioGroupContext } from './context';\nimport { wrapEvent } from '../utils';\n\nexport interface RadioButtonProps\n extends Omit<InputHTMLAttributes<HTMLInputElement>, 'value'> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n children?: ReactNode;\n checked?: boolean;\n value: RadioValue;\n}\n\nexport const RadioButton = forwardRef<HTMLInputElement, RadioButtonProps>(\n function RadioButton(props, forwardedRef) {\n const {\n as: Comp = 'input',\n value: valueProp,\n onChange: onChangeProp,\n checked: checkedProp,\n name: nameProp,\n ...otherProps\n } = props;\n const radioGroupContext = useRadioGroupContext();\n\n const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n radioGroupContext?.onChange?.(e, valueProp);\n };\n\n const checked = radioGroupContext\n ? radioGroupContext.value === valueProp\n : checkedProp;\n\n return (\n <Comp\n ref={forwardedRef}\n type=\"radio\"\n checked={checked}\n aria-checked={String(checked)}\n name={radioGroupContext ? radioGroupContext.name : nameProp}\n onChange={wrapEvent(onChangeProp, handleChange)}\n value={valueProp}\n {...otherProps}\n />\n );\n }\n);\n"],"mappings":";;;AAMA,SAASA,UAAT,QAA2B,OAA3B;AAGA,SAASC,oBAAT,QAAqC,WAArC;AACA,SAASC,SAAT,QAA0B,UAA1B;;AAWA,OAAO,IAAMC,WAAW,gBAAGH,UAAU,CACnC,SAASG,WAAT,CAAqBC,KAArB,EAA4BC,YAA5B,EAA0C;EACxC,gBAOID,KAPJ,CACEE,EADF;EAAA,IACMC,IADN,0BACa,OADb;EAAA,IAESC,SAFT,GAOIJ,KAPJ,CAEEK,KAFF;EAAA,IAGYC,YAHZ,GAOIN,KAPJ,CAGEO,QAHF;EAAA,IAIWC,WAJX,GAOIR,KAPJ,CAIES,OAJF;EAAA,IAKQC,QALR,GAOIV,KAPJ,CAKEW,IALF;EAAA,IAMKC,UANL,4BAOIZ,KAPJ;;EAQA,IAAMa,iBAAiB,GAAGhB,oBAAoB,EAA9C;;EAEA,IAAMiB,YAAY,GAAG,SAAfA,YAAe,CAACC,CAAD,EAAsC;IAAA;;IACzDF,iBAAiB,SAAjB,IAAAA,iBAAiB,WAAjB,qCAAAA,iBAAiB,CAAEN,QAAnB,qFAAAM,iBAAiB,EAAaE,CAAb,EAAgBX,SAAhB,CAAjB;EACD,CAFD;;EAIA,IAAMK,OAAO,GAAGI,iBAAiB,GAC7BA,iBAAiB,CAACR,KAAlB,KAA4BD,SADC,GAE7BI,WAFJ;EAIA,oBACE,KAAC,IAAD;IACE,GAAG,EAAEP,YADP;IAEE,IAAI,EAAC,OAFP;IAGE,OAAO,EAAEQ,OAHX;IAIE,gBAAcO,MAAM,CAACP,OAAD,CAJtB;IAKE,IAAI,EAAEI,iBAAiB,GAAGA,iBAAiB,CAACF,IAArB,GAA4BD,QALrD;IAME,QAAQ,EAAEZ,SAAS,CAACQ,YAAD,EAAeQ,YAAf,CANrB;IAOE,KAAK,EAAEV;EAPT,GAQMQ,UARN,EADF;AAYD,CAhCkC,CAA9B"}
File without changes
@@ -1,6 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
+ var _excluded = ["as", "onChange", "value", "name", "defaultValue"];
4
5
  import { forwardRef, useId } from 'react';
5
6
  import { RadioGroupProvider } from './context';
6
7
  import { useControlledState } from '../hooks';
@@ -12,7 +13,7 @@ export var RadioGroup = /*#__PURE__*/forwardRef(function RadioGroup(props, forwa
12
13
  valueProp = props.value,
13
14
  nameProp = props.name,
14
15
  defaultValue = props.defaultValue,
15
- otherProps = _objectWithoutProperties(props, ["as", "onChange", "value", "name", "defaultValue"]);
16
+ otherProps = _objectWithoutProperties(props, _excluded);
16
17
 
17
18
  var _useControlledState = useControlledState(valueProp, onChangeProp, defaultValue, function (setValue) {
18
19
  return function (e, value) {