@basic-ui/core 0.0.53 → 0.0.56

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 (302) hide show
  1. package/build/cjs/index.js +278 -505
  2. package/build/cjs/index.js.map +1 -1
  3. package/build/esm/Accordion/Accordion.js +20 -29
  4. package/build/esm/Accordion/Accordion.js.map +1 -1
  5. package/build/esm/Accordion/AccordionBody.js +18 -32
  6. package/build/esm/Accordion/AccordionBody.js.map +1 -1
  7. package/build/esm/Accordion/AccordionHeader.js +37 -74
  8. package/build/esm/Accordion/AccordionHeader.js.map +1 -1
  9. package/build/esm/Accordion/AccordionItem.js +19 -22
  10. package/build/esm/Accordion/AccordionItem.js.map +1 -1
  11. package/build/esm/Accordion/context.js +16 -13
  12. package/build/esm/Accordion/context.js.map +1 -1
  13. package/build/esm/Accordion/index.js.map +1 -1
  14. package/build/esm/Accordion/scopeQuery.js.map +1 -1
  15. package/build/esm/CheckBox/CheckBox.js +15 -25
  16. package/build/esm/CheckBox/CheckBox.js.map +1 -1
  17. package/build/esm/CheckBox/index.js.map +1 -1
  18. package/build/esm/ComboBox/Combobox.d.ts +7 -7
  19. package/build/esm/ComboBox/Combobox.js +52 -59
  20. package/build/esm/ComboBox/Combobox.js.map +1 -1
  21. package/build/esm/ComboBox/ComboboxButton.js +23 -28
  22. package/build/esm/ComboBox/ComboboxButton.js.map +1 -1
  23. package/build/esm/ComboBox/ComboboxInput.js +67 -70
  24. package/build/esm/ComboBox/ComboboxInput.js.map +1 -1
  25. package/build/esm/ComboBox/ComboboxLabel.js +15 -17
  26. package/build/esm/ComboBox/ComboboxLabel.js.map +1 -1
  27. package/build/esm/ComboBox/ComboboxList.js +19 -20
  28. package/build/esm/ComboBox/ComboboxList.js.map +1 -1
  29. package/build/esm/ComboBox/ComboboxOption.js +41 -45
  30. package/build/esm/ComboBox/ComboboxOption.js.map +1 -1
  31. package/build/esm/ComboBox/ComboboxPopover.js +22 -21
  32. package/build/esm/ComboBox/ComboboxPopover.js.map +1 -1
  33. package/build/esm/ComboBox/cities.js.map +1 -1
  34. package/build/esm/ComboBox/context.js +5 -6
  35. package/build/esm/ComboBox/context.js.map +1 -1
  36. package/build/esm/ComboBox/hooks.d.ts +2 -2
  37. package/build/esm/ComboBox/hooks.js +175 -148
  38. package/build/esm/ComboBox/hooks.js.map +1 -1
  39. package/build/esm/ComboBox/index.js.map +1 -1
  40. package/build/esm/ComboBox/makeHash.js +3 -6
  41. package/build/esm/ComboBox/makeHash.js.map +1 -1
  42. package/build/esm/ComboBox/scopeQuery.js.map +1 -1
  43. package/build/esm/FocusLock/FocusLock.js +26 -32
  44. package/build/esm/FocusLock/FocusLock.js.map +1 -1
  45. package/build/esm/FocusLock/index.js.map +1 -1
  46. package/build/esm/FocusLock/tabUtils.js +5 -7
  47. package/build/esm/FocusLock/tabUtils.js.map +1 -1
  48. package/build/esm/FocusLock/useFocusLock.js +14 -19
  49. package/build/esm/FocusLock/useFocusLock.js.map +1 -1
  50. package/build/esm/List/List.js +9 -11
  51. package/build/esm/List/List.js.map +1 -1
  52. package/build/esm/List/ListItem.js +9 -11
  53. package/build/esm/List/ListItem.js.map +1 -1
  54. package/build/esm/List/context.js +6 -6
  55. package/build/esm/List/context.js.map +1 -1
  56. package/build/esm/List/index.js.map +1 -1
  57. package/build/esm/Menu/ContextMenuTrigger.d.ts +4 -4
  58. package/build/esm/Menu/ContextMenuTrigger.js +32 -37
  59. package/build/esm/Menu/ContextMenuTrigger.js.map +1 -1
  60. package/build/esm/Menu/Menu.js +33 -49
  61. package/build/esm/Menu/Menu.js.map +1 -1
  62. package/build/esm/Menu/MenuButton.d.ts +4 -4
  63. package/build/esm/Menu/MenuButton.js +28 -44
  64. package/build/esm/Menu/MenuButton.js.map +1 -1
  65. package/build/esm/Menu/MenuItem.js +29 -38
  66. package/build/esm/Menu/MenuItem.js.map +1 -1
  67. package/build/esm/Menu/MenuList.js +61 -116
  68. package/build/esm/Menu/MenuList.js.map +1 -1
  69. package/build/esm/Menu/MenuPopover.js +16 -19
  70. package/build/esm/Menu/MenuPopover.js.map +1 -1
  71. package/build/esm/Menu/context.d.ts +1 -1
  72. package/build/esm/Menu/context.js +14 -12
  73. package/build/esm/Menu/context.js.map +1 -1
  74. package/build/esm/Menu/fixtures/countryList.js +1 -1
  75. package/build/esm/Menu/fixtures/countryList.js.map +1 -1
  76. package/build/esm/Menu/index.js.map +1 -1
  77. package/build/esm/Menu/scope.js.map +1 -1
  78. package/build/esm/Modal/Modal.js +13 -18
  79. package/build/esm/Modal/Modal.js.map +1 -1
  80. package/build/esm/Modal/ModalBackdrop.js +24 -33
  81. package/build/esm/Modal/ModalBackdrop.js.map +1 -1
  82. package/build/esm/Modal/index.js.map +1 -1
  83. package/build/esm/Popper/Popper.d.ts +3 -3
  84. package/build/esm/Popper/Popper.js +44 -61
  85. package/build/esm/Popper/Popper.js.map +1 -1
  86. package/build/esm/Popper/PopperArrow.js +11 -16
  87. package/build/esm/Popper/PopperArrow.js.map +1 -1
  88. package/build/esm/Popper/context.js +3 -5
  89. package/build/esm/Popper/context.js.map +1 -1
  90. package/build/esm/Popper/index.js.map +1 -1
  91. package/build/esm/Portal/Portal.js +9 -11
  92. package/build/esm/Portal/Portal.js.map +1 -1
  93. package/build/esm/Portal/PortalSelectorProvider.d.ts +3 -3
  94. package/build/esm/Portal/PortalSelectorProvider.js +6 -4
  95. package/build/esm/Portal/PortalSelectorProvider.js.map +1 -1
  96. package/build/esm/Portal/index.js.map +1 -1
  97. package/build/esm/RadioButton/RadioButton.js +17 -23
  98. package/build/esm/RadioButton/RadioButton.js.map +1 -1
  99. package/build/esm/RadioButton/RadioGroup.js +19 -28
  100. package/build/esm/RadioButton/RadioGroup.js.map +1 -1
  101. package/build/esm/RadioButton/context.d.ts +1 -1
  102. package/build/esm/RadioButton/context.js +8 -6
  103. package/build/esm/RadioButton/context.js.map +1 -1
  104. package/build/esm/RadioButton/index.js.map +1 -1
  105. package/build/esm/SkipNav/SkipNav.js +9 -11
  106. package/build/esm/SkipNav/SkipNav.js.map +1 -1
  107. package/build/esm/SkipNav/index.js.map +1 -1
  108. package/build/esm/Slider/Slider.d.ts +7 -7
  109. package/build/esm/Slider/Slider.js +340 -407
  110. package/build/esm/Slider/Slider.js.map +1 -1
  111. package/build/esm/Slider/index.js.map +1 -1
  112. package/build/esm/Spinner/Spinner.js +31 -59
  113. package/build/esm/Spinner/Spinner.js.map +1 -1
  114. package/build/esm/Spinner/SpinnerButton.js +14 -19
  115. package/build/esm/Spinner/SpinnerButton.js.map +1 -1
  116. package/build/esm/Spinner/context.js +8 -7
  117. package/build/esm/Spinner/context.js.map +1 -1
  118. package/build/esm/Spinner/index.js.map +1 -1
  119. package/build/esm/Tabs/Tab.js +32 -50
  120. package/build/esm/Tabs/Tab.js.map +1 -1
  121. package/build/esm/Tabs/TabList.js +24 -34
  122. package/build/esm/Tabs/TabList.js.map +1 -1
  123. package/build/esm/Tabs/TabPanel.js +16 -23
  124. package/build/esm/Tabs/TabPanel.js.map +1 -1
  125. package/build/esm/Tabs/TabPanels.js +15 -20
  126. package/build/esm/Tabs/TabPanels.js.map +1 -1
  127. package/build/esm/Tabs/Tabs.js +17 -33
  128. package/build/esm/Tabs/Tabs.js.map +1 -1
  129. package/build/esm/Tabs/context.js +16 -13
  130. package/build/esm/Tabs/context.js.map +1 -1
  131. package/build/esm/Tabs/index.js.map +1 -1
  132. package/build/esm/Tabs/scopeQuery.js.map +1 -1
  133. package/build/esm/Tooltip/Tooltip.d.ts +2 -2
  134. package/build/esm/Tooltip/Tooltip.js +20 -30
  135. package/build/esm/Tooltip/Tooltip.js.map +1 -1
  136. package/build/esm/Tooltip/index.js.map +1 -1
  137. package/build/esm/Tooltip/stateMachine.d.ts +2 -2
  138. package/build/esm/Tooltip/stateMachine.js +95 -81
  139. package/build/esm/Tooltip/stateMachine.js.map +1 -1
  140. package/build/esm/Tooltip/useTooltip.d.ts +2 -2
  141. package/build/esm/Tooltip/useTooltip.js +38 -50
  142. package/build/esm/Tooltip/useTooltip.js.map +1 -1
  143. package/build/esm/hooks/index.js.map +1 -1
  144. package/build/esm/hooks/useAutoFocus.js +3 -3
  145. package/build/esm/hooks/useAutoFocus.js.map +1 -1
  146. package/build/esm/hooks/useChildrenCounter.js +6 -8
  147. package/build/esm/hooks/useChildrenCounter.js.map +1 -1
  148. package/build/esm/hooks/useControlledState.js +6 -16
  149. package/build/esm/hooks/useControlledState.js.map +1 -1
  150. package/build/esm/hooks/useFocusReturn.js +8 -12
  151. package/build/esm/hooks/useFocusReturn.js.map +1 -1
  152. package/build/esm/hooks/useFocusState.d.ts +2 -2
  153. package/build/esm/hooks/useFocusState.js +9 -15
  154. package/build/esm/hooks/useFocusState.js.map +1 -1
  155. package/build/esm/hooks/useGestureHandlers.d.ts +1 -1
  156. package/build/esm/hooks/useGestureHandlers.js +80 -100
  157. package/build/esm/hooks/useGestureHandlers.js.map +1 -1
  158. package/build/esm/hooks/useMeasure.js +7 -15
  159. package/build/esm/hooks/useMeasure.js.map +1 -1
  160. package/build/esm/hooks/useOnClickOutside.js +4 -6
  161. package/build/esm/hooks/useOnClickOutside.js.map +1 -1
  162. package/build/esm/hooks/useOnKeyDown.js +3 -4
  163. package/build/esm/hooks/useOnKeyDown.js.map +1 -1
  164. package/build/esm/hooks/useReducerMachine.d.ts +1 -1
  165. package/build/esm/hooks/useReducerMachine.js +15 -26
  166. package/build/esm/hooks/useReducerMachine.js.map +1 -1
  167. package/build/esm/hooks/useRemoveBodyScroll.js +9 -14
  168. package/build/esm/hooks/useRemoveBodyScroll.js.map +1 -1
  169. package/build/esm/hooks/useScope.d.ts +2 -2
  170. package/build/esm/hooks/useScope.js +12 -14
  171. package/build/esm/hooks/useScope.js.map +1 -1
  172. package/build/esm/hooks/useThrottle.js +5 -10
  173. package/build/esm/hooks/useThrottle.js.map +1 -1
  174. package/build/esm/index.js +4 -2
  175. package/build/esm/index.js.map +1 -1
  176. package/build/esm/styles.d.js +2 -0
  177. package/build/esm/styles.d.js.map +1 -0
  178. package/build/esm/utils/assign-ref.js +3 -5
  179. package/build/esm/utils/assign-ref.js.map +1 -1
  180. package/build/esm/utils/can-use-dom.js.map +1 -1
  181. package/build/esm/utils/clamp.js.map +1 -1
  182. package/build/esm/utils/context.d.ts +1 -1
  183. package/build/esm/utils/context.js +13 -20
  184. package/build/esm/utils/context.js.map +1 -1
  185. package/build/esm/utils/create-subscription.js +5 -10
  186. package/build/esm/utils/create-subscription.js.map +1 -1
  187. package/build/esm/utils/get-circular-index.js +0 -1
  188. package/build/esm/utils/get-circular-index.js.map +1 -1
  189. package/build/esm/utils/index.js.map +1 -1
  190. package/build/esm/utils/is-right-click.js.map +1 -1
  191. package/build/esm/utils/owner-document.js +1 -1
  192. package/build/esm/utils/owner-document.js.map +1 -1
  193. package/build/esm/utils/polymorphic.d.ts +10 -10
  194. package/build/esm/utils/polymorphic.js.map +1 -1
  195. package/build/esm/utils/rubber-band-clamp.js +2 -5
  196. package/build/esm/utils/rubber-band-clamp.js.map +1 -1
  197. package/build/esm/utils/use-stable-callback.js +8 -10
  198. package/build/esm/utils/use-stable-callback.js.map +1 -1
  199. package/build/esm/utils/wrap-event.d.ts +1 -1
  200. package/build/esm/utils/wrap-event.js +2 -5
  201. package/build/esm/utils/wrap-event.js.map +1 -1
  202. package/build/tsconfig-build.tsbuildinfo +1 -1
  203. package/package.json +6 -6
  204. package/src/Accordion/Accordion.tsx +1 -1
  205. package/src/Accordion/AccordionBody.tsx +1 -1
  206. package/src/Accordion/AccordionHeader.tsx +1 -2
  207. package/src/ComboBox/Combobox.tsx +2 -2
  208. package/src/ComboBox/ComboboxList.tsx +1 -1
  209. package/src/ComboBox/ComboboxOption.tsx +0 -1
  210. package/src/ComboBox/hooks.tsx +0 -3
  211. package/src/FocusLock/useFocusLock.ts +0 -1
  212. package/src/Menu/Menu.tsx +2 -3
  213. package/src/Menu/MenuItem.tsx +1 -2
  214. package/src/Menu/MenuList.tsx +4 -4
  215. package/src/Modal/Modal.story.tsx +11 -7
  216. package/src/Modal/ModalBackdrop.tsx +1 -1
  217. package/src/Modal/NavDrawer.story.tsx +9 -6
  218. package/src/Popper/Popper.story.tsx +23 -7
  219. package/src/Popper/Popper.tsx +2 -2
  220. package/src/RadioButton/RadioButton.story.tsx +2 -1
  221. package/src/Slider/Slider.tsx +6 -11
  222. package/src/Spinner/Spinner.tsx +1 -1
  223. package/src/Tabs/TabList.tsx +1 -1
  224. package/src/Tooltip/Tooltip.tsx +8 -5
  225. package/src/Tooltip/useTooltip.ts +1 -1
  226. package/src/hooks/useControlledState.ts +1 -6
  227. package/src/hooks/useGestureHandlers.ts +0 -4
  228. package/src/hooks/useRemoveBodyScroll.ts +0 -1
  229. package/src/hooks/useScope.ts +1 -1
  230. package/src/styles.d.ts +1 -0
  231. package/src/utils/polymorphic.ts +14 -10
  232. package/src/utils/use-stable-callback.ts +0 -1
  233. package/build/esm/Carousel/Carousel.d.ts +0 -9
  234. package/build/esm/Carousel/Carousel.js +0 -38
  235. package/build/esm/Carousel/Carousel.js.map +0 -1
  236. package/build/esm/Carousel/Fader.d.ts +0 -14
  237. package/build/esm/Carousel/Fader.js +0 -76
  238. package/build/esm/Carousel/Fader.js.map +0 -1
  239. package/build/esm/Carousel/FaderItem.d.ts +0 -5
  240. package/build/esm/Carousel/FaderItem.js +0 -16
  241. package/build/esm/Carousel/FaderItem.js.map +0 -1
  242. package/build/esm/Carousel/Preloader.d.ts +0 -7
  243. package/build/esm/Carousel/Preloader.js +0 -70
  244. package/build/esm/Carousel/Preloader.js.map +0 -1
  245. package/build/esm/Carousel/Slider.d.ts +0 -14
  246. package/build/esm/Carousel/Slider.js +0 -212
  247. package/build/esm/Carousel/Slider.js.map +0 -1
  248. package/build/esm/Carousel/SliderItem.d.ts +0 -12
  249. package/build/esm/Carousel/SliderItem.js +0 -41
  250. package/build/esm/Carousel/SliderItem.js.map +0 -1
  251. package/build/esm/Carousel/context.d.ts +0 -10
  252. package/build/esm/Carousel/context.js +0 -8
  253. package/build/esm/Carousel/context.js.map +0 -1
  254. package/build/esm/Carousel/getSliderParams.d.ts +0 -9
  255. package/build/esm/Carousel/getSliderParams.js +0 -85
  256. package/build/esm/Carousel/getSliderParams.js.map +0 -1
  257. package/build/esm/Carousel/index.d.ts +0 -7
  258. package/build/esm/Carousel/index.js +0 -8
  259. package/build/esm/Carousel/index.js.map +0 -1
  260. package/build/esm/Carousel/useCarouselGestures.d.ts +0 -30
  261. package/build/esm/Carousel/useCarouselGestures.js +0 -33
  262. package/build/esm/Carousel/useCarouselGestures.js.map +0 -1
  263. package/build/esm/DatePicker/DatePicker.d.ts +0 -24
  264. package/build/esm/DatePicker/DatePicker.js +0 -101
  265. package/build/esm/DatePicker/DatePicker.js.map +0 -1
  266. package/build/esm/DatePicker/DatePickerSelect.d.ts +0 -8
  267. package/build/esm/DatePicker/DatePickerSelect.js +0 -201
  268. package/build/esm/DatePicker/DatePickerSelect.js.map +0 -1
  269. package/build/esm/DatePicker/RangeDatePicker.d.ts +0 -28
  270. package/build/esm/DatePicker/RangeDatePicker.js +0 -94
  271. package/build/esm/DatePicker/RangeDatePicker.js.map +0 -1
  272. package/build/esm/DatePicker/adjustDates.d.ts +0 -4
  273. package/build/esm/DatePicker/adjustDates.js +0 -18
  274. package/build/esm/DatePicker/adjustDates.js.map +0 -1
  275. package/build/esm/DatePicker/contexts.d.ts +0 -31
  276. package/build/esm/DatePicker/contexts.js +0 -15
  277. package/build/esm/DatePicker/contexts.js.map +0 -1
  278. package/build/esm/DatePicker/dateTypes.d.ts +0 -2
  279. package/build/esm/DatePicker/dateTypes.js +0 -2
  280. package/build/esm/DatePicker/dateTypes.js.map +0 -1
  281. package/build/esm/DatePicker/hooks.d.ts +0 -36
  282. package/build/esm/DatePicker/hooks.js +0 -98
  283. package/build/esm/DatePicker/hooks.js.map +0 -1
  284. package/build/esm/DatePicker/index.d.ts +0 -5
  285. package/build/esm/DatePicker/index.js +0 -6
  286. package/build/esm/DatePicker/index.js.map +0 -1
  287. package/build/esm/hooks/useId.d.ts +0 -1
  288. package/build/esm/hooks/useId.js +0 -25
  289. package/build/esm/hooks/useId.js.map +0 -1
  290. package/build/esm/utils/assignRef.d.ts +0 -3
  291. package/build/esm/utils/assignRef.js +0 -25
  292. package/build/esm/utils/assignRef.js.map +0 -1
  293. package/build/esm/utils/getCircularIndex.d.ts +0 -1
  294. package/build/esm/utils/getCircularIndex.js +0 -8
  295. package/build/esm/utils/getCircularIndex.js.map +0 -1
  296. package/build/esm/utils/rubberBandClamp.d.ts +0 -2
  297. package/build/esm/utils/rubberBandClamp.js +0 -20
  298. package/build/esm/utils/rubberBandClamp.js.map +0 -1
  299. package/build/esm/utils/wrapEvent.d.ts +0 -3
  300. package/build/esm/utils/wrapEvent.js +0 -16
  301. package/build/esm/utils/wrapEvent.js.map +0 -1
  302. package/build/tsconfig.tsbuildinfo +0 -7270
@@ -1,15 +1,3 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- import _extends from "@babel/runtime/helpers/extends";
3
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
5
- var _excluded = ["children"],
6
- _excluded2 = ["aria-label", "aria-labelledby", "aria-valuetext", "as", "innerAs", "defaultValue", "disabled", "value", "getAriaLabel", "getAriaValueText", "handleAlignment", "max", "min", "name", "onChange", "onKeyDown", "onMouseDown", "onMouseMove", "onMouseUp", "onPointerDown", "onPointerUp", "onTouchEnd", "onTouchMove", "onTouchStart", "orientation", "step", "children"],
7
- _excluded3 = ["ref"],
8
- _excluded4 = ["as", "innerAs", "children", "style"],
9
- _excluded5 = ["as", "innerAs", "children", "style"],
10
- _excluded6 = ["as", "innerAs", "onBlur", "onFocus", "style", "onKeyDown"],
11
- _excluded7 = ["as", "innerAs", "children", "style", "value"];
12
-
13
1
  /* eslint-disable @typescript-eslint/ban-ts-comment */
14
2
 
15
3
  /**
@@ -33,6 +21,7 @@ var _excluded = ["children"],
33
21
  * @see Example https://github.com/Stanko/aria-progress-range-slider
34
22
  * @see Example http://www.oaa-accessibility.org/examplep/slider1/
35
23
  */
24
+
36
25
  import { forwardRef, memo, useRef, useState, useCallback, useEffect, useLayoutEffect, useId } from 'react';
37
26
  import { createContext } from '../utils/context';
38
27
  import { isRightClick } from '../utils/is-right-click';
@@ -40,37 +29,34 @@ import { getOwnerDocument } from '../utils/owner-document';
40
29
  import { useStableLayoutCallback } from '../utils/use-stable-callback';
41
30
  import { assignMultipleRefs, wrapEvent } from '../utils';
42
31
  import { useControlledState } from '../hooks';
43
- import { jsx as _jsx } from "react/jsx-runtime";
44
- import { jsxs as _jsxs } from "react/jsx-runtime";
45
-
46
- var noop = function noop() {
32
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
33
+ const noop = () => {
47
34
  /* noop */
48
35
  };
36
+ const [SliderProvider, useSliderContext] = createContext('Slider');
49
37
 
50
- var _createContext = createContext('Slider'),
51
- _createContext2 = _slicedToArray(_createContext, 2),
52
- SliderProvider = _createContext2[0],
53
- useSliderContext = _createContext2[1]; ////////////////////////////////////////////////////////////////////////////////
38
+ ////////////////////////////////////////////////////////////////////////////////
54
39
 
55
40
  /**
56
41
  * Slider
57
42
  *
58
43
  * @see Docs https://reach.tech/slider#slider
59
44
  */
60
-
61
-
62
- var Slider = /*#__PURE__*/forwardRef(function Slider(_ref, forwardedRef) {
63
- var children = _ref.children,
64
- props = _objectWithoutProperties(_ref, _excluded);
65
-
66
- return /*#__PURE__*/_jsx(SliderInput, _extends(_extends({}, props), {}, {
45
+ const Slider = /*#__PURE__*/forwardRef(function Slider(_ref, forwardedRef) {
46
+ let {
47
+ children,
48
+ ...props
49
+ } = _ref;
50
+ return /*#__PURE__*/_jsx(SliderInput, {
51
+ ...props,
67
52
  ref: forwardedRef,
68
53
  "data-reach-slider": "",
69
54
  children: /*#__PURE__*/_jsxs(SliderTrack, {
70
55
  children: [/*#__PURE__*/_jsx(SliderRange, {}), /*#__PURE__*/_jsx(SliderHandle, {}), children]
71
56
  })
72
- }));
57
+ });
73
58
  });
59
+
74
60
  /**
75
61
  * @see Docs https://reach.tech/slider#slider-props
76
62
  */
@@ -86,100 +72,82 @@ var Slider = /*#__PURE__*/forwardRef(function Slider(_ref, forwardedRef) {
86
72
  *
87
73
  * @see Docs https://reach.tech/slider#sliderinput
88
74
  */
89
- var SliderInput = /*#__PURE__*/forwardRef(function SliderInput(_ref2, forwardedRef) {
90
- var ariaLabel = _ref2['aria-label'],
91
- ariaLabelledBy = _ref2['aria-labelledby'],
92
- ariaValueTextProp = _ref2['aria-valuetext'],
93
- _ref2$as = _ref2.as,
94
- Comp = _ref2$as === void 0 ? 'div' : _ref2$as,
95
- innerAs = _ref2.innerAs,
96
- defaultValue = _ref2.defaultValue,
97
- _ref2$disabled = _ref2.disabled,
98
- disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
99
- controlledValue = _ref2.value,
100
- getAriaLabel = _ref2.getAriaLabel,
101
- getAriaValueText = _ref2.getAriaValueText,
102
- _ref2$handleAlignment = _ref2.handleAlignment,
103
- handleAlignment = _ref2$handleAlignment === void 0 ? 'center' : _ref2$handleAlignment,
104
- _ref2$max = _ref2.max,
105
- max = _ref2$max === void 0 ? 100 : _ref2$max,
106
- _ref2$min = _ref2.min,
107
- min = _ref2$min === void 0 ? 0 : _ref2$min,
108
- name = _ref2.name,
109
- onChangeProp = _ref2.onChange,
110
- onKeyDown = _ref2.onKeyDown,
111
- onMouseDown = _ref2.onMouseDown,
112
- onMouseMove = _ref2.onMouseMove,
113
- onMouseUp = _ref2.onMouseUp,
114
- onPointerDown = _ref2.onPointerDown,
115
- onPointerUp = _ref2.onPointerUp,
116
- onTouchEnd = _ref2.onTouchEnd,
117
- onTouchMove = _ref2.onTouchMove,
118
- onTouchStart = _ref2.onTouchStart,
119
- _ref2$orientation = _ref2.orientation,
120
- orientation = _ref2$orientation === void 0 ? 'horizontal' : _ref2$orientation,
121
- _ref2$step = _ref2.step,
122
- step = _ref2$step === void 0 ? 1 : _ref2$step,
123
- children = _ref2.children,
124
- rest = _objectWithoutProperties(_ref2, _excluded2);
125
-
126
- var touchId = useRef();
127
- var fallbackId = useId();
128
- var id = rest.id || fallbackId; // Track whether or not the pointer is down without updating the component
129
-
130
- var pointerDownRef = useRef(false);
131
- var trackRef = useRef(null);
132
- var handleRef = useRef(null);
133
- var sliderRef = useRef(null);
134
-
135
- var _useState = useState(false),
136
- _useState2 = _slicedToArray(_useState, 2),
137
- hasFocus = _useState2[0],
138
- setHasFocus = _useState2[1];
139
-
140
- var _useDimensions = useDimensions(handleRef),
141
- x = _useDimensions.ref,
142
- handleDimensions = _objectWithoutProperties(_useDimensions, _excluded3);
143
-
144
- var _useControlledState = useControlledState(controlledValue, onChangeProp, defaultValue || min, function (setValue) {
145
- return function (e, v) {
146
- return setValue(v);
147
- };
148
- }),
149
- _useControlledState2 = _slicedToArray(_useControlledState, 2),
150
- _value = _useControlledState2[0],
151
- onChange = _useControlledState2[1];
152
-
153
- var value = clamp(_value, min, max);
154
- var trackPercent = valueToPercent(value, min, max);
155
- var isVertical = orientation === 'vertical';
156
- var handleSize = isVertical ? handleDimensions.height : handleDimensions.width; // TODO: Consider removing the `handleAlignment` prop
75
+ const SliderInput = /*#__PURE__*/forwardRef(function SliderInput(_ref2, forwardedRef) {
76
+ let {
77
+ 'aria-label': ariaLabel,
78
+ 'aria-labelledby': ariaLabelledBy,
79
+ 'aria-valuetext': ariaValueTextProp,
80
+ as: Comp = 'div',
81
+ innerAs,
82
+ defaultValue,
83
+ disabled = false,
84
+ value: controlledValue,
85
+ getAriaLabel,
86
+ getAriaValueText,
87
+ handleAlignment = 'center',
88
+ max = 100,
89
+ min = 0,
90
+ name,
91
+ onChange: onChangeProp,
92
+ onKeyDown,
93
+ onMouseDown,
94
+ onMouseMove,
95
+ onMouseUp,
96
+ onPointerDown,
97
+ onPointerUp,
98
+ onTouchEnd,
99
+ onTouchMove,
100
+ onTouchStart,
101
+ orientation = 'horizontal',
102
+ step = 1,
103
+ children,
104
+ ...rest
105
+ } = _ref2;
106
+ const touchId = useRef(undefined);
107
+ const fallbackId = useId();
108
+ const id = rest.id || fallbackId;
109
+
110
+ // Track whether or not the pointer is down without updating the component
111
+ const pointerDownRef = useRef(false);
112
+ const trackRef = useRef(null);
113
+ const handleRef = useRef(null);
114
+ const sliderRef = useRef(null);
115
+ const [hasFocus, setHasFocus] = useState(false);
116
+ const {
117
+ ref: x,
118
+ ...handleDimensions
119
+ } = useDimensions(handleRef);
120
+ const [_value, onChange] = useControlledState(controlledValue, onChangeProp, defaultValue || min, setValue => (e, v) => setValue(v));
121
+ const value = clamp(_value, min, max);
122
+ const trackPercent = valueToPercent(value, min, max);
123
+ const isVertical = orientation === 'vertical';
124
+ const handleSize = isVertical ? handleDimensions.height : handleDimensions.width;
125
+
126
+ // TODO: Consider removing the `handleAlignment` prop
157
127
  // We may want to use accept a `handlePosition` prop instead and let apps
158
128
  // define their own positioning logic, similar to how we do for popovers.
159
-
160
- var handlePosition = "calc(".concat(trackPercent, "% - ").concat(handleAlignment === 'center' ? "".concat(handleSize, "px / 2") : "".concat(handleSize, "px * ").concat(trackPercent * 0.01), ")");
161
- var handlePositionRef = useRef(handlePosition);
162
- useLayoutEffect(function () {
129
+ const handlePosition = `calc(${trackPercent}% - ${handleAlignment === 'center' ? `${handleSize}px / 2` : `${handleSize}px * ${trackPercent * 0.01}`})`;
130
+ const handlePositionRef = useRef(handlePosition);
131
+ useLayoutEffect(() => {
163
132
  handlePositionRef.current = handlePosition;
164
133
  }, [handlePosition]);
165
- var getNewValueFromEvent = useCallback(function (event) {
134
+ const getNewValueFromEvent = useCallback(event => {
166
135
  return getNewValue(getPointerPosition(event, touchId), trackRef.current, {
167
- step: step,
168
- orientation: orientation,
169
- min: min,
170
- max: max
136
+ step,
137
+ orientation,
138
+ min,
139
+ max
171
140
  });
172
- }, [max, min, orientation, step]); // https://www.w3.org/TR/wai-aria-practices-1.2/#slider_kbd_interaction
141
+ }, [max, min, orientation, step]);
173
142
 
174
- var handleKeyDown = useStableLayoutCallback(function (event) {
143
+ // https://www.w3.org/TR/wai-aria-practices-1.2/#slider_kbd_interaction
144
+ const handleKeyDown = useStableLayoutCallback(event => {
175
145
  if (disabled) {
176
146
  return;
177
147
  }
178
-
179
- var newValue;
180
- var tenSteps = (max - min) / 10;
181
- var keyStep = step || (max - min) / 100;
182
-
148
+ let newValue;
149
+ const tenSteps = (max - min) / 10;
150
+ const keyStep = step || (max - min) / 100;
183
151
  switch (event.key) {
184
152
  // Decrease the value of the slider by one step.
185
153
  case 'ArrowLeft':
@@ -187,66 +155,61 @@ var SliderInput = /*#__PURE__*/forwardRef(function SliderInput(_ref2, forwardedR
187
155
  newValue = value - keyStep;
188
156
  break;
189
157
  // Increase the value of the slider by one step
190
-
191
158
  case 'ArrowRight':
192
159
  case 'ArrowUp':
193
160
  newValue = value + keyStep;
194
161
  break;
195
162
  // Decrement the slider by an amount larger than the step change made by
196
163
  // `ArrowDown`.
197
-
198
164
  case 'PageDown':
199
165
  newValue = value - tenSteps;
200
166
  break;
201
167
  // Increment the slider by an amount larger than the step change made by
202
168
  // `ArrowUp`.
203
-
204
169
  case 'PageUp':
205
170
  newValue = value + tenSteps;
206
171
  break;
207
172
  // Set the slider to the first allowed value in its range.
208
-
209
173
  case 'Home':
210
174
  newValue = min;
211
175
  break;
212
176
  // Set the slider to the last allowed value in its range.
213
-
214
177
  case 'End':
215
178
  newValue = max;
216
179
  break;
217
-
218
180
  default:
219
181
  return;
220
182
  }
221
-
222
183
  newValue = clamp(step ? roundValueToStep(newValue, step, min) : newValue, min, max);
223
184
  onChange(event, newValue);
224
185
  });
225
- var ariaValueText = getAriaValueText ? getAriaValueText(value) : ariaValueTextProp;
186
+ const ariaValueText = getAriaValueText ? getAriaValueText(value) : ariaValueTextProp;
187
+ const rangeStyle = {
188
+ [isVertical ? 'height' : 'width']: `${trackPercent}%`
189
+ };
226
190
 
227
- var rangeStyle = _defineProperty({}, isVertical ? 'height' : 'width', "".concat(trackPercent, "%")); // Slide events!
191
+ // Slide events!
228
192
  // We will try to use pointer events if they are supported to leverage
229
193
  // setPointerCapture and releasePointerCapture. We'll fall back to separate
230
194
  // mouse and touch events.
231
195
  // TODO: This could be more concise
196
+ const removeMoveEvents = useRef(noop);
197
+ const removeStartEvents = useRef(noop);
198
+ const removeEndEvents = useRef(noop);
232
199
 
233
-
234
- var removeMoveEvents = useRef(noop);
235
- var removeStartEvents = useRef(noop);
236
- var removeEndEvents = useRef(noop); // Store our event handlers in refs so we aren't attaching/detaching events
200
+ // Store our event handlers in refs so we aren't attaching/detaching events
237
201
  // on every render if the user doesn't useCallback
238
-
239
- var appEvents = useRef({
240
- onMouseMove: onMouseMove,
241
- onMouseDown: onMouseDown,
242
- onMouseUp: onMouseUp,
243
- onTouchStart: onTouchStart,
244
- onTouchEnd: onTouchEnd,
245
- onTouchMove: onTouchMove,
246
- onPointerDown: onPointerDown,
247
- onPointerUp: onPointerUp
202
+ const appEvents = useRef({
203
+ onMouseMove,
204
+ onMouseDown,
205
+ onMouseUp,
206
+ onTouchStart,
207
+ onTouchEnd,
208
+ onTouchMove,
209
+ onPointerDown,
210
+ onPointerUp
248
211
  });
249
- useLayoutEffect(function () {
212
+ useLayoutEffect(() => {
250
213
  appEvents.current.onMouseMove = onMouseMove;
251
214
  appEvents.current.onMouseDown = onMouseDown;
252
215
  appEvents.current.onMouseUp = onMouseUp;
@@ -256,171 +219,135 @@ var SliderInput = /*#__PURE__*/forwardRef(function SliderInput(_ref2, forwardedR
256
219
  appEvents.current.onPointerDown = onPointerDown;
257
220
  appEvents.current.onPointerUp = onPointerUp;
258
221
  }, [onMouseMove, onMouseDown, onMouseUp, onTouchStart, onTouchEnd, onTouchMove, onPointerDown, onPointerUp]);
259
- var handleSlideStart = useStableLayoutCallback(function (event) {
222
+ const handleSlideStart = useStableLayoutCallback(event => {
260
223
  if (isRightClick(event)) return;
261
-
262
224
  if (disabled) {
263
225
  pointerDownRef.current = false;
264
226
  return;
265
- } // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
266
-
267
-
268
- var ownerDocument = getOwnerDocument(sliderRef.current);
269
- var ownerWindow = ownerDocument.defaultView || window;
227
+ }
228
+ const ownerDocument = getOwnerDocument(sliderRef.current);
229
+ const ownerWindow = ownerDocument.defaultView || window;
270
230
  pointerDownRef.current = true;
271
-
272
231
  if (event.changedTouches) {
273
- var _changedTouches;
274
-
275
232
  // Prevent scrolling for touch events
276
233
  event.preventDefault();
277
- var touch = (_changedTouches = event.changedTouches) === null || _changedTouches === void 0 ? void 0 : _changedTouches[0];
278
-
234
+ const touch = event.changedTouches?.[0];
279
235
  if (touch != null) {
280
236
  touchId.current = touch.identifier;
281
237
  }
282
238
  }
283
-
284
- var newValue = getNewValueFromEvent(event);
285
-
239
+ const newValue = getNewValueFromEvent(event);
286
240
  if (newValue == null) {
287
241
  return;
288
242
  }
289
-
290
- ownerWindow.requestAnimationFrame(function () {
291
- var _handleRef$current;
292
-
293
- return (_handleRef$current = handleRef.current) === null || _handleRef$current === void 0 ? void 0 : _handleRef$current.focus();
294
- });
243
+ ownerWindow.requestAnimationFrame(() => handleRef.current?.focus());
295
244
  onChange(event, newValue);
296
245
  removeMoveEvents.current = addMoveListener();
297
246
  removeEndEvents.current = addEndListener();
298
247
  });
299
- var setPointerCapture = useStableLayoutCallback(function (event) {
300
- var _sliderRef$current;
301
-
248
+ const setPointerCapture = useStableLayoutCallback(event => {
302
249
  if (isRightClick(event)) return;
303
-
304
250
  if (disabled) {
305
251
  pointerDownRef.current = false;
306
252
  return;
307
253
  }
308
-
309
254
  pointerDownRef.current = true;
310
- (_sliderRef$current = sliderRef.current) === null || _sliderRef$current === void 0 ? void 0 : _sliderRef$current.setPointerCapture(event.pointerId);
255
+ sliderRef.current?.setPointerCapture(event.pointerId);
311
256
  });
312
- var releasePointerCapture = useStableLayoutCallback(function (event) {
313
- var _sliderRef$current2;
314
-
257
+ const releasePointerCapture = useStableLayoutCallback(event => {
315
258
  if (isRightClick(event)) return;
316
- (_sliderRef$current2 = sliderRef.current) === null || _sliderRef$current2 === void 0 ? void 0 : _sliderRef$current2.releasePointerCapture(event.pointerId);
259
+ sliderRef.current?.releasePointerCapture(event.pointerId);
317
260
  pointerDownRef.current = false;
318
261
  });
319
- var handlePointerMove = useStableLayoutCallback(function (event) {
262
+ const handlePointerMove = useStableLayoutCallback(event => {
320
263
  if (disabled || !pointerDownRef.current) {
321
264
  pointerDownRef.current = false;
322
265
  return;
323
266
  }
324
-
325
- var newValue = getNewValueFromEvent(event);
326
-
267
+ const newValue = getNewValueFromEvent(event);
327
268
  if (newValue == null) {
328
269
  return;
329
270
  }
330
-
331
- onChange === null || onChange === void 0 ? void 0 : onChange(event, newValue);
271
+ onChange?.(event, newValue);
332
272
  });
333
- var handleSlideStop = useStableLayoutCallback(function (event) {
273
+ const handleSlideStop = useStableLayoutCallback(event => {
334
274
  if (isRightClick(event)) return;
335
275
  pointerDownRef.current = false;
336
- var newValue = getNewValueFromEvent(event);
337
-
276
+ const newValue = getNewValueFromEvent(event);
338
277
  if (newValue == null) {
339
278
  return;
340
279
  }
341
-
342
280
  touchId.current = undefined;
343
281
  removeMoveEvents.current();
344
282
  removeEndEvents.current();
345
283
  });
346
- var addMoveListener = useCallback(function () {
347
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
348
- var ownerDocument = getOwnerDocument(sliderRef.current);
349
- var touchListener = wrapEvent(appEvents.current.onTouchMove, handlePointerMove);
350
- var mouseListener = wrapEvent(appEvents.current.onMouseMove, handlePointerMove);
284
+ const addMoveListener = useCallback(() => {
285
+ const ownerDocument = getOwnerDocument(sliderRef.current);
286
+ const touchListener = wrapEvent(appEvents.current.onTouchMove, handlePointerMove);
287
+ const mouseListener = wrapEvent(appEvents.current.onMouseMove, handlePointerMove);
351
288
  ownerDocument.addEventListener('touchmove', touchListener);
352
289
  ownerDocument.addEventListener('mousemove', mouseListener);
353
- return function () {
290
+ return () => {
354
291
  ownerDocument.removeEventListener('touchmove', touchListener);
355
292
  ownerDocument.removeEventListener('mousemove', mouseListener);
356
293
  };
357
294
  }, [handlePointerMove]);
358
- var addEndListener = useCallback(function () {
359
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
360
- var ownerDocument = getOwnerDocument(sliderRef.current);
361
- var ownerWindow = ownerDocument.defaultView || window;
362
- var pointerListener = wrapEvent(appEvents.current.onPointerUp, releasePointerCapture);
363
- var touchListener = wrapEvent(appEvents.current.onTouchEnd, handleSlideStop);
364
- var mouseListener = wrapEvent(appEvents.current.onMouseUp, handleSlideStop);
365
-
295
+ const addEndListener = useCallback(() => {
296
+ const ownerDocument = getOwnerDocument(sliderRef.current);
297
+ const ownerWindow = ownerDocument.defaultView || window;
298
+ const pointerListener = wrapEvent(appEvents.current.onPointerUp, releasePointerCapture);
299
+ const touchListener = wrapEvent(appEvents.current.onTouchEnd, handleSlideStop);
300
+ const mouseListener = wrapEvent(appEvents.current.onMouseUp, handleSlideStop);
366
301
  if ('PointerEvent' in ownerWindow) {
367
302
  ownerDocument.addEventListener('pointerup', pointerListener);
368
303
  }
369
-
370
304
  ownerDocument.addEventListener('touchend', touchListener);
371
305
  ownerDocument.addEventListener('mouseup', mouseListener);
372
- return function () {
306
+ return () => {
373
307
  if ('PointerEvent' in ownerWindow) {
374
308
  ownerDocument.removeEventListener('pointerup', pointerListener);
375
309
  }
376
-
377
310
  ownerDocument.removeEventListener('touchend', touchListener);
378
311
  ownerDocument.removeEventListener('mouseup', mouseListener);
379
312
  };
380
313
  }, [handleSlideStop, releasePointerCapture]);
381
- var addStartListener = useCallback(function () {
314
+ const addStartListener = useCallback(() => {
382
315
  // e.preventDefault is ignored by React's synthetic touchStart event, so
383
316
  // we attach the listener directly to the DOM node
384
317
  // https://github.com/facebook/react/issues/9809#issuecomment-413978405
385
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
386
- var sliderElement = sliderRef.current;
387
318
 
319
+ const sliderElement = sliderRef.current;
388
320
  if (!sliderElement) {
389
321
  return noop;
390
- } // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
391
-
392
-
393
- var ownerDocument = getOwnerDocument(sliderElement);
394
- var ownerWindow = ownerDocument.defaultView || window;
395
- var touchListener = wrapEvent(appEvents.current.onTouchStart, handleSlideStart);
396
- var mouseListener = wrapEvent(appEvents.current.onMouseDown, handleSlideStart);
397
- var pointerListener = wrapEvent(appEvents.current.onPointerDown, setPointerCapture);
322
+ }
323
+ const ownerDocument = getOwnerDocument(sliderElement);
324
+ const ownerWindow = ownerDocument.defaultView || window;
325
+ const touchListener = wrapEvent(appEvents.current.onTouchStart, handleSlideStart);
326
+ const mouseListener = wrapEvent(appEvents.current.onMouseDown, handleSlideStart);
327
+ const pointerListener = wrapEvent(appEvents.current.onPointerDown, setPointerCapture);
398
328
  sliderElement.addEventListener('touchstart', touchListener);
399
329
  sliderElement.addEventListener('mousedown', mouseListener);
400
-
401
330
  if ('PointerEvent' in ownerWindow) {
402
331
  sliderElement.addEventListener('pointerdown', pointerListener);
403
332
  }
404
-
405
- return function () {
333
+ return () => {
406
334
  sliderElement.removeEventListener('touchstart', touchListener);
407
335
  sliderElement.removeEventListener('mousedown', mouseListener);
408
-
409
336
  if ('PointerEvent' in ownerWindow) {
410
337
  sliderElement.removeEventListener('pointerdown', pointerListener);
411
338
  }
412
339
  };
413
340
  }, [setPointerCapture, handleSlideStart]);
414
- useEffect(function () {
341
+ useEffect(() => {
415
342
  removeStartEvents.current = addStartListener();
416
- return function () {
343
+ return () => {
417
344
  removeStartEvents.current();
418
345
  removeEndEvents.current();
419
346
  removeMoveEvents.current();
420
347
  };
421
348
  }, [addStartListener]);
422
- var inputFallbackId = useId();
423
- var inputId = id || inputFallbackId;
349
+ const inputFallbackId = useId();
350
+ const inputId = id || inputFallbackId;
424
351
  return /*#__PURE__*/_jsx(SliderProvider, {
425
352
  ariaLabel: getAriaLabel ? getAriaLabel(value) : ariaLabel,
426
353
  ariaLabelledBy: ariaLabelledBy,
@@ -443,7 +370,8 @@ var SliderInput = /*#__PURE__*/forwardRef(function SliderInput(_ref2, forwardedR
443
370
  trackRef: trackRef,
444
371
  rangeStyle: rangeStyle,
445
372
  updateValue: onChange,
446
- children: /*#__PURE__*/_jsxs(Comp, _extends(_extends({}, rest), {}, {
373
+ children: /*#__PURE__*/_jsxs(Comp, {
374
+ ...rest,
447
375
  // @ts-ignore
448
376
  as: innerAs,
449
377
  ref: assignMultipleRefs(sliderRef, forwardedRef),
@@ -452,12 +380,12 @@ var SliderInput = /*#__PURE__*/forwardRef(function SliderInput(_ref2, forwardedR
452
380
  "data-orientation": orientation,
453
381
  tabIndex: -1,
454
382
  children: [typeof children === 'function' ? children({
455
- hasFocus: hasFocus,
456
- id: id,
457
- max: max,
458
- min: min,
459
- value: value,
460
- ariaValueText: ariaValueText
383
+ hasFocus,
384
+ id,
385
+ max,
386
+ min,
387
+ value,
388
+ ariaValueText
461
389
  }) : children, name &&
462
390
  /*#__PURE__*/
463
391
  // If the slider is used in a form we'll need an input field to
@@ -470,9 +398,10 @@ var SliderInput = /*#__PURE__*/forwardRef(function SliderInput(_ref2, forwardedR
470
398
  name: name,
471
399
  id: inputId
472
400
  })]
473
- }))
401
+ })
474
402
  });
475
403
  });
404
+
476
405
  /**
477
406
  * @see Docs https://reach.tech/slider#sliderinput-props
478
407
  */
@@ -484,35 +413,37 @@ var SliderInput = /*#__PURE__*/forwardRef(function SliderInput(_ref2, forwardedR
484
413
  *
485
414
  * @see Docs https://reach.tech/slider#slidertrack
486
415
  */
487
- var SliderTrackImpl = /*#__PURE__*/forwardRef(function SliderTrack(_ref3, forwardedRef) {
488
- var _ref3$as = _ref3.as,
489
- Comp = _ref3$as === void 0 ? 'div' : _ref3$as,
490
- innerAs = _ref3.innerAs,
491
- children = _ref3.children,
492
- _ref3$style = _ref3.style,
493
- style = _ref3$style === void 0 ? {} : _ref3$style,
494
- props = _objectWithoutProperties(_ref3, _excluded4);
495
-
496
- var _useSliderContext = useSliderContext('SliderTrack'),
497
- disabled = _useSliderContext.disabled,
498
- orientation = _useSliderContext.orientation,
499
- trackRef = _useSliderContext.trackRef;
500
-
501
- return /*#__PURE__*/_jsx(Comp, _extends(_extends({
502
- ref: assignMultipleRefs(trackRef, forwardedRef) // @ts-ignore
416
+ const SliderTrackImpl = /*#__PURE__*/forwardRef(function SliderTrack(_ref3, forwardedRef) {
417
+ let {
418
+ as: Comp = 'div',
419
+ innerAs,
420
+ children,
421
+ style = {},
422
+ ...props
423
+ } = _ref3;
424
+ const {
425
+ disabled,
426
+ orientation,
427
+ trackRef
428
+ } = useSliderContext('SliderTrack');
429
+ return /*#__PURE__*/_jsx(Comp, {
430
+ ref: assignMultipleRefs(trackRef, forwardedRef)
431
+ // @ts-ignore
503
432
  ,
504
433
  as: innerAs,
505
- style: _extends(_extends({}, style), {}, {
434
+ style: {
435
+ ...style,
506
436
  position: 'relative'
507
- })
508
- }, props), {}, {
437
+ },
438
+ ...props,
509
439
  "data-reach-slider-track": "",
510
440
  "data-disabled": disabled ? '' : undefined,
511
441
  "data-orientation": orientation,
512
442
  children: children
513
- }));
443
+ });
514
444
  });
515
- var SliderTrack = /*#__PURE__*/memo(SliderTrackImpl);
445
+ const SliderTrack = /*#__PURE__*/memo(SliderTrackImpl);
446
+
516
447
  /**
517
448
  * @see Docs https://reach.tech/slider#slidertrack-props
518
449
  */
@@ -527,41 +458,43 @@ var SliderTrack = /*#__PURE__*/memo(SliderTrackImpl);
527
458
  *
528
459
  * @see Docs https://reach.tech/slider#sliderrange
529
460
  */
530
- var SliderRangeImpl = /*#__PURE__*/forwardRef(function SliderRange(_ref4, forwardedRef) {
531
- var _ref4$as = _ref4.as,
532
- Comp = _ref4$as === void 0 ? 'div' : _ref4$as,
533
- innerAs = _ref4.innerAs,
534
- children = _ref4.children,
535
- _ref4$style = _ref4.style,
536
- style = _ref4$style === void 0 ? {} : _ref4$style,
537
- props = _objectWithoutProperties(_ref4, _excluded5);
538
-
539
- var _useSliderContext2 = useSliderContext('SliderRange'),
540
- disabled = _useSliderContext2.disabled,
541
- orientation = _useSliderContext2.orientation,
542
- rangeStyle = _useSliderContext2.rangeStyle;
543
-
544
- return /*#__PURE__*/_jsx(Comp, _extends(_extends({
545
- ref: forwardedRef // @ts-ignore
461
+ const SliderRangeImpl = /*#__PURE__*/forwardRef(function SliderRange(_ref4, forwardedRef) {
462
+ let {
463
+ as: Comp = 'div',
464
+ innerAs,
465
+ children,
466
+ style = {},
467
+ ...props
468
+ } = _ref4;
469
+ const {
470
+ disabled,
471
+ orientation,
472
+ rangeStyle
473
+ } = useSliderContext('SliderRange');
474
+ return /*#__PURE__*/_jsx(Comp, {
475
+ ref: forwardedRef
476
+ // @ts-ignore
546
477
  ,
547
478
  as: innerAs,
548
- style: _extends(_extends({
549
- position: 'absolute'
550
- }, rangeStyle), style)
551
- }, props), {}, {
479
+ style: {
480
+ position: 'absolute',
481
+ ...rangeStyle,
482
+ ...style
483
+ },
484
+ ...props,
552
485
  "data-reach-slider-range": "",
553
486
  "data-disabled": disabled ? '' : undefined,
554
487
  "data-orientation": orientation
555
- }));
488
+ });
556
489
  });
557
- var SliderRange = /*#__PURE__*/memo(SliderRangeImpl);
490
+ const SliderRange = /*#__PURE__*/memo(SliderRangeImpl);
491
+
558
492
  /**
559
493
  * `SliderRange` accepts any props that a HTML div component accepts.
560
494
  * `SliderRange` will not accept or render any children.
561
495
  *
562
496
  * @see Docs https://reach.tech/slider#sliderrange-props
563
497
  */
564
- // eslint-disable-next-line @typescript-eslint/no-empty-interface
565
498
 
566
499
  ////////////////////////////////////////////////////////////////////////////////
567
500
 
@@ -572,96 +505,107 @@ var SliderRange = /*#__PURE__*/memo(SliderRangeImpl);
572
505
  *
573
506
  * @see Docs https://reach.tech/slider#sliderhandle
574
507
  */
575
- var SliderHandleImpl = /*#__PURE__*/forwardRef(function SliderHandle(_ref5, forwardedRef) {
576
- var _ref5$as = _ref5.as,
577
- Comp = _ref5$as === void 0 ? 'div' : _ref5$as,
578
- innerAs = _ref5.innerAs,
579
- onBlur = _ref5.onBlur,
580
- onFocus = _ref5.onFocus,
581
- _ref5$style = _ref5.style,
582
- style = _ref5$style === void 0 ? {} : _ref5$style,
583
- onKeyDown = _ref5.onKeyDown,
584
- props = _objectWithoutProperties(_ref5, _excluded6);
585
-
586
- var _useSliderContext3 = useSliderContext('SliderHandle'),
587
- ariaLabel = _useSliderContext3.ariaLabel,
588
- ariaLabelledBy = _useSliderContext3.ariaLabelledBy,
589
- ariaValueText = _useSliderContext3.ariaValueText,
590
- disabled = _useSliderContext3.disabled,
591
- handlePosition = _useSliderContext3.handlePosition,
592
- handleRef = _useSliderContext3.handleRef,
593
- isVertical = _useSliderContext3.isVertical,
594
- handleKeyDown = _useSliderContext3.handleKeyDown,
595
- orientation = _useSliderContext3.orientation,
596
- setHasFocus = _useSliderContext3.setHasFocus,
597
- sliderMin = _useSliderContext3.sliderMin,
598
- sliderMax = _useSliderContext3.sliderMax,
599
- value = _useSliderContext3.value;
600
-
601
- return /*#__PURE__*/_jsx(Comp // @ts-ignore
602
- , _extends(_extends({
508
+ const SliderHandleImpl = /*#__PURE__*/forwardRef(function SliderHandle(_ref5, forwardedRef) {
509
+ let {
510
+ // min,
511
+ // max,
512
+ as: Comp = 'div',
513
+ innerAs,
514
+ onBlur,
515
+ onFocus,
516
+ style = {},
517
+ onKeyDown,
518
+ ...props
519
+ } = _ref5;
520
+ const {
521
+ ariaLabel,
522
+ ariaLabelledBy,
523
+ ariaValueText,
524
+ disabled,
525
+ handlePosition,
526
+ handleRef,
527
+ isVertical,
528
+ handleKeyDown,
529
+ orientation,
530
+ setHasFocus,
531
+ sliderMin,
532
+ sliderMax,
533
+ value
534
+ } = useSliderContext('SliderHandle');
535
+ return /*#__PURE__*/_jsx(Comp
536
+ // @ts-ignore
537
+ , {
603
538
  as: innerAs,
604
- "aria-disabled": disabled || undefined // If the slider has a visible label, it is referenced by
539
+ "aria-disabled": disabled || undefined
540
+ // If the slider has a visible label, it is referenced by
605
541
  // `aria-labelledby` on the slider element. Otherwise, the slider
606
542
  // element has a label provided by `aria-label`.
607
543
  // https://www.w3.org/TR/wai-aria-practices-1.2/#slider_roles_states_props
608
544
  ,
609
545
  "aria-label": ariaLabel,
610
- "aria-labelledby": ariaLabel ? undefined : ariaLabelledBy // If the slider is vertically oriented, it has `aria-orientation` set
546
+ "aria-labelledby": ariaLabel ? undefined : ariaLabelledBy
547
+ // If the slider is vertically oriented, it has `aria-orientation` set
611
548
  // to vertical. The default value of `aria-orientation` for a slider is
612
549
  // horizontal.
613
550
  // https://www.w3.org/TR/wai-aria-practices-1.2/#slider_roles_states_props
614
551
  ,
615
- "aria-orientation": orientation // The slider element has the `aria-valuemax` property set to a decimal
552
+ "aria-orientation": orientation
553
+ // The slider element has the `aria-valuemax` property set to a decimal
616
554
  // value representing the maximum allowed value of the slider.
617
555
  // https://www.w3.org/TR/wai-aria-practices-1.2/#slider_roles_states_props
618
556
  ,
619
- "aria-valuemax": sliderMax // The slider element has the `aria-valuemin` property set to a decimal
557
+ "aria-valuemax": sliderMax
558
+ // The slider element has the `aria-valuemin` property set to a decimal
620
559
  // value representing the minimum allowed value of the slider.
621
560
  // https://www.w3.org/TR/wai-aria-practices-1.2/#slider_roles_states_props
622
561
  ,
623
- "aria-valuemin": sliderMin // The slider element has the `aria-valuenow` property set to a decimal
562
+ "aria-valuemin": sliderMin
563
+ // The slider element has the `aria-valuenow` property set to a decimal
624
564
  // value representing the current value of the slider.
625
565
  // https://www.w3.org/TR/wai-aria-practices-1.2/#slider_roles_states_props
626
566
  ,
627
- "aria-valuenow": value // If the value of `aria-valuenow` is not user-friendly, e.g., the day
567
+ "aria-valuenow": value
568
+ // If the value of `aria-valuenow` is not user-friendly, e.g., the day
628
569
  // of the week is represented by a number, the `aria-valuetext` property
629
570
  // is set to a string that makes the slider value understandable, e.g.,
630
571
  // "Monday".
631
572
  // https://www.w3.org/TR/wai-aria-practices-1.2/#slider_roles_states_props
632
573
  ,
633
- "aria-valuetext": ariaValueText // The element serving as the focusable slider control has role
574
+ "aria-valuetext": ariaValueText
575
+ // The element serving as the focusable slider control has role
634
576
  // `slider`.
635
577
  // https://www.w3.org/TR/wai-aria-practices-1.2/#slider_roles_states_props
636
578
  ,
637
579
  role: "slider",
638
- tabIndex: disabled ? -1 : 0
639
- }, props), {}, {
580
+ tabIndex: disabled ? -1 : 0,
581
+ ...props,
640
582
  "data-reach-slider-handle": "",
641
583
  ref: assignMultipleRefs(handleRef, forwardedRef),
642
- onBlur: wrapEvent(onBlur, function () {
584
+ onBlur: wrapEvent(onBlur, () => {
643
585
  setHasFocus(false);
644
586
  }),
645
- onFocus: wrapEvent(onFocus, function () {
587
+ onFocus: wrapEvent(onFocus, () => {
646
588
  setHasFocus(true);
647
589
  }),
648
590
  onKeyDown: wrapEvent(onKeyDown, handleKeyDown),
649
- style: _extends(_extends({
650
- position: 'absolute'
651
- }, isVertical ? {
652
- bottom: handlePosition
653
- } : {
654
- left: handlePosition
655
- }), style)
656
- }));
591
+ style: {
592
+ position: 'absolute',
593
+ ...(isVertical ? {
594
+ bottom: handlePosition
595
+ } : {
596
+ left: handlePosition
597
+ }),
598
+ ...style
599
+ }
600
+ });
657
601
  });
658
- var SliderHandle = /*#__PURE__*/memo(SliderHandleImpl);
602
+ const SliderHandle = /*#__PURE__*/memo(SliderHandleImpl);
603
+
659
604
  /**
660
605
  * `SliderRange` accepts any props that a HTML div component accepts.
661
606
  *
662
607
  * @see Docs https://reach.tech/slider#sliderhandle-props
663
608
  */
664
- // eslint-disable-next-line @typescript-eslint/no-empty-interface
665
609
 
666
610
  ////////////////////////////////////////////////////////////////////////////////
667
611
 
@@ -673,56 +617,61 @@ var SliderHandle = /*#__PURE__*/memo(SliderHandleImpl);
673
617
  *
674
618
  * @see Docs https://reach.tech/slider#slidermarker
675
619
  */
676
- var SliderMarkerImpl = /*#__PURE__*/forwardRef(function SliderMarker(_ref6, forwardedRef) {
677
- var _ref6$as = _ref6.as,
678
- Comp = _ref6$as === void 0 ? 'div' : _ref6$as,
679
- innerAs = _ref6.innerAs,
680
- children = _ref6.children,
681
- _ref6$style = _ref6.style,
682
- style = _ref6$style === void 0 ? {} : _ref6$style,
683
- value = _ref6.value,
684
- props = _objectWithoutProperties(_ref6, _excluded7);
685
-
686
- var _useSliderContext4 = useSliderContext('SliderMarker'),
687
- disabled = _useSliderContext4.disabled,
688
- isVertical = _useSliderContext4.isVertical,
689
- orientation = _useSliderContext4.orientation,
690
- sliderMin = _useSliderContext4.sliderMin,
691
- sliderMax = _useSliderContext4.sliderMax,
692
- sliderValue = _useSliderContext4.value;
693
-
694
- var inRange = value >= sliderMin && value <= sliderMax;
695
- var absoluteStartPosition = "".concat(valueToPercent(value, sliderMin, sliderMax), "%");
696
- var state = value < sliderValue ? 'under-value' : value === sliderValue ? 'at-value' : 'over-value';
697
- return inRange ? /*#__PURE__*/_jsx(Comp, _extends(_extends({
698
- ref: forwardedRef // @ts-ignore
620
+ const SliderMarkerImpl = /*#__PURE__*/forwardRef(function SliderMarker(_ref6, forwardedRef) {
621
+ let {
622
+ as: Comp = 'div',
623
+ innerAs,
624
+ children,
625
+ style = {},
626
+ value,
627
+ ...props
628
+ } = _ref6;
629
+ const {
630
+ disabled,
631
+ isVertical,
632
+ orientation,
633
+ sliderMin,
634
+ sliderMax,
635
+ value: sliderValue
636
+ } = useSliderContext('SliderMarker');
637
+ const inRange = value >= sliderMin && value <= sliderMax;
638
+ const absoluteStartPosition = `${valueToPercent(value, sliderMin, sliderMax)}%`;
639
+ const state = value < sliderValue ? 'under-value' : value === sliderValue ? 'at-value' : 'over-value';
640
+ return inRange ? /*#__PURE__*/_jsx(Comp, {
641
+ ref: forwardedRef
642
+ // @ts-ignore
699
643
  ,
700
644
  as: innerAs,
701
- style: _extends(_extends({
702
- position: 'absolute'
703
- }, isVertical ? {
704
- bottom: absoluteStartPosition
705
- } : {
706
- left: absoluteStartPosition
707
- }), style)
708
- }, props), {}, {
645
+ style: {
646
+ position: 'absolute',
647
+ ...(isVertical ? {
648
+ bottom: absoluteStartPosition
649
+ } : {
650
+ left: absoluteStartPosition
651
+ }),
652
+ ...style
653
+ },
654
+ ...props,
709
655
  "data-reach-slider-marker": "",
710
656
  "data-disabled": disabled ? '' : undefined,
711
657
  "data-orientation": orientation,
712
658
  "data-state": state,
713
659
  "data-value": value,
714
660
  children: children
715
- })) : null;
661
+ }) : null;
716
662
  });
717
- var SliderMarker = /*#__PURE__*/memo(SliderMarkerImpl);
663
+ const SliderMarker = /*#__PURE__*/memo(SliderMarkerImpl);
664
+
718
665
  /**
719
666
  * @see Docs https://reach.tech/slider#slidermarker-props
720
667
  */
721
668
 
722
669
  ////////////////////////////////////////////////////////////////////////////////
670
+
723
671
  function clamp(val, min, max) {
724
672
  return val > max ? max : val < min ? min : val;
725
673
  }
674
+
726
675
  /**
727
676
  * This handles the case when num is very small (0.00000001), js will turn
728
677
  * this into 1e-8. When num is bigger than 1 or less than -1 it won't get
@@ -731,33 +680,26 @@ function clamp(val, min, max) {
731
680
  * @param num
732
681
  * @see https://github.com/mui-org/material-ui/blob/master/packages/material-ui/src/Slider/Slider.js#L69
733
682
  */
734
-
735
-
736
683
  function getDecimalPrecision(num) {
737
684
  if (Math.abs(num) < 1) {
738
- var parts = num.toExponential().split('e-');
739
- var matissaDecimalPart = parts[0].split('.')[1];
685
+ const parts = num.toExponential().split('e-');
686
+ const matissaDecimalPart = parts[0].split('.')[1];
740
687
  return (matissaDecimalPart ? matissaDecimalPart.length : 0) + parseInt(parts[1], 10);
741
688
  }
742
-
743
- var decimalPart = num.toString().split('.')[1];
689
+ const decimalPart = num.toString().split('.')[1];
744
690
  return decimalPart ? decimalPart.length : 0;
745
691
  }
746
-
747
692
  function percentToValue(percent, min, max) {
748
693
  return (max - min) * percent + min;
749
694
  }
750
-
751
695
  function roundValueToStep(value, step, min) {
752
- var nearest = Math.round((value - min) / step) * step + min;
696
+ const nearest = Math.round((value - min) / step) * step + min;
753
697
  return Number(nearest.toFixed(getDecimalPrecision(step)));
754
698
  }
755
-
756
699
  function getPointerPosition(event, touchId) {
757
700
  if (touchId.current !== undefined && event.changedTouches) {
758
- for (var i = 0; i < event.changedTouches.length; i += 1) {
759
- var touch = event.changedTouches[i];
760
-
701
+ for (let i = 0; i < event.changedTouches.length; i += 1) {
702
+ const touch = event.changedTouches[i];
761
703
  if (touch.identifier === touchId.current) {
762
704
  return {
763
705
  x: touch.clientX,
@@ -765,72 +707,62 @@ function getPointerPosition(event, touchId) {
765
707
  };
766
708
  }
767
709
  }
768
-
769
710
  return false;
770
711
  }
771
-
772
712
  return {
773
713
  x: event.clientX,
774
714
  y: event.clientY
775
715
  };
776
716
  }
777
-
778
717
  function getNewValue(handlePosition, track, props) {
779
- var orientation = props.orientation,
780
- min = props.min,
781
- max = props.max,
782
- step = props.step;
783
-
718
+ const {
719
+ orientation,
720
+ min,
721
+ max,
722
+ step
723
+ } = props;
784
724
  if (!track || !handlePosition) {
785
725
  return null;
786
726
  }
787
-
788
- var _track$getBoundingCli = track.getBoundingClientRect(),
789
- left = _track$getBoundingCli.left,
790
- width = _track$getBoundingCli.width,
791
- bottom = _track$getBoundingCli.bottom,
792
- height = _track$getBoundingCli.height;
793
-
794
- var isVertical = orientation === 'vertical';
795
- var diff = isVertical ? bottom - handlePosition.y : handlePosition.x - left;
796
- var percent = diff / (isVertical ? height : width);
797
- var newValue = percentToValue(percent, min, max);
727
+ const {
728
+ left,
729
+ width,
730
+ bottom,
731
+ height
732
+ } = track.getBoundingClientRect();
733
+ const isVertical = orientation === 'vertical';
734
+ const diff = isVertical ? bottom - handlePosition.y : handlePosition.x - left;
735
+ const percent = diff / (isVertical ? height : width);
736
+ const newValue = percentToValue(percent, min, max);
798
737
  return clamp(step ? roundValueToStep(newValue, step, min) : newValue, min, max);
799
738
  }
800
-
801
739
  function useDimensions(ref) {
802
- var _useState3 = useState({
740
+ const [{
741
+ width,
742
+ height
743
+ }, setDimensions] = useState({
803
744
  width: 0,
804
745
  height: 0
805
- }),
806
- _useState4 = _slicedToArray(_useState3, 2),
807
- _useState4$ = _useState4[0],
808
- width = _useState4$.width,
809
- height = _useState4$.height,
810
- setDimensions = _useState4[1]; // Many existing `useDimensions` type hooks will use `getBoundingClientRect`
746
+ });
747
+ // Many existing `useDimensions` type hooks will use `getBoundingClientRect`
811
748
  // getBoundingClientRect does not work here when borders are applied.
812
749
  // getComputedStyle is not as performant so we may want to create a utility to
813
750
  // check for any conflicts with box sizing first and only use
814
751
  // `getComputedStyle` if neccessary.
815
-
816
752
  /* const { width, height } = ref.current
817
753
  ? ref.current.getBoundingClientRect()
818
754
  : 0; */
819
755
 
820
-
821
- useLayoutEffect(function () {
822
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
823
- var ownerDocument = getOwnerDocument(ref.current);
824
- var ownerWindow = ownerDocument.defaultView || window;
825
-
756
+ useLayoutEffect(() => {
757
+ const ownerDocument = getOwnerDocument(ref.current);
758
+ const ownerWindow = ownerDocument.defaultView || window;
826
759
  if (ref.current) {
827
- var _ownerWindow$getCompu = ownerWindow.getComputedStyle(ref.current),
828
- _newHeight = _ownerWindow$getCompu.height,
829
- _newWidth = _ownerWindow$getCompu.width;
830
-
831
- var newHeight = parseFloat(_newHeight);
832
- var newWidth = parseFloat(_newWidth);
833
-
760
+ const {
761
+ height: _newHeight,
762
+ width: _newWidth
763
+ } = ownerWindow.getComputedStyle(ref.current);
764
+ const newHeight = parseFloat(_newHeight);
765
+ const newWidth = parseFloat(_newWidth);
834
766
  if (newHeight !== height || newWidth !== width) {
835
767
  setDimensions({
836
768
  height: newHeight,
@@ -840,20 +772,21 @@ function useDimensions(ref) {
840
772
  }
841
773
  }, [ref, width, height]);
842
774
  return {
843
- ref: ref,
844
- width: width,
845
- height: height
775
+ ref,
776
+ width,
777
+ height
846
778
  };
847
779
  }
848
-
849
780
  function valueToPercent(value, min, max) {
850
781
  return (value - min) * 100 / (max - min);
851
- } ////////////////////////////////////////////////////////////////////////////////
852
- // Types
782
+ }
853
783
 
784
+ ////////////////////////////////////////////////////////////////////////////////
785
+ // Types
854
786
 
855
787
  ////////////////////////////////////////////////////////////////////////////////
856
788
  // Exports
789
+
857
790
  export default Slider;
858
791
  export { Slider, SliderHandle, SliderInput, SliderMarker, SliderTrack, SliderRange };
859
792
  //# sourceMappingURL=Slider.js.map