@basic-ui/core 0.0.38 → 0.0.41

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 (266) hide show
  1. package/build/cjs/index.js +1 -1
  2. package/build/cjs/index.js.map +1 -1
  3. package/build/esm/Accordion/Accordion.d.ts +7 -7
  4. package/build/esm/Accordion/Accordion.js +22 -17
  5. package/build/esm/Accordion/Accordion.js.map +1 -1
  6. package/build/esm/Accordion/AccordionBody.d.ts +5 -5
  7. package/build/esm/Accordion/AccordionBody.js +23 -15
  8. package/build/esm/Accordion/AccordionBody.js.map +1 -1
  9. package/build/esm/Accordion/AccordionHeader.d.ts +6 -6
  10. package/build/esm/Accordion/AccordionHeader.js +45 -31
  11. package/build/esm/Accordion/AccordionHeader.js.map +1 -1
  12. package/build/esm/Accordion/AccordionItem.d.ts +7 -7
  13. package/build/esm/Accordion/AccordionItem.js +16 -16
  14. package/build/esm/Accordion/AccordionItem.js.map +1 -1
  15. package/build/esm/Accordion/context.d.ts +4 -4
  16. package/build/esm/Accordion/context.js +12 -10
  17. package/build/esm/Accordion/context.js.map +1 -1
  18. package/build/esm/CheckBox/CheckBox.d.ts +6 -6
  19. package/build/esm/CheckBox/CheckBox.js +19 -12
  20. package/build/esm/CheckBox/CheckBox.js.map +1 -1
  21. package/build/esm/ComboBox/Combobox.d.ts +10 -10
  22. package/build/esm/ComboBox/Combobox.js +52 -46
  23. package/build/esm/ComboBox/Combobox.js.map +1 -1
  24. package/build/esm/ComboBox/ComboboxButton.d.ts +8 -8
  25. package/build/esm/ComboBox/ComboboxButton.js +19 -20
  26. package/build/esm/ComboBox/ComboboxButton.js.map +1 -1
  27. package/build/esm/ComboBox/ComboboxInput.d.ts +10 -10
  28. package/build/esm/ComboBox/ComboboxInput.js +52 -50
  29. package/build/esm/ComboBox/ComboboxInput.js.map +1 -1
  30. package/build/esm/ComboBox/ComboboxLabel.d.ts +5 -5
  31. package/build/esm/ComboBox/ComboboxLabel.js +11 -12
  32. package/build/esm/ComboBox/ComboboxLabel.js.map +1 -1
  33. package/build/esm/ComboBox/ComboboxList.d.ts +6 -6
  34. package/build/esm/ComboBox/ComboboxList.js +15 -17
  35. package/build/esm/ComboBox/ComboboxList.js.map +1 -1
  36. package/build/esm/ComboBox/ComboboxOption.d.ts +7 -7
  37. package/build/esm/ComboBox/ComboboxOption.js +31 -34
  38. package/build/esm/ComboBox/ComboboxOption.js.map +1 -1
  39. package/build/esm/ComboBox/ComboboxPopover.d.ts +8 -8
  40. package/build/esm/ComboBox/ComboboxPopover.js +15 -17
  41. package/build/esm/ComboBox/ComboboxPopover.js.map +1 -1
  42. package/build/esm/ComboBox/context.d.ts +13 -13
  43. package/build/esm/ComboBox/context.js +6 -5
  44. package/build/esm/ComboBox/context.js.map +1 -1
  45. package/build/esm/ComboBox/hooks.d.ts +4 -4
  46. package/build/esm/ComboBox/hooks.js +82 -115
  47. package/build/esm/ComboBox/hooks.js.map +1 -1
  48. package/build/esm/ComboBox/makeHash.js +3 -3
  49. package/build/esm/ComboBox/makeHash.js.map +1 -1
  50. package/build/esm/FocusLock/FocusLock.d.ts +7 -7
  51. package/build/esm/FocusLock/FocusLock.js +17 -16
  52. package/build/esm/FocusLock/FocusLock.js.map +1 -1
  53. package/build/esm/FocusLock/tabUtils.js +4 -4
  54. package/build/esm/FocusLock/tabUtils.js.map +1 -1
  55. package/build/esm/FocusLock/useFocusLock.d.ts +4 -4
  56. package/build/esm/FocusLock/useFocusLock.js +10 -11
  57. package/build/esm/FocusLock/useFocusLock.js.map +1 -1
  58. package/build/esm/List/List.d.ts +6 -6
  59. package/build/esm/List/List.js +5 -6
  60. package/build/esm/List/List.js.map +1 -1
  61. package/build/esm/List/ListItem.d.ts +6 -6
  62. package/build/esm/List/ListItem.js +5 -6
  63. package/build/esm/List/ListItem.js.map +1 -1
  64. package/build/esm/List/context.js +3 -3
  65. package/build/esm/List/context.js.map +1 -1
  66. package/build/esm/Menu/Menu.d.ts +6 -6
  67. package/build/esm/Menu/Menu.js +29 -21
  68. package/build/esm/Menu/Menu.js.map +1 -1
  69. package/build/esm/Menu/MenuButton.d.ts +10 -10
  70. package/build/esm/Menu/MenuButton.js +27 -24
  71. package/build/esm/Menu/MenuButton.js.map +1 -1
  72. package/build/esm/Menu/MenuItem.d.ts +6 -6
  73. package/build/esm/Menu/MenuItem.js +23 -24
  74. package/build/esm/Menu/MenuItem.js.map +1 -1
  75. package/build/esm/Menu/MenuList.d.ts +5 -5
  76. package/build/esm/Menu/MenuList.js +61 -45
  77. package/build/esm/Menu/MenuList.js.map +1 -1
  78. package/build/esm/Menu/MenuPopover.d.ts +6 -6
  79. package/build/esm/Menu/MenuPopover.js +8 -10
  80. package/build/esm/Menu/MenuPopover.js.map +1 -1
  81. package/build/esm/Menu/context.d.ts +2 -2
  82. package/build/esm/Menu/context.js +11 -8
  83. package/build/esm/Menu/context.js.map +1 -1
  84. package/build/esm/Modal/Modal.d.ts +6 -7
  85. package/build/esm/Modal/Modal.js +11 -10
  86. package/build/esm/Modal/Modal.js.map +1 -1
  87. package/build/esm/Modal/ModalBackdrop.d.ts +6 -6
  88. package/build/esm/Modal/ModalBackdrop.js +20 -19
  89. package/build/esm/Modal/ModalBackdrop.js.map +1 -1
  90. package/build/esm/Popper/Popper.d.ts +8 -8
  91. package/build/esm/Popper/Popper.js +46 -37
  92. package/build/esm/Popper/Popper.js.map +1 -1
  93. package/build/esm/Popper/PopperArrow.d.ts +5 -5
  94. package/build/esm/Popper/PopperArrow.js +8 -9
  95. package/build/esm/Popper/PopperArrow.js.map +1 -1
  96. package/build/esm/Popper/context.d.ts +1 -1
  97. package/build/esm/Popper/context.js +5 -3
  98. package/build/esm/Popper/context.js.map +1 -1
  99. package/build/esm/Portal/Portal.d.ts +1 -1
  100. package/build/esm/Portal/Portal.js +6 -5
  101. package/build/esm/Portal/Portal.js.map +1 -1
  102. package/build/esm/RadioButton/RadioButton.d.ts +7 -7
  103. package/build/esm/RadioButton/RadioButton.js +12 -13
  104. package/build/esm/RadioButton/RadioButton.js.map +1 -1
  105. package/build/esm/RadioButton/RadioGroup.d.ts +8 -8
  106. package/build/esm/RadioButton/RadioGroup.js +22 -16
  107. package/build/esm/RadioButton/RadioGroup.js.map +1 -1
  108. package/build/esm/RadioButton/context.d.ts +2 -2
  109. package/build/esm/RadioButton/context.js +6 -5
  110. package/build/esm/RadioButton/context.js.map +1 -1
  111. package/build/esm/SkipNav/SkipNav.d.ts +6 -6
  112. package/build/esm/SkipNav/SkipNav.js +5 -6
  113. package/build/esm/SkipNav/SkipNav.js.map +1 -1
  114. package/build/esm/Spinner/Spinner.d.ts +7 -7
  115. package/build/esm/Spinner/Spinner.js +41 -31
  116. package/build/esm/Spinner/Spinner.js.map +1 -1
  117. package/build/esm/Spinner/SpinnerButton.d.ts +6 -6
  118. package/build/esm/Spinner/SpinnerButton.js +11 -12
  119. package/build/esm/Spinner/SpinnerButton.js.map +1 -1
  120. package/build/esm/Spinner/context.d.ts +2 -2
  121. package/build/esm/Spinner/context.js +6 -5
  122. package/build/esm/Spinner/context.js.map +1 -1
  123. package/build/esm/Tabs/Tab.d.ts +6 -6
  124. package/build/esm/Tabs/Tab.js +29 -29
  125. package/build/esm/Tabs/Tab.js.map +1 -1
  126. package/build/esm/Tabs/TabList.d.ts +6 -6
  127. package/build/esm/Tabs/TabList.js +24 -21
  128. package/build/esm/Tabs/TabList.js.map +1 -1
  129. package/build/esm/Tabs/TabPanel.d.ts +6 -6
  130. package/build/esm/Tabs/TabPanel.js +12 -12
  131. package/build/esm/Tabs/TabPanel.js.map +1 -1
  132. package/build/esm/Tabs/TabPanels.d.ts +5 -5
  133. package/build/esm/Tabs/TabPanels.js +13 -12
  134. package/build/esm/Tabs/TabPanels.js.map +1 -1
  135. package/build/esm/Tabs/Tabs.d.ts +6 -6
  136. package/build/esm/Tabs/Tabs.js +27 -14
  137. package/build/esm/Tabs/Tabs.js.map +1 -1
  138. package/build/esm/Tabs/context.d.ts +3 -3
  139. package/build/esm/Tabs/context.js +12 -10
  140. package/build/esm/Tabs/context.js.map +1 -1
  141. package/build/esm/Tooltip/Tooltip.d.ts +7 -7
  142. package/build/esm/Tooltip/Tooltip.js +18 -16
  143. package/build/esm/Tooltip/Tooltip.js.map +1 -1
  144. package/build/esm/Tooltip/stateMachine.js +56 -80
  145. package/build/esm/Tooltip/stateMachine.js.map +1 -1
  146. package/build/esm/Tooltip/useTooltip.d.ts +7 -7
  147. package/build/esm/Tooltip/useTooltip.js +32 -30
  148. package/build/esm/Tooltip/useTooltip.js.map +1 -1
  149. package/build/esm/hooks/useAutoFocus.d.ts +2 -2
  150. package/build/esm/hooks/useAutoFocus.js +1 -1
  151. package/build/esm/hooks/useAutoFocus.js.map +1 -1
  152. package/build/esm/hooks/useChildrenCounter.d.ts +1 -1
  153. package/build/esm/hooks/useChildrenCounter.js +6 -4
  154. package/build/esm/hooks/useChildrenCounter.js.map +1 -1
  155. package/build/esm/hooks/useControlledState.d.ts +3 -7
  156. package/build/esm/hooks/useControlledState.js +7 -2
  157. package/build/esm/hooks/useControlledState.js.map +1 -1
  158. package/build/esm/hooks/useFocusReturn.d.ts +1 -1
  159. package/build/esm/hooks/useFocusReturn.js +6 -6
  160. package/build/esm/hooks/useFocusReturn.js.map +1 -1
  161. package/build/esm/hooks/useFocusState.d.ts +3 -3
  162. package/build/esm/hooks/useFocusState.js +13 -9
  163. package/build/esm/hooks/useFocusState.js.map +1 -1
  164. package/build/esm/hooks/useGestureHandlers.d.ts +5 -5
  165. package/build/esm/hooks/useGestureHandlers.js +59 -63
  166. package/build/esm/hooks/useGestureHandlers.js.map +1 -1
  167. package/build/esm/hooks/useMeasure.d.ts +2 -2
  168. package/build/esm/hooks/useMeasure.js +13 -7
  169. package/build/esm/hooks/useMeasure.js.map +1 -1
  170. package/build/esm/hooks/useOnClickOutside.d.ts +2 -2
  171. package/build/esm/hooks/useOnClickOutside.js +5 -4
  172. package/build/esm/hooks/useOnClickOutside.js.map +1 -1
  173. package/build/esm/hooks/useOnKeyDown.js +4 -3
  174. package/build/esm/hooks/useOnKeyDown.js.map +1 -1
  175. package/build/esm/hooks/useReducerMachine.d.ts +1 -1
  176. package/build/esm/hooks/useReducerMachine.js +13 -10
  177. package/build/esm/hooks/useReducerMachine.js.map +1 -1
  178. package/build/esm/hooks/useRemoveBodyScroll.js +4 -4
  179. package/build/esm/hooks/useRemoveBodyScroll.js.map +1 -1
  180. package/build/esm/hooks/useScope.d.ts +1 -1
  181. package/build/esm/hooks/useScope.js +10 -12
  182. package/build/esm/hooks/useScope.js.map +1 -1
  183. package/build/esm/hooks/useThrottle.js +10 -5
  184. package/build/esm/hooks/useThrottle.js.map +1 -1
  185. package/build/esm/utils/assignRef.d.ts +1 -1
  186. package/build/esm/utils/assignRef.js +7 -3
  187. package/build/esm/utils/assignRef.js.map +1 -1
  188. package/build/esm/utils/createSubscription.js +7 -5
  189. package/build/esm/utils/createSubscription.js.map +1 -1
  190. package/build/esm/utils/rubberBandClamp.js +5 -2
  191. package/build/esm/utils/rubberBandClamp.js.map +1 -1
  192. package/build/esm/utils/wrapEvent.d.ts +3 -3
  193. package/build/esm/utils/wrapEvent.js +7 -3
  194. package/build/esm/utils/wrapEvent.js.map +1 -1
  195. package/build/tsconfig-build.tsbuildinfo +1 -0
  196. package/build/tsconfig.tsbuildinfo +1 -1
  197. package/package.json +3 -3
  198. package/src/Accordion/Accordion.story.tsx +1 -0
  199. package/src/Accordion/Accordion.tsx +15 -7
  200. package/src/Accordion/AccordionBody.tsx +7 -8
  201. package/src/Accordion/AccordionHeader.tsx +35 -33
  202. package/src/Accordion/AccordionItem.tsx +15 -7
  203. package/src/Accordion/context.ts +5 -3
  204. package/src/CheckBox/CheckBox.tsx +6 -6
  205. package/src/ComboBox/ComboBox.story.tsx +5 -5
  206. package/src/ComboBox/Combobox.tsx +12 -17
  207. package/src/ComboBox/ComboboxButton.tsx +16 -15
  208. package/src/ComboBox/ComboboxInput.tsx +19 -10
  209. package/src/ComboBox/ComboboxLabel.tsx +5 -4
  210. package/src/ComboBox/ComboboxList.tsx +6 -6
  211. package/src/ComboBox/ComboboxOption.tsx +11 -7
  212. package/src/ComboBox/ComboboxPopover.tsx +14 -8
  213. package/src/ComboBox/context.ts +14 -12
  214. package/src/ComboBox/hooks.tsx +9 -11
  215. package/src/FocusLock/FocusLock.tsx +14 -7
  216. package/src/FocusLock/useFocusLock.ts +5 -3
  217. package/src/List/List.tsx +5 -5
  218. package/src/List/ListItem.tsx +5 -5
  219. package/src/Menu/Menu.story.tsx +7 -6
  220. package/src/Menu/Menu.tsx +16 -8
  221. package/src/Menu/MenuButton.tsx +15 -16
  222. package/src/Menu/MenuItem.tsx +15 -10
  223. package/src/Menu/MenuList.tsx +8 -12
  224. package/src/Menu/MenuPopover.tsx +7 -5
  225. package/src/Menu/context.ts +10 -4
  226. package/src/Modal/Modal.story.tsx +1 -0
  227. package/src/Modal/Modal.tsx +12 -6
  228. package/src/Modal/ModalBackdrop.tsx +15 -9
  229. package/src/Modal/NavDrawer.story.tsx +3 -3
  230. package/src/Popper/Popper.story.tsx +3 -4
  231. package/src/Popper/Popper.tsx +13 -12
  232. package/src/Popper/PopperArrow.tsx +5 -4
  233. package/src/Popper/context.ts +2 -1
  234. package/src/Portal/Portal.tsx +1 -1
  235. package/src/RadioButton/RadioButton.story.tsx +1 -0
  236. package/src/RadioButton/RadioButton.tsx +14 -7
  237. package/src/RadioButton/RadioGroup.tsx +14 -10
  238. package/src/RadioButton/context.ts +2 -4
  239. package/src/SkipNav/SkipNav.tsx +5 -5
  240. package/src/Spinner/Spinner.story.tsx +1 -0
  241. package/src/Spinner/Spinner.tsx +14 -9
  242. package/src/Spinner/SpinnerButton.tsx +12 -6
  243. package/src/Spinner/context.ts +2 -3
  244. package/src/Tabs/Tab.story.tsx +1 -0
  245. package/src/Tabs/Tab.tsx +16 -11
  246. package/src/Tabs/TabList.tsx +6 -5
  247. package/src/Tabs/TabPanel.tsx +6 -5
  248. package/src/Tabs/TabPanels.tsx +4 -4
  249. package/src/Tabs/Tabs.tsx +6 -7
  250. package/src/Tabs/context.ts +4 -4
  251. package/src/Tooltip/Tooltip.story.tsx +3 -2
  252. package/src/Tooltip/Tooltip.tsx +11 -9
  253. package/src/Tooltip/stateMachine.ts +1 -1
  254. package/src/Tooltip/useTooltip.ts +19 -10
  255. package/src/hooks/useAutoFocus.ts +3 -1
  256. package/src/hooks/useChildrenCounter.ts +2 -1
  257. package/src/hooks/useControlledState.ts +7 -8
  258. package/src/hooks/useFocusReturn.ts +2 -1
  259. package/src/hooks/useFocusState.ts +4 -2
  260. package/src/hooks/useGestureHandlers.ts +11 -7
  261. package/src/hooks/useMeasure.ts +2 -1
  262. package/src/hooks/useOnClickOutside.ts +2 -2
  263. package/src/hooks/useReducerMachine.ts +2 -1
  264. package/src/hooks/useScope.ts +2 -1
  265. package/src/utils/assignRef.ts +1 -1
  266. package/src/utils/wrapEvent.ts +4 -5
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/hooks/useGestureHandlers.ts"],"names":["useRef","initialGestureHandlersState","target","x","xDelta","xDeltaPercent","xInitial","xPrev","xVelocity","y","yDelta","yDeltaPercent","yInitial","yPrev","yVelocity","startTime","down","scrollLocked","FRAMERATE_CONST","VELOCITY_DEPR_FACTOR","gestureHandlers","set","containerRef","options","ensureTargetIsContainer","minTouchDelta","handleUp","state","deltaTime","Date","now","calcVelocity","newState","handleDown","e","pageX","pageY","deltaSpace","prevVelocity","speed","depr","Math","min","handleMove","cancelable","preventDefault","getDeltaSum","currentPos","initialPos","prevPos","abs","current","width","offsetWidth","NaN","height","offsetHeight","handleTouchMove","touches","item","handleTouchStart","length","window","addEventListener","passive","handleTouchEnd","removeEventListener","handleMouseDown","button","handleMouseUp","onMouseDown","onTouchStart","useGestureHandlers","onGesture","cb","handlers"],"mappings":"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","sourcesContent":["import { useRef } from 'react';\nimport type * as React from 'react';\n\nexport interface GestureHandlersState {\n target: null | EventTarget;\n x: number;\n xDelta: number;\n xDeltaPercent: number;\n xInitial: number;\n xPrev: number;\n xVelocity: number;\n y: number;\n yDelta: number;\n yDeltaPercent: number;\n yInitial: number;\n yPrev: number;\n yVelocity: number;\n startTime: number;\n down: boolean;\n scrollLocked: boolean;\n}\n\ntype SetStateFunc<S> = (\n state: (prevState: Readonly<S>) => S,\n callback?: () => void\n) => void;\n\nexport interface GestureHandlersReturn {\n onMouseDown: (e: React.MouseEvent<HTMLElement>) => void;\n onTouchStart: (e: React.TouchEvent<HTMLElement>) => void;\n}\n\nexport interface GestureHandlerOptions {\n ensureTargetIsContainer?: boolean;\n minTouchDelta?: number;\n}\n\nexport const initialGestureHandlersState: GestureHandlersState = {\n target: null,\n x: 0,\n xDelta: 0,\n xDeltaPercent: 0,\n xInitial: 0,\n xPrev: 0,\n xVelocity: 0,\n y: 0,\n yDelta: 0,\n yDeltaPercent: 0,\n yInitial: 0,\n yPrev: 0,\n yVelocity: 0,\n startTime: 0,\n down: false,\n scrollLocked: false,\n};\n\nconst FRAMERATE_CONST = 1000 / 60; // 60 fps\nconst VELOCITY_DEPR_FACTOR = FRAMERATE_CONST * 2;\n\nexport function gestureHandlers(\n set: SetStateFunc<GestureHandlersState>,\n containerRef?: React.MutableRefObject<HTMLElement | null>,\n options: GestureHandlerOptions = {}\n): GestureHandlersReturn {\n const { ensureTargetIsContainer = false, minTouchDelta = 0 } = options;\n\n // Common handlers\n const handleUp = () => {\n set((state: GestureHandlersState) => {\n const deltaTime = Date.now() - state.startTime;\n const xDelta = state.x - state.xInitial;\n const yDelta = state.y - state.yInitial;\n const xVelocity = calcVelocity(xDelta, deltaTime, state.xVelocity);\n const yVelocity = calcVelocity(yDelta, deltaTime, state.yVelocity);\n const newState: GestureHandlersState = {\n ...state,\n xVelocity,\n yVelocity,\n target: null,\n down: false,\n };\n\n return newState;\n });\n };\n\n const handleDown = (e: MouseEvent) => {\n const { target, pageX, pageY } = e;\n\n set((state: GestureHandlersState) => {\n const newState = {\n ...state,\n target,\n x: pageX,\n xDelta: 0,\n xDeltaPercent: 0,\n xVelocity: 0,\n xInitial: pageX,\n xPrev: pageX,\n y: pageY,\n yDelta: 0,\n yDeltaPercent: 0,\n yVelocity: 0,\n yInitial: pageY,\n yPrev: pageY,\n startTime: Date.now(),\n down: true,\n scrollLocked: false,\n };\n\n return newState;\n });\n };\n\n function calcVelocity(\n deltaSpace: number,\n deltaTime: number,\n prevVelocity: number\n ) {\n if (deltaTime < 1) {\n deltaTime = 1;\n }\n const speed = deltaSpace / deltaTime;\n const depr = 0.5 + Math.min(deltaTime / VELOCITY_DEPR_FACTOR, 0.5);\n return speed * depr + prevVelocity * (1 - depr);\n }\n\n function handleMove(e: MouseEvent) {\n const { pageX, pageY } = e;\n if (e.cancelable) {\n // prevent drag & drop behaviour from browser\n e.preventDefault && e.preventDefault();\n }\n\n set((state: GestureHandlersState) => {\n function getDeltaSum(\n currentPos: number,\n initialPos: number,\n prevPos: number\n ): number {\n if (\n state.scrollLocked ||\n Math.abs(currentPos - initialPos) >= minTouchDelta\n ) {\n state.scrollLocked = true;\n return currentPos - prevPos;\n }\n return 0;\n }\n\n const target =\n (containerRef && containerRef.current) || (e as any).target;\n\n const deltaTime = Date.now() - state.startTime;\n\n const width = target ? target.offsetWidth : NaN;\n const xDelta = state.xDelta + getDeltaSum(pageX, state.xInitial, state.x);\n const xDeltaPercent = (xDelta * 100) / width;\n const xVelocity = calcVelocity(xDelta, deltaTime, state.xVelocity);\n\n const height = target ? target.offsetHeight : NaN;\n const yDelta = state.yDelta + getDeltaSum(pageY, state.yInitial, state.y);\n const yDeltaPercent = (yDelta * 100) / height;\n const yVelocity = calcVelocity(yDelta, deltaTime, state.yVelocity);\n\n const newState = {\n ...state,\n xDelta,\n xDeltaPercent,\n x: pageX,\n xPrev: state.x,\n xVelocity,\n yDelta,\n yDeltaPercent,\n y: pageY,\n yPrev: state.y,\n yVelocity,\n };\n\n return newState;\n });\n }\n\n // Touch handlers\n\n /* eslint-disable @typescript-eslint/no-use-before-define */\n function handleTouchMove(e: TouchEvent) {\n if (e.cancelable) {\n // prevent drag & drop behaviour from browser\n e.preventDefault();\n }\n handleMove(e.touches.item(0) as any);\n }\n\n function handleTouchStart(e: React.TouchEvent<HTMLElement>) {\n // making sure we're not dragging the element when more than one finger press the screen\n const { touches } = e;\n if (touches.length > 1) {\n return;\n }\n\n if (\n ensureTargetIsContainer &&\n containerRef &&\n e.target !== containerRef.current\n ) {\n return;\n }\n\n window.addEventListener('touchmove', handleTouchMove, { passive: false });\n window.addEventListener('touchend', handleTouchEnd);\n window.addEventListener('touchcancel', handleTouchEnd);\n handleDown(e.touches.item(0) as any);\n }\n\n function handleTouchEnd() {\n window.removeEventListener('touchmove', handleTouchMove);\n window.removeEventListener('touchend', handleTouchEnd);\n window.removeEventListener('touchcancel', handleTouchEnd);\n handleUp();\n }\n\n // Mouse handlers\n function handleMouseDown(e: React.MouseEvent<HTMLElement>) {\n if (\n ensureTargetIsContainer &&\n containerRef &&\n e.target !== containerRef.current\n ) {\n return;\n }\n\n if (e.button === 0) {\n window.addEventListener('mousemove', handleMove);\n window.addEventListener('mouseup', handleMouseUp);\n handleDown(e as any);\n }\n }\n\n function handleMouseUp() {\n window.removeEventListener('mousemove', handleMove);\n window.removeEventListener('mouseup', handleMouseUp);\n handleUp();\n }\n /* eslint-enable @typescript-eslint/no-use-before-define */\n\n return {\n onMouseDown: handleMouseDown,\n onTouchStart: handleTouchStart,\n };\n}\n\nexport const useGestureHandlers = (\n containerRef: React.MutableRefObject<HTMLElement | null> | undefined,\n onGesture: (e: GestureHandlersState) => void,\n options: GestureHandlerOptions = {}\n) => {\n const state = useRef({ ...initialGestureHandlersState });\n\n const set = (\n cb: (prevState: GestureHandlersState) => GestureHandlersState\n ) => {\n state.current = cb(state.current);\n onGesture && onGesture(state.current);\n\n return state.current;\n };\n\n const handlers = gestureHandlers(set, containerRef, options);\n\n return { state: state.current, handlers };\n};\n"],"file":"useGestureHandlers.js"}
1
+ {"version":3,"sources":["../../../src/hooks/useGestureHandlers.ts"],"names":["useRef","initialGestureHandlersState","target","x","xDelta","xDeltaPercent","xInitial","xPrev","xVelocity","y","yDelta","yDeltaPercent","yInitial","yPrev","yVelocity","startTime","down","scrollLocked","FRAMERATE_CONST","VELOCITY_DEPR_FACTOR","gestureHandlers","set","containerRef","options","ensureTargetIsContainer","minTouchDelta","handleUp","state","deltaTime","Date","now","calcVelocity","newState","handleDown","e","pageX","pageY","deltaSpace","prevVelocity","speed","depr","Math","min","handleMove","cancelable","preventDefault","getDeltaSum","currentPos","initialPos","prevPos","abs","current","width","offsetWidth","NaN","height","offsetHeight","handleTouchMove","touches","item","handleTouchStart","length","window","addEventListener","passive","handleTouchEnd","removeEventListener","handleMouseDown","button","handleMouseUp","onMouseDown","onTouchStart","useGestureHandlers","onGesture","cb","handlers"],"mappings":"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","sourcesContent":["import type {\n MutableRefObject,\n MouseEvent as ReactMouseEvent,\n TouchEvent as ReactTouchEvent,\n} from 'react';\nimport { useRef } from 'react';\n\nexport interface GestureHandlersState {\n target: null | EventTarget;\n x: number;\n xDelta: number;\n xDeltaPercent: number;\n xInitial: number;\n xPrev: number;\n xVelocity: number;\n y: number;\n yDelta: number;\n yDeltaPercent: number;\n yInitial: number;\n yPrev: number;\n yVelocity: number;\n startTime: number;\n down: boolean;\n scrollLocked: boolean;\n}\n\ntype SetStateFunc<S> = (\n state: (prevState: Readonly<S>) => S,\n callback?: () => void\n) => void;\n\nexport interface GestureHandlersReturn {\n onMouseDown: (e: ReactMouseEvent<HTMLElement>) => void;\n onTouchStart: (e: ReactTouchEvent<HTMLElement>) => void;\n}\n\nexport interface GestureHandlerOptions {\n ensureTargetIsContainer?: boolean;\n minTouchDelta?: number;\n}\n\nexport const initialGestureHandlersState: GestureHandlersState = {\n target: null,\n x: 0,\n xDelta: 0,\n xDeltaPercent: 0,\n xInitial: 0,\n xPrev: 0,\n xVelocity: 0,\n y: 0,\n yDelta: 0,\n yDeltaPercent: 0,\n yInitial: 0,\n yPrev: 0,\n yVelocity: 0,\n startTime: 0,\n down: false,\n scrollLocked: false,\n};\n\nconst FRAMERATE_CONST = 1000 / 60; // 60 fps\nconst VELOCITY_DEPR_FACTOR = FRAMERATE_CONST * 2;\n\nexport function gestureHandlers(\n set: SetStateFunc<GestureHandlersState>,\n containerRef?: MutableRefObject<HTMLElement | null>,\n options: GestureHandlerOptions = {}\n): GestureHandlersReturn {\n const { ensureTargetIsContainer = false, minTouchDelta = 0 } = options;\n\n // Common handlers\n const handleUp = () => {\n set((state: GestureHandlersState) => {\n const deltaTime = Date.now() - state.startTime;\n const xDelta = state.x - state.xInitial;\n const yDelta = state.y - state.yInitial;\n const xVelocity = calcVelocity(xDelta, deltaTime, state.xVelocity);\n const yVelocity = calcVelocity(yDelta, deltaTime, state.yVelocity);\n const newState: GestureHandlersState = {\n ...state,\n xVelocity,\n yVelocity,\n target: null,\n down: false,\n };\n\n return newState;\n });\n };\n\n const handleDown = (e: MouseEvent) => {\n const { target, pageX, pageY } = e;\n\n set((state: GestureHandlersState) => {\n const newState = {\n ...state,\n target,\n x: pageX,\n xDelta: 0,\n xDeltaPercent: 0,\n xVelocity: 0,\n xInitial: pageX,\n xPrev: pageX,\n y: pageY,\n yDelta: 0,\n yDeltaPercent: 0,\n yVelocity: 0,\n yInitial: pageY,\n yPrev: pageY,\n startTime: Date.now(),\n down: true,\n scrollLocked: false,\n };\n\n return newState;\n });\n };\n\n function calcVelocity(\n deltaSpace: number,\n deltaTime: number,\n prevVelocity: number\n ) {\n if (deltaTime < 1) {\n deltaTime = 1;\n }\n const speed = deltaSpace / deltaTime;\n const depr = 0.5 + Math.min(deltaTime / VELOCITY_DEPR_FACTOR, 0.5);\n return speed * depr + prevVelocity * (1 - depr);\n }\n\n function handleMove(e: MouseEvent) {\n const { pageX, pageY } = e;\n if (e.cancelable) {\n // prevent drag & drop behaviour from browser\n e.preventDefault && e.preventDefault();\n }\n\n set((state: GestureHandlersState) => {\n function getDeltaSum(\n currentPos: number,\n initialPos: number,\n prevPos: number\n ): number {\n if (\n state.scrollLocked ||\n Math.abs(currentPos - initialPos) >= minTouchDelta\n ) {\n state.scrollLocked = true;\n return currentPos - prevPos;\n }\n return 0;\n }\n\n const target =\n (containerRef && containerRef.current) || (e as any).target;\n\n const deltaTime = Date.now() - state.startTime;\n\n const width = target ? target.offsetWidth : NaN;\n const xDelta = state.xDelta + getDeltaSum(pageX, state.xInitial, state.x);\n const xDeltaPercent = (xDelta * 100) / width;\n const xVelocity = calcVelocity(xDelta, deltaTime, state.xVelocity);\n\n const height = target ? target.offsetHeight : NaN;\n const yDelta = state.yDelta + getDeltaSum(pageY, state.yInitial, state.y);\n const yDeltaPercent = (yDelta * 100) / height;\n const yVelocity = calcVelocity(yDelta, deltaTime, state.yVelocity);\n\n const newState = {\n ...state,\n xDelta,\n xDeltaPercent,\n x: pageX,\n xPrev: state.x,\n xVelocity,\n yDelta,\n yDeltaPercent,\n y: pageY,\n yPrev: state.y,\n yVelocity,\n };\n\n return newState;\n });\n }\n\n // Touch handlers\n\n /* eslint-disable @typescript-eslint/no-use-before-define */\n function handleTouchMove(e: TouchEvent) {\n if (e.cancelable) {\n // prevent drag & drop behaviour from browser\n e.preventDefault();\n }\n handleMove(e.touches.item(0) as any);\n }\n\n function handleTouchStart(e: ReactTouchEvent<HTMLElement>) {\n // making sure we're not dragging the element when more than one finger press the screen\n const { touches } = e;\n if (touches.length > 1) {\n return;\n }\n\n if (\n ensureTargetIsContainer &&\n containerRef &&\n e.target !== containerRef.current\n ) {\n return;\n }\n\n window.addEventListener('touchmove', handleTouchMove, { passive: false });\n window.addEventListener('touchend', handleTouchEnd);\n window.addEventListener('touchcancel', handleTouchEnd);\n handleDown(e.touches.item(0) as any);\n }\n\n function handleTouchEnd() {\n window.removeEventListener('touchmove', handleTouchMove);\n window.removeEventListener('touchend', handleTouchEnd);\n window.removeEventListener('touchcancel', handleTouchEnd);\n handleUp();\n }\n\n // Mouse handlers\n function handleMouseDown(e: ReactMouseEvent<HTMLElement>) {\n if (\n ensureTargetIsContainer &&\n containerRef &&\n e.target !== containerRef.current\n ) {\n return;\n }\n\n if (e.button === 0) {\n window.addEventListener('mousemove', handleMove);\n window.addEventListener('mouseup', handleMouseUp);\n handleDown(e as any);\n }\n }\n\n function handleMouseUp() {\n window.removeEventListener('mousemove', handleMove);\n window.removeEventListener('mouseup', handleMouseUp);\n handleUp();\n }\n /* eslint-enable @typescript-eslint/no-use-before-define */\n\n return {\n onMouseDown: handleMouseDown,\n onTouchStart: handleTouchStart,\n };\n}\n\nexport const useGestureHandlers = (\n containerRef: MutableRefObject<HTMLElement | null> | undefined,\n onGesture: (e: GestureHandlersState) => void,\n options: GestureHandlerOptions = {}\n) => {\n const state = useRef({ ...initialGestureHandlersState });\n\n const set = (\n cb: (prevState: GestureHandlersState) => GestureHandlersState\n ) => {\n state.current = cb(state.current);\n onGesture && onGesture(state.current);\n\n return state.current;\n };\n\n const handlers = gestureHandlers(set, containerRef, options);\n\n return { state: state.current, handlers };\n};\n"],"file":"useGestureHandlers.js"}
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
- export declare function useMeasure(ref: React.MutableRefObject<HTMLElement | null>): {
1
+ import type { MutableRefObject } from 'react';
2
+ export declare function useMeasure(ref: MutableRefObject<HTMLElement | null>): {
3
3
  left: number;
4
4
  top: number;
5
5
  width: number;
@@ -1,17 +1,23 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
1
2
  import { useRef, useState, useEffect } from 'react';
2
3
  import ResizeObserver from 'resize-observer-polyfill';
3
4
  export function useMeasure(ref) {
4
- const ro = useRef(null);
5
- const [bounds, setBounds] = useState({
5
+ var ro = useRef(null);
6
+
7
+ var _useState = useState({
6
8
  left: 0,
7
9
  top: 0,
8
10
  width: 0,
9
11
  height: 0
10
- });
11
- useEffect(() => {
12
+ }),
13
+ _useState2 = _slicedToArray(_useState, 2),
14
+ bounds = _useState2[0],
15
+ setBounds = _useState2[1];
16
+
17
+ useEffect(function () {
12
18
  if (ro.current === null) {
13
- ro.current = new ResizeObserver(entries => {
14
- const entry = entries[0];
19
+ ro.current = new ResizeObserver(function (entries) {
20
+ var entry = entries[0];
15
21
  setBounds(entry.contentRect);
16
22
  });
17
23
  }
@@ -20,7 +26,7 @@ export function useMeasure(ref) {
20
26
  ro.current.observe(ref.current);
21
27
  }
22
28
 
23
- return () => {
29
+ return function () {
24
30
  if (ro.current) {
25
31
  ro.current.disconnect();
26
32
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/hooks/useMeasure.ts"],"names":["useRef","useState","useEffect","ResizeObserver","useMeasure","ref","ro","bounds","setBounds","left","top","width","height","current","entries","entry","contentRect","observe","disconnect"],"mappings":"AAAA,SAASA,MAAT,EAAiBC,QAAjB,EAA2BC,SAA3B,QAA4C,OAA5C;AACA,OAAOC,cAAP,MAA2B,0BAA3B;AAEA,OAAO,SAASC,UAAT,CAAoBC,GAApB,EAAqE;AAC1E,QAAMC,EAAE,GAAGN,MAAM,CAAwB,IAAxB,CAAjB;AACA,QAAM,CAACO,MAAD,EAASC,SAAT,IAAsBP,QAAQ,CAAC;AACnCQ,IAAAA,IAAI,EAAE,CAD6B;AAEnCC,IAAAA,GAAG,EAAE,CAF8B;AAGnCC,IAAAA,KAAK,EAAE,CAH4B;AAInCC,IAAAA,MAAM,EAAE;AAJ2B,GAAD,CAApC;AAOAV,EAAAA,SAAS,CAAC,MAAM;AACd,QAAII,EAAE,CAACO,OAAH,KAAe,IAAnB,EAAyB;AACvBP,MAAAA,EAAE,CAACO,OAAH,GAAa,IAAIV,cAAJ,CAAoBW,OAAD,IAAkB;AAChD,cAAMC,KAAK,GAAGD,OAAO,CAAC,CAAD,CAArB;AACAN,QAAAA,SAAS,CAACO,KAAK,CAACC,WAAP,CAAT;AACD,OAHY,CAAb;AAID;;AAED,QAAIX,GAAG,CAACQ,OAAR,EAAiB;AACfP,MAAAA,EAAE,CAACO,OAAH,CAAWI,OAAX,CAAmBZ,GAAG,CAACQ,OAAvB;AACD;;AAED,WAAO,MAAM;AACX,UAAIP,EAAE,CAACO,OAAP,EAAgB;AACdP,QAAAA,EAAE,CAACO,OAAH,CAAWK,UAAX;AACD;AACF,KAJD;AAKD,GAjBQ,EAiBN,CAACb,GAAD,CAjBM,CAAT;AAmBA,SAAOE,MAAP;AACD","sourcesContent":["import { useRef, useState, useEffect } from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\n\nexport function useMeasure(ref: React.MutableRefObject<HTMLElement | null>) {\n const ro = useRef<ResizeObserver | null>(null);\n const [bounds, setBounds] = useState({\n left: 0,\n top: 0,\n width: 0,\n height: 0,\n });\n\n useEffect(() => {\n if (ro.current === null) {\n ro.current = new ResizeObserver((entries: any) => {\n const entry = entries[0];\n setBounds(entry.contentRect);\n });\n }\n\n if (ref.current) {\n ro.current.observe(ref.current);\n }\n\n return () => {\n if (ro.current) {\n ro.current.disconnect();\n }\n };\n }, [ref]);\n\n return bounds;\n}\n"],"file":"useMeasure.js"}
1
+ {"version":3,"sources":["../../../src/hooks/useMeasure.ts"],"names":["useRef","useState","useEffect","ResizeObserver","useMeasure","ref","ro","left","top","width","height","bounds","setBounds","current","entries","entry","contentRect","observe","disconnect"],"mappings":";AACA,SAASA,MAAT,EAAiBC,QAAjB,EAA2BC,SAA3B,QAA4C,OAA5C;AACA,OAAOC,cAAP,MAA2B,0BAA3B;AAEA,OAAO,SAASC,UAAT,CAAoBC,GAApB,EAA+D;AACpE,MAAMC,EAAE,GAAGN,MAAM,CAAwB,IAAxB,CAAjB;;AADoE,kBAExCC,QAAQ,CAAC;AACnCM,IAAAA,IAAI,EAAE,CAD6B;AAEnCC,IAAAA,GAAG,EAAE,CAF8B;AAGnCC,IAAAA,KAAK,EAAE,CAH4B;AAInCC,IAAAA,MAAM,EAAE;AAJ2B,GAAD,CAFgC;AAAA;AAAA,MAE7DC,MAF6D;AAAA,MAErDC,SAFqD;;AASpEV,EAAAA,SAAS,CAAC,YAAM;AACd,QAAII,EAAE,CAACO,OAAH,KAAe,IAAnB,EAAyB;AACvBP,MAAAA,EAAE,CAACO,OAAH,GAAa,IAAIV,cAAJ,CAAmB,UAACW,OAAD,EAAkB;AAChD,YAAMC,KAAK,GAAGD,OAAO,CAAC,CAAD,CAArB;AACAF,QAAAA,SAAS,CAACG,KAAK,CAACC,WAAP,CAAT;AACD,OAHY,CAAb;AAID;;AAED,QAAIX,GAAG,CAACQ,OAAR,EAAiB;AACfP,MAAAA,EAAE,CAACO,OAAH,CAAWI,OAAX,CAAmBZ,GAAG,CAACQ,OAAvB;AACD;;AAED,WAAO,YAAM;AACX,UAAIP,EAAE,CAACO,OAAP,EAAgB;AACdP,QAAAA,EAAE,CAACO,OAAH,CAAWK,UAAX;AACD;AACF,KAJD;AAKD,GAjBQ,EAiBN,CAACb,GAAD,CAjBM,CAAT;AAmBA,SAAOM,MAAP;AACD","sourcesContent":["import type { MutableRefObject } from 'react';\nimport { useRef, useState, useEffect } from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\n\nexport function useMeasure(ref: MutableRefObject<HTMLElement | null>) {\n const ro = useRef<ResizeObserver | null>(null);\n const [bounds, setBounds] = useState({\n left: 0,\n top: 0,\n width: 0,\n height: 0,\n });\n\n useEffect(() => {\n if (ro.current === null) {\n ro.current = new ResizeObserver((entries: any) => {\n const entry = entries[0];\n setBounds(entry.contentRect);\n });\n }\n\n if (ref.current) {\n ro.current.observe(ref.current);\n }\n\n return () => {\n if (ro.current) {\n ro.current.disconnect();\n }\n };\n }, [ref]);\n\n return bounds;\n}\n"],"file":"useMeasure.js"}
@@ -1,2 +1,2 @@
1
- import type * as React from 'react';
2
- export declare function useOnClickOutside(ref: React.RefObject<any>, handler: (e: PointerEvent) => void, active?: boolean): void;
1
+ import type { RefObject } from 'react';
2
+ export declare function useOnClickOutside(ref: RefObject<any>, handler: (e: PointerEvent) => void, active?: boolean): void;
@@ -1,6 +1,7 @@
1
1
  import { useEffect, useCallback } from 'react';
2
- export function useOnClickOutside(ref, handler, active = true) {
3
- const listener = useCallback(event => {
2
+ export function useOnClickOutside(ref, handler) {
3
+ var active = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
4
+ var listener = useCallback(function (event) {
4
5
  // Do nothing if clicking ref's element or descendent elements
5
6
  if (!ref.current || ref.current.contains(event.target)) {
6
7
  return;
@@ -8,10 +9,10 @@ export function useOnClickOutside(ref, handler, active = true) {
8
9
 
9
10
  handler && handler(event);
10
11
  }, [ref, handler]);
11
- useEffect(() => {
12
+ useEffect(function () {
12
13
  if (active) {
13
14
  document.addEventListener('pointerup', listener);
14
- return () => {
15
+ return function () {
15
16
  document.removeEventListener('pointerup', listener);
16
17
  };
17
18
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/hooks/useOnClickOutside.ts"],"names":["useEffect","useCallback","useOnClickOutside","ref","handler","active","listener","event","current","contains","target","document","addEventListener","removeEventListener"],"mappings":"AAAA,SAASA,SAAT,EAAoBC,WAApB,QAAuC,OAAvC;AAGA,OAAO,SAASC,iBAAT,CACLC,GADK,EAELC,OAFK,EAGLC,MAAM,GAAG,IAHJ,EAIL;AACA,QAAMC,QAAQ,GAAGL,WAAW,CACzBM,KAAD,IAAyB;AACvB;AACA,QAAI,CAACJ,GAAG,CAACK,OAAL,IAAgBL,GAAG,CAACK,OAAJ,CAAYC,QAAZ,CAAqBF,KAAK,CAACG,MAA3B,CAApB,EAAwD;AACtD;AACD;;AAEDN,IAAAA,OAAO,IAAIA,OAAO,CAACG,KAAD,CAAlB;AACD,GARyB,EAS1B,CAACJ,GAAD,EAAMC,OAAN,CAT0B,CAA5B;AAYAJ,EAAAA,SAAS,CAAC,MAAM;AACd,QAAIK,MAAJ,EAAY;AACVM,MAAAA,QAAQ,CAACC,gBAAT,CAA0B,WAA1B,EAAuCN,QAAvC;AAEA,aAAO,MAAM;AACXK,QAAAA,QAAQ,CAACE,mBAAT,CAA6B,WAA7B,EAA0CP,QAA1C;AACD,OAFD;AAGD;;AAED;AACD,GAVQ,EAUN,CAACA,QAAD,EAAWD,MAAX,CAVM,CAAT;AAWD","sourcesContent":["import { useEffect, useCallback } from 'react';\nimport type * as React from 'react';\n\nexport function useOnClickOutside(\n ref: React.RefObject<any>,\n handler: (e: PointerEvent) => void,\n active = true\n) {\n const listener = useCallback(\n (event: PointerEvent) => {\n // Do nothing if clicking ref's element or descendent elements\n if (!ref.current || ref.current.contains(event.target)) {\n return;\n }\n\n handler && handler(event);\n },\n [ref, handler]\n );\n\n useEffect(() => {\n if (active) {\n document.addEventListener('pointerup', listener);\n\n return () => {\n document.removeEventListener('pointerup', listener);\n };\n }\n\n return;\n }, [listener, active]);\n}\n"],"file":"useOnClickOutside.js"}
1
+ {"version":3,"sources":["../../../src/hooks/useOnClickOutside.ts"],"names":["useEffect","useCallback","useOnClickOutside","ref","handler","active","listener","event","current","contains","target","document","addEventListener","removeEventListener"],"mappings":"AACA,SAASA,SAAT,EAAoBC,WAApB,QAAuC,OAAvC;AAEA,OAAO,SAASC,iBAAT,CACLC,GADK,EAELC,OAFK,EAIL;AAAA,MADAC,MACA,uEADS,IACT;AACA,MAAMC,QAAQ,GAAGL,WAAW,CAC1B,UAACM,KAAD,EAAyB;AACvB;AACA,QAAI,CAACJ,GAAG,CAACK,OAAL,IAAgBL,GAAG,CAACK,OAAJ,CAAYC,QAAZ,CAAqBF,KAAK,CAACG,MAA3B,CAApB,EAAwD;AACtD;AACD;;AAEDN,IAAAA,OAAO,IAAIA,OAAO,CAACG,KAAD,CAAlB;AACD,GARyB,EAS1B,CAACJ,GAAD,EAAMC,OAAN,CAT0B,CAA5B;AAYAJ,EAAAA,SAAS,CAAC,YAAM;AACd,QAAIK,MAAJ,EAAY;AACVM,MAAAA,QAAQ,CAACC,gBAAT,CAA0B,WAA1B,EAAuCN,QAAvC;AAEA,aAAO,YAAM;AACXK,QAAAA,QAAQ,CAACE,mBAAT,CAA6B,WAA7B,EAA0CP,QAA1C;AACD,OAFD;AAGD;;AAED;AACD,GAVQ,EAUN,CAACA,QAAD,EAAWD,MAAX,CAVM,CAAT;AAWD","sourcesContent":["import type { RefObject } from 'react';\nimport { useEffect, useCallback } from 'react';\n\nexport function useOnClickOutside(\n ref: RefObject<any>,\n handler: (e: PointerEvent) => void,\n active = true\n) {\n const listener = useCallback(\n (event: PointerEvent) => {\n // Do nothing if clicking ref's element or descendent elements\n if (!ref.current || ref.current.contains(event.target)) {\n return;\n }\n\n handler && handler(event);\n },\n [ref, handler]\n );\n\n useEffect(() => {\n if (active) {\n document.addEventListener('pointerup', listener);\n\n return () => {\n document.removeEventListener('pointerup', listener);\n };\n }\n\n return;\n }, [listener, active]);\n}\n"],"file":"useOnClickOutside.js"}
@@ -1,9 +1,10 @@
1
1
  import { useEffect } from 'react';
2
- export function useOnKeyDown(handler, active = true) {
3
- useEffect(() => {
2
+ export function useOnKeyDown(handler) {
3
+ var active = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
4
+ useEffect(function () {
4
5
  if (active) {
5
6
  window.addEventListener('keydown', handler);
6
- return () => {
7
+ return function () {
7
8
  window.removeEventListener('keydown', handler);
8
9
  };
9
10
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/hooks/useOnKeyDown.ts"],"names":["useEffect","useOnKeyDown","handler","active","window","addEventListener","removeEventListener"],"mappings":"AAAA,SAASA,SAAT,QAA0B,OAA1B;AAEA,OAAO,SAASC,YAAT,CACLC,OADK,EAELC,MAAM,GAAG,IAFJ,EAGL;AACAH,EAAAA,SAAS,CAAC,MAAM;AACd,QAAIG,MAAJ,EAAY;AACVC,MAAAA,MAAM,CAACC,gBAAP,CAAwB,SAAxB,EAAmCH,OAAnC;AAEA,aAAO,MAAM;AACXE,QAAAA,MAAM,CAACE,mBAAP,CAA2B,SAA3B,EAAsCJ,OAAtC;AACD,OAFD;AAGD;;AAED;AACD,GAVQ,EAUN,CAACC,MAAD,EAASD,OAAT,CAVM,CAAT;AAWD","sourcesContent":["import { useEffect } from 'react';\n\nexport function useOnKeyDown(\n handler: (e: KeyboardEvent) => void,\n active = true\n) {\n useEffect(() => {\n if (active) {\n window.addEventListener('keydown', handler);\n\n return () => {\n window.removeEventListener('keydown', handler);\n };\n }\n\n return;\n }, [active, handler]);\n}\n"],"file":"useOnKeyDown.js"}
1
+ {"version":3,"sources":["../../../src/hooks/useOnKeyDown.ts"],"names":["useEffect","useOnKeyDown","handler","active","window","addEventListener","removeEventListener"],"mappings":"AAAA,SAASA,SAAT,QAA0B,OAA1B;AAEA,OAAO,SAASC,YAAT,CACLC,OADK,EAGL;AAAA,MADAC,MACA,uEADS,IACT;AACAH,EAAAA,SAAS,CAAC,YAAM;AACd,QAAIG,MAAJ,EAAY;AACVC,MAAAA,MAAM,CAACC,gBAAP,CAAwB,SAAxB,EAAmCH,OAAnC;AAEA,aAAO,YAAM;AACXE,QAAAA,MAAM,CAACE,mBAAP,CAA2B,SAA3B,EAAsCJ,OAAtC;AACD,OAFD;AAGD;;AAED;AACD,GAVQ,EAUN,CAACC,MAAD,EAASD,OAAT,CAVM,CAAT;AAWD","sourcesContent":["import { useEffect } from 'react';\n\nexport function useOnKeyDown(\n handler: (e: KeyboardEvent) => void,\n active = true\n) {\n useEffect(() => {\n if (active) {\n window.addEventListener('keydown', handler);\n\n return () => {\n window.removeEventListener('keydown', handler);\n };\n }\n\n return;\n }, [active, handler]);\n}\n"],"file":"useOnKeyDown.js"}
@@ -1,4 +1,4 @@
1
- import { Reducer } from 'react';
1
+ import type { Reducer } from 'react';
2
2
  export interface StateChart<STypes extends string, ATypes extends string> {
3
3
  initial: STypes;
4
4
  states: {
@@ -1,24 +1,27 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
- import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
4
  import { useReducer } from 'react';
4
5
  // This manages transitions between states with a built in reducer to manage
5
6
  // the data that goes with those transitions.
6
7
  export function useReducerMachine(chart, reducer, initialData) {
7
- const [reducerState, dispatch] = useReducer(reducer, initialData);
8
+ var _useReducer = useReducer(reducer, initialData),
9
+ _useReducer2 = _slicedToArray(_useReducer, 2),
10
+ reducerState = _useReducer2[0],
11
+ dispatch = _useReducer2[1];
8
12
 
9
- const {
10
- state
11
- } = reducerState,
12
- data = _objectWithoutPropertiesLoose(reducerState, ["state"]);
13
+ var state = reducerState.state,
14
+ data = _objectWithoutProperties(reducerState, ["state"]);
13
15
 
14
- const transition = (action, payload = {}) => {
15
- const currentState = chart.states[state];
16
+ var transition = function transition(action) {
17
+ var payload = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
18
+ var currentState = chart.states[state];
16
19
 
17
20
  if (!currentState) {
18
21
  throw new Error("Unknown currentState \"".concat(state, "\""));
19
22
  }
20
23
 
21
- const nextState = currentState.on[action];
24
+ var nextState = currentState.on[action];
22
25
 
23
26
  if (!nextState) {
24
27
  throw new Error("Unknown action \"".concat(action, "\" for state \"").concat(state, "\""));
@@ -26,7 +29,7 @@ export function useReducerMachine(chart, reducer, initialData) {
26
29
 
27
30
  dispatch(_extends({
28
31
  type: action,
29
- nextState
32
+ nextState: nextState
30
33
  }, payload));
31
34
  };
32
35
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/hooks/useReducerMachine.ts"],"names":["useReducer","useReducerMachine","chart","reducer","initialData","reducerState","dispatch","state","data","transition","action","payload","currentState","states","Error","nextState","on","type"],"mappings":";;AAAA,SAASA,UAAT,QAAoC,OAApC;AA4BA;AACA;AACA,OAAO,SAASC,iBAAT,CAMLC,KANK,EAOLC,OAPK,EAQLC,WARK,EAS+C;AACpD,QAAM,CAACC,YAAD,EAAeC,QAAf,IAA2BN,UAAU,CAACG,OAAD,EAAUC,WAAV,CAA3C;;AACA,QAAM;AAAEG,IAAAA;AAAF,MAAqBF,YAA3B;AAAA,QAAkBG,IAAlB,iCAA2BH,YAA3B;;AAEA,QAAMI,UAAkC,GAAG,CAACC,MAAD,EAASC,OAAO,GAAG,EAAnB,KAA0B;AACnE,UAAMC,YAAY,GAAGV,KAAK,CAACW,MAAN,CAAaN,KAAb,CAArB;;AACA,QAAI,CAACK,YAAL,EAAmB;AACjB,YAAM,IAAIE,KAAJ,kCAAmCP,KAAnC,QAAN;AACD;;AAED,UAAMQ,SAA6B,GAAGH,YAAY,CAACI,EAAb,CAAgBN,MAAhB,CAAtC;;AACA,QAAI,CAACK,SAAL,EAAgB;AACd,YAAM,IAAID,KAAJ,4BAA6BJ,MAA7B,4BAAmDH,KAAnD,QAAN;AACD;;AAEDD,IAAAA,QAAQ;AAAGW,MAAAA,IAAI,EAAEP,MAAT;AAAiBK,MAAAA;AAAjB,OAA+BJ,OAA/B,EAAR;AACD,GAZD;;AAcA,SAAO,CAACJ,KAAD,EAAQC,IAAR,EAAcC,UAAd,CAAP;AACD","sourcesContent":["import { useReducer, Reducer } from 'react';\n\nexport interface StateChart<STypes extends string, ATypes extends string> {\n initial: STypes;\n states: {\n [state in STypes]?: {\n enter?: (prevState: STypes, payload: any) => void;\n leave?: (nextState: STypes, payload: any) => void;\n on: { [action in ATypes]?: STypes };\n };\n };\n}\n\nexport interface StateMachineState<STypes, ATypes> {\n state: STypes;\n lastActionType: ATypes;\n}\n\nexport interface StateMachineAction<STypes, ATypes> {\n type: ATypes;\n nextState: STypes;\n}\n\ntype TransitionType<ATypes extends string> = (\n action: ATypes,\n payload: any\n) => void;\n\n// This manages transitions between states with a built in reducer to manage\n// the data that goes with those transitions.\nexport function useReducerMachine<\n S extends StateMachineState<STypes, ATypes>,\n A extends StateMachineAction<STypes, ATypes>,\n STypes extends string,\n ATypes extends string\n>(\n chart: StateChart<STypes, ATypes>,\n reducer: Reducer<S, A>,\n initialData: S\n): [STypes, Omit<S, 'state'>, TransitionType<ATypes>] {\n const [reducerState, dispatch] = useReducer(reducer, initialData);\n const { state, ...data } = reducerState;\n\n const transition: TransitionType<ATypes> = (action, payload = {}) => {\n const currentState = chart.states[state];\n if (!currentState) {\n throw new Error(`Unknown currentState \"${state}\"`);\n }\n\n const nextState: STypes | undefined = currentState.on[action];\n if (!nextState) {\n throw new Error(`Unknown action \"${action}\" for state \"${state}\"`);\n }\n\n dispatch({ type: action, nextState, ...payload } as any);\n };\n\n return [state, data, transition];\n}\n"],"file":"useReducerMachine.js"}
1
+ {"version":3,"sources":["../../../src/hooks/useReducerMachine.ts"],"names":["useReducer","useReducerMachine","chart","reducer","initialData","reducerState","dispatch","state","data","transition","action","payload","currentState","states","Error","nextState","on","type"],"mappings":";;;AACA,SAASA,UAAT,QAA2B,OAA3B;AA4BA;AACA;AACA,OAAO,SAASC,iBAAT,CAMLC,KANK,EAOLC,OAPK,EAQLC,WARK,EAS+C;AAAA,oBACnBJ,UAAU,CAACG,OAAD,EAAUC,WAAV,CADS;AAAA;AAAA,MAC7CC,YAD6C;AAAA,MAC/BC,QAD+B;;AAAA,MAE5CC,KAF4C,GAEzBF,YAFyB,CAE5CE,KAF4C;AAAA,MAElCC,IAFkC,4BAEzBH,YAFyB;;AAIpD,MAAMI,UAAkC,GAAG,SAArCA,UAAqC,CAACC,MAAD,EAA0B;AAAA,QAAjBC,OAAiB,uEAAP,EAAO;AACnE,QAAMC,YAAY,GAAGV,KAAK,CAACW,MAAN,CAAaN,KAAb,CAArB;;AACA,QAAI,CAACK,YAAL,EAAmB;AACjB,YAAM,IAAIE,KAAJ,kCAAmCP,KAAnC,QAAN;AACD;;AAED,QAAMQ,SAA6B,GAAGH,YAAY,CAACI,EAAb,CAAgBN,MAAhB,CAAtC;;AACA,QAAI,CAACK,SAAL,EAAgB;AACd,YAAM,IAAID,KAAJ,4BAA6BJ,MAA7B,4BAAmDH,KAAnD,QAAN;AACD;;AAEDD,IAAAA,QAAQ;AAAGW,MAAAA,IAAI,EAAEP,MAAT;AAAiBK,MAAAA,SAAS,EAATA;AAAjB,OAA+BJ,OAA/B,EAAR;AACD,GAZD;;AAcA,SAAO,CAACJ,KAAD,EAAQC,IAAR,EAAcC,UAAd,CAAP;AACD","sourcesContent":["import type { Reducer } from 'react';\nimport { useReducer } from 'react';\n\nexport interface StateChart<STypes extends string, ATypes extends string> {\n initial: STypes;\n states: {\n [state in STypes]?: {\n enter?: (prevState: STypes, payload: any) => void;\n leave?: (nextState: STypes, payload: any) => void;\n on: { [action in ATypes]?: STypes };\n };\n };\n}\n\nexport interface StateMachineState<STypes, ATypes> {\n state: STypes;\n lastActionType: ATypes;\n}\n\nexport interface StateMachineAction<STypes, ATypes> {\n type: ATypes;\n nextState: STypes;\n}\n\ntype TransitionType<ATypes extends string> = (\n action: ATypes,\n payload: any\n) => void;\n\n// This manages transitions between states with a built in reducer to manage\n// the data that goes with those transitions.\nexport function useReducerMachine<\n S extends StateMachineState<STypes, ATypes>,\n A extends StateMachineAction<STypes, ATypes>,\n STypes extends string,\n ATypes extends string\n>(\n chart: StateChart<STypes, ATypes>,\n reducer: Reducer<S, A>,\n initialData: S\n): [STypes, Omit<S, 'state'>, TransitionType<ATypes>] {\n const [reducerState, dispatch] = useReducer(reducer, initialData);\n const { state, ...data } = reducerState;\n\n const transition: TransitionType<ATypes> = (action, payload = {}) => {\n const currentState = chart.states[state];\n if (!currentState) {\n throw new Error(`Unknown currentState \"${state}\"`);\n }\n\n const nextState: STypes | undefined = currentState.on[action];\n if (!nextState) {\n throw new Error(`Unknown action \"${action}\" for state \"${state}\"`);\n }\n\n dispatch({ type: action, nextState, ...payload } as any);\n };\n\n return [state, data, transition];\n}\n"],"file":"useReducerMachine.js"}
@@ -1,11 +1,11 @@
1
1
  import { useEffect } from 'react';
2
- let scrollBodyCount = 0;
2
+ var scrollBodyCount = 0;
3
3
  export function useRemoveBodyScroll(open) {
4
- useEffect(() => {
4
+ useEffect(function () {
5
5
  if (open) {
6
6
  scrollBodyCount += 1; // calculate scrollbar width if mounting the first scroll lock
7
7
 
8
- let scrollBarWidth = 0;
8
+ var scrollBarWidth = 0;
9
9
 
10
10
  if (scrollBodyCount === 1) {
11
11
  scrollBarWidth = window.innerWidth - document.body.clientWidth;
@@ -17,7 +17,7 @@ export function useRemoveBodyScroll(open) {
17
17
  document.body.style.marginRight = "".concat(scrollBarWidth, "px");
18
18
  }
19
19
 
20
- return () => {
20
+ return function () {
21
21
  scrollBodyCount -= 1;
22
22
 
23
23
  if (scrollBodyCount === 0) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/hooks/useRemoveBodyScroll.ts"],"names":["useEffect","scrollBodyCount","useRemoveBodyScroll","open","scrollBarWidth","window","innerWidth","document","body","clientWidth","style","overflow","marginRight"],"mappings":"AAAA,SAASA,SAAT,QAA0B,OAA1B;AAEA,IAAIC,eAAe,GAAG,CAAtB;AACA,OAAO,SAASC,mBAAT,CAA6BC,IAA7B,EAA4C;AACjDH,EAAAA,SAAS,CAAC,MAAM;AACd,QAAIG,IAAJ,EAAU;AACRF,MAAAA,eAAe,IAAI,CAAnB,CADQ,CAGR;;AACA,UAAIG,cAAc,GAAG,CAArB;;AACA,UAAIH,eAAe,KAAK,CAAxB,EAA2B;AACzBG,QAAAA,cAAc,GAAGC,MAAM,CAACC,UAAP,GAAoBC,QAAQ,CAACC,IAAT,CAAcC,WAAnD;AACD;;AAEDF,MAAAA,QAAQ,CAACC,IAAT,CAAcE,KAAd,CAAoBC,QAApB,GAA+B,QAA/B;;AACA,UAAIP,cAAc,GAAG,CAArB,EAAwB;AACtBG,QAAAA,QAAQ,CAACC,IAAT,CAAcE,KAAd,CAAoBE,WAApB,aAAqCR,cAArC;AACD;;AAED,aAAO,MAAM;AACXH,QAAAA,eAAe,IAAI,CAAnB;;AACA,YAAIA,eAAe,KAAK,CAAxB,EAA2B;AACzBM,UAAAA,QAAQ,CAACC,IAAT,CAAcE,KAAd,CAAoBC,QAApB,GAA+B,EAA/B;AACAJ,UAAAA,QAAQ,CAACC,IAAT,CAAcE,KAAd,CAAoBE,WAApB,GAAkC,EAAlC;AACD;AACF,OAND;AAOD;AACF,GAvBQ,EAuBN,CAACT,IAAD,CAvBM,CAAT;AAwBD","sourcesContent":["import { useEffect } from 'react';\n\nlet scrollBodyCount = 0;\nexport function useRemoveBodyScroll(open: boolean) {\n useEffect(() => {\n if (open) {\n scrollBodyCount += 1;\n\n // calculate scrollbar width if mounting the first scroll lock\n let scrollBarWidth = 0;\n if (scrollBodyCount === 1) {\n scrollBarWidth = window.innerWidth - document.body.clientWidth;\n }\n\n document.body.style.overflow = 'hidden';\n if (scrollBarWidth > 0) {\n document.body.style.marginRight = `${scrollBarWidth}px`;\n }\n\n return () => {\n scrollBodyCount -= 1;\n if (scrollBodyCount === 0) {\n document.body.style.overflow = '';\n document.body.style.marginRight = '';\n }\n };\n }\n }, [open]);\n}\n"],"file":"useRemoveBodyScroll.js"}
1
+ {"version":3,"sources":["../../../src/hooks/useRemoveBodyScroll.ts"],"names":["useEffect","scrollBodyCount","useRemoveBodyScroll","open","scrollBarWidth","window","innerWidth","document","body","clientWidth","style","overflow","marginRight"],"mappings":"AAAA,SAASA,SAAT,QAA0B,OAA1B;AAEA,IAAIC,eAAe,GAAG,CAAtB;AACA,OAAO,SAASC,mBAAT,CAA6BC,IAA7B,EAA4C;AACjDH,EAAAA,SAAS,CAAC,YAAM;AACd,QAAIG,IAAJ,EAAU;AACRF,MAAAA,eAAe,IAAI,CAAnB,CADQ,CAGR;;AACA,UAAIG,cAAc,GAAG,CAArB;;AACA,UAAIH,eAAe,KAAK,CAAxB,EAA2B;AACzBG,QAAAA,cAAc,GAAGC,MAAM,CAACC,UAAP,GAAoBC,QAAQ,CAACC,IAAT,CAAcC,WAAnD;AACD;;AAEDF,MAAAA,QAAQ,CAACC,IAAT,CAAcE,KAAd,CAAoBC,QAApB,GAA+B,QAA/B;;AACA,UAAIP,cAAc,GAAG,CAArB,EAAwB;AACtBG,QAAAA,QAAQ,CAACC,IAAT,CAAcE,KAAd,CAAoBE,WAApB,aAAqCR,cAArC;AACD;;AAED,aAAO,YAAM;AACXH,QAAAA,eAAe,IAAI,CAAnB;;AACA,YAAIA,eAAe,KAAK,CAAxB,EAA2B;AACzBM,UAAAA,QAAQ,CAACC,IAAT,CAAcE,KAAd,CAAoBC,QAApB,GAA+B,EAA/B;AACAJ,UAAAA,QAAQ,CAACC,IAAT,CAAcE,KAAd,CAAoBE,WAApB,GAAkC,EAAlC;AACD;AACF,OAND;AAOD;AACF,GAvBQ,EAuBN,CAACT,IAAD,CAvBM,CAAT;AAwBD","sourcesContent":["import { useEffect } from 'react';\n\nlet scrollBodyCount = 0;\nexport function useRemoveBodyScroll(open: boolean) {\n useEffect(() => {\n if (open) {\n scrollBodyCount += 1;\n\n // calculate scrollbar width if mounting the first scroll lock\n let scrollBarWidth = 0;\n if (scrollBodyCount === 1) {\n scrollBarWidth = window.innerWidth - document.body.clientWidth;\n }\n\n document.body.style.overflow = 'hidden';\n if (scrollBarWidth > 0) {\n document.body.style.marginRight = `${scrollBarWidth}px`;\n }\n\n return () => {\n scrollBodyCount -= 1;\n if (scrollBodyCount === 0) {\n document.body.style.overflow = '';\n document.body.style.marginRight = '';\n }\n };\n }\n }, [open]);\n}\n"],"file":"useRemoveBodyScroll.js"}
@@ -1,4 +1,4 @@
1
- import { MutableRefObject } from 'react';
1
+ import type { MutableRefObject } from 'react';
2
2
  export declare type ScopeMatcherFn = (nodeType: string, props: {
3
3
  [key: string]: string;
4
4
  }, instance: Element) => boolean;
@@ -1,20 +1,18 @@
1
1
  import { useRef } from 'react';
2
2
  export function getScope(rootRef) {
3
- const queryAllNodes = matcherFn => {
3
+ var queryAllNodes = function queryAllNodes(matcherFn) {
4
4
  if (!rootRef.current) {
5
5
  return [];
6
6
  }
7
7
 
8
- const allNodes = rootRef.current.querySelectorAll('*');
9
- const filtered = [];
10
- allNodes.forEach(node => {
11
- const props = {};
12
- const {
13
- attributes
14
- } = node;
8
+ var allNodes = rootRef.current.querySelectorAll('*');
9
+ var filtered = [];
10
+ allNodes.forEach(function (node) {
11
+ var props = {};
12
+ var attributes = node.attributes;
15
13
 
16
- for (let i = 0; i < attributes.length; i++) {
17
- const attr = attributes[i];
14
+ for (var i = 0; i < attributes.length; i++) {
15
+ var attr = attributes[i];
18
16
  props[attr.name] = attr.value;
19
17
  }
20
18
 
@@ -26,11 +24,11 @@ export function getScope(rootRef) {
26
24
  };
27
25
 
28
26
  return {
29
- queryAllNodes
27
+ queryAllNodes: queryAllNodes
30
28
  };
31
29
  }
32
30
  export function useScope(rootRef) {
33
- const scope = useRef(getScope(rootRef));
31
+ var scope = useRef(getScope(rootRef));
34
32
  return scope;
35
33
  }
36
34
  //# sourceMappingURL=useScope.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/hooks/useScope.ts"],"names":["useRef","getScope","rootRef","queryAllNodes","matcherFn","current","allNodes","querySelectorAll","filtered","forEach","node","props","attributes","i","length","attr","name","value","tagName","toLowerCase","push","useScope","scope"],"mappings":"AAAA,SAASA,MAAT,QAAyC,OAAzC;AAcA,OAAO,SAASC,QAAT,CACLC,OADK,EAEL;AACA,QAAMC,aAAa,GAAIC,SAAD,IAA+B;AACnD,QAAI,CAACF,OAAO,CAACG,OAAb,EAAsB;AACpB,aAAO,EAAP;AACD;;AAED,UAAMC,QAAQ,GAAGJ,OAAO,CAACG,OAAR,CAAgBE,gBAAhB,CAAiC,GAAjC,CAAjB;AAEA,UAAMC,QAAa,GAAG,EAAtB;AACAF,IAAAA,QAAQ,CAACG,OAAT,CAAkBC,IAAD,IAAU;AACzB,YAAMC,KAAK,GAAG,EAAd;AACA,YAAM;AAAEC,QAAAA;AAAF,UAAiBF,IAAvB;;AACA,WAAK,IAAIG,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGD,UAAU,CAACE,MAA/B,EAAuCD,CAAC,EAAxC,EAA4C;AAC1C,cAAME,IAAI,GAAGH,UAAU,CAACC,CAAD,CAAvB;AACAF,QAAAA,KAAK,CAACI,IAAI,CAACC,IAAN,CAAL,GAAmBD,IAAI,CAACE,KAAxB;AACD;;AAED,UAAIb,SAAS,CAACM,IAAI,CAACQ,OAAL,CAAaC,WAAb,EAAD,EAA6BR,KAA7B,EAAoCD,IAApC,CAAb,EAAwD;AACtDF,QAAAA,QAAQ,CAACY,IAAT,CAAcV,IAAd;AACD;AACF,KAXD;AAaA,WAAOF,QAAP;AACD,GAtBD;;AAwBA,SAAO;AAAEL,IAAAA;AAAF,GAAP;AACD;AAED,OAAO,SAASkB,QAAT,CACLnB,OADK,EAEK;AACV,QAAMoB,KAAe,GAAGtB,MAAM,CAACC,QAAQ,CAACC,OAAD,CAAT,CAA9B;AAEA,SAAOoB,KAAP;AACD","sourcesContent":["import { useRef, MutableRefObject } from 'react';\n\nexport type ScopeMatcherFn = (\n nodeType: string,\n props: {\n [key: string]: string;\n },\n instance: Element\n) => boolean;\n\nexport type Scope<T extends HTMLElement> = MutableRefObject<{\n queryAllNodes: (matcherFn: ScopeMatcherFn) => T[];\n}>;\n\nexport function getScope<T extends HTMLElement, R extends HTMLElement>(\n rootRef: MutableRefObject<R | undefined | null>\n) {\n const queryAllNodes = (matcherFn: ScopeMatcherFn) => {\n if (!rootRef.current) {\n return [];\n }\n\n const allNodes = rootRef.current.querySelectorAll('*');\n\n const filtered: T[] = [];\n allNodes.forEach((node) => {\n const props = {};\n const { attributes } = node;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes[i];\n props[attr.name] = attr.value;\n }\n\n if (matcherFn(node.tagName.toLowerCase(), props, node)) {\n filtered.push(node as T);\n }\n });\n\n return filtered;\n };\n\n return { queryAllNodes };\n}\n\nexport function useScope<T extends HTMLElement, R extends HTMLElement>(\n rootRef: MutableRefObject<R | undefined | null>\n): Scope<T> {\n const scope: Scope<T> = useRef(getScope(rootRef));\n\n return scope;\n}\n"],"file":"useScope.js"}
1
+ {"version":3,"sources":["../../../src/hooks/useScope.ts"],"names":["useRef","getScope","rootRef","queryAllNodes","matcherFn","current","allNodes","querySelectorAll","filtered","forEach","node","props","attributes","i","length","attr","name","value","tagName","toLowerCase","push","useScope","scope"],"mappings":"AACA,SAASA,MAAT,QAAuB,OAAvB;AAcA,OAAO,SAASC,QAAT,CACLC,OADK,EAEL;AACA,MAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACC,SAAD,EAA+B;AACnD,QAAI,CAACF,OAAO,CAACG,OAAb,EAAsB;AACpB,aAAO,EAAP;AACD;;AAED,QAAMC,QAAQ,GAAGJ,OAAO,CAACG,OAAR,CAAgBE,gBAAhB,CAAiC,GAAjC,CAAjB;AAEA,QAAMC,QAAa,GAAG,EAAtB;AACAF,IAAAA,QAAQ,CAACG,OAAT,CAAiB,UAACC,IAAD,EAAU;AACzB,UAAMC,KAAK,GAAG,EAAd;AADyB,UAEjBC,UAFiB,GAEFF,IAFE,CAEjBE,UAFiB;;AAGzB,WAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGD,UAAU,CAACE,MAA/B,EAAuCD,CAAC,EAAxC,EAA4C;AAC1C,YAAME,IAAI,GAAGH,UAAU,CAACC,CAAD,CAAvB;AACAF,QAAAA,KAAK,CAACI,IAAI,CAACC,IAAN,CAAL,GAAmBD,IAAI,CAACE,KAAxB;AACD;;AAED,UAAIb,SAAS,CAACM,IAAI,CAACQ,OAAL,CAAaC,WAAb,EAAD,EAA6BR,KAA7B,EAAoCD,IAApC,CAAb,EAAwD;AACtDF,QAAAA,QAAQ,CAACY,IAAT,CAAcV,IAAd;AACD;AACF,KAXD;AAaA,WAAOF,QAAP;AACD,GAtBD;;AAwBA,SAAO;AAAEL,IAAAA,aAAa,EAAbA;AAAF,GAAP;AACD;AAED,OAAO,SAASkB,QAAT,CACLnB,OADK,EAEK;AACV,MAAMoB,KAAe,GAAGtB,MAAM,CAACC,QAAQ,CAACC,OAAD,CAAT,CAA9B;AAEA,SAAOoB,KAAP;AACD","sourcesContent":["import type { MutableRefObject } from 'react';\nimport { useRef } from 'react';\n\nexport type ScopeMatcherFn = (\n nodeType: string,\n props: {\n [key: string]: string;\n },\n instance: Element\n) => boolean;\n\nexport type Scope<T extends HTMLElement> = MutableRefObject<{\n queryAllNodes: (matcherFn: ScopeMatcherFn) => T[];\n}>;\n\nexport function getScope<T extends HTMLElement, R extends HTMLElement>(\n rootRef: MutableRefObject<R | undefined | null>\n) {\n const queryAllNodes = (matcherFn: ScopeMatcherFn) => {\n if (!rootRef.current) {\n return [];\n }\n\n const allNodes = rootRef.current.querySelectorAll('*');\n\n const filtered: T[] = [];\n allNodes.forEach((node) => {\n const props = {};\n const { attributes } = node;\n for (let i = 0; i < attributes.length; i++) {\n const attr = attributes[i];\n props[attr.name] = attr.value;\n }\n\n if (matcherFn(node.tagName.toLowerCase(), props, node)) {\n filtered.push(node as T);\n }\n });\n\n return filtered;\n };\n\n return { queryAllNodes };\n}\n\nexport function useScope<T extends HTMLElement, R extends HTMLElement>(\n rootRef: MutableRefObject<R | undefined | null>\n): Scope<T> {\n const scope: Scope<T> = useRef(getScope(rootRef));\n\n return scope;\n}\n"],"file":"useScope.js"}
@@ -1,13 +1,18 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
1
2
  import { useState, useEffect, useRef } from 'react';
2
3
  export function useThrottle(value, limit) {
3
- const [throttledValue, setThrottledValue] = useState(value);
4
- const lastRan = useRef(Date.now());
5
- useEffect(() => {
6
- const handler = setTimeout(() => {
4
+ var _useState = useState(value),
5
+ _useState2 = _slicedToArray(_useState, 2),
6
+ throttledValue = _useState2[0],
7
+ setThrottledValue = _useState2[1];
8
+
9
+ var lastRan = useRef(Date.now());
10
+ useEffect(function () {
11
+ var handler = setTimeout(function () {
7
12
  setThrottledValue(value);
8
13
  lastRan.current = Date.now();
9
14
  }, limit - (Date.now() - lastRan.current));
10
- return () => {
15
+ return function () {
11
16
  clearTimeout(handler);
12
17
  };
13
18
  }, [value, limit]);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/hooks/useThrottle.ts"],"names":["useState","useEffect","useRef","useThrottle","value","limit","throttledValue","setThrottledValue","lastRan","Date","now","handler","setTimeout","current","clearTimeout"],"mappings":"AAAA,SAASA,QAAT,EAAmBC,SAAnB,EAA8BC,MAA9B,QAA4C,OAA5C;AAEA,OAAO,SAASC,WAAT,CAAwBC,KAAxB,EAAkCC,KAAlC,EAAiD;AACtD,QAAM,CAACC,cAAD,EAAiBC,iBAAjB,IAAsCP,QAAQ,CAACI,KAAD,CAApD;AACA,QAAMI,OAAO,GAAGN,MAAM,CAACO,IAAI,CAACC,GAAL,EAAD,CAAtB;AAEAT,EAAAA,SAAS,CAAC,MAAM;AACd,UAAMU,OAAO,GAAGC,UAAU,CAAC,MAAM;AAC/BL,MAAAA,iBAAiB,CAACH,KAAD,CAAjB;AACAI,MAAAA,OAAO,CAACK,OAAR,GAAkBJ,IAAI,CAACC,GAAL,EAAlB;AACD,KAHyB,EAGvBL,KAAK,IAAII,IAAI,CAACC,GAAL,KAAaF,OAAO,CAACK,OAAzB,CAHkB,CAA1B;AAKA,WAAO,MAAM;AACXC,MAAAA,YAAY,CAACH,OAAD,CAAZ;AACD,KAFD;AAGD,GATQ,EASN,CAACP,KAAD,EAAQC,KAAR,CATM,CAAT;AAWA,SAAOC,cAAP;AACD","sourcesContent":["import { useState, useEffect, useRef } from 'react';\n\nexport function useThrottle<T>(value: T, limit: number) {\n const [throttledValue, setThrottledValue] = useState(value);\n const lastRan = useRef(Date.now());\n\n useEffect(() => {\n const handler = setTimeout(() => {\n setThrottledValue(value);\n lastRan.current = Date.now();\n }, limit - (Date.now() - lastRan.current));\n\n return () => {\n clearTimeout(handler);\n };\n }, [value, limit]);\n\n return throttledValue;\n}\n"],"file":"useThrottle.js"}
1
+ {"version":3,"sources":["../../../src/hooks/useThrottle.ts"],"names":["useState","useEffect","useRef","useThrottle","value","limit","throttledValue","setThrottledValue","lastRan","Date","now","handler","setTimeout","current","clearTimeout"],"mappings":";AAAA,SAASA,QAAT,EAAmBC,SAAnB,EAA8BC,MAA9B,QAA4C,OAA5C;AAEA,OAAO,SAASC,WAAT,CAAwBC,KAAxB,EAAkCC,KAAlC,EAAiD;AAAA,kBACVL,QAAQ,CAACI,KAAD,CADE;AAAA;AAAA,MAC/CE,cAD+C;AAAA,MAC/BC,iBAD+B;;AAEtD,MAAMC,OAAO,GAAGN,MAAM,CAACO,IAAI,CAACC,GAAL,EAAD,CAAtB;AAEAT,EAAAA,SAAS,CAAC,YAAM;AACd,QAAMU,OAAO,GAAGC,UAAU,CAAC,YAAM;AAC/BL,MAAAA,iBAAiB,CAACH,KAAD,CAAjB;AACAI,MAAAA,OAAO,CAACK,OAAR,GAAkBJ,IAAI,CAACC,GAAL,EAAlB;AACD,KAHyB,EAGvBL,KAAK,IAAII,IAAI,CAACC,GAAL,KAAaF,OAAO,CAACK,OAAzB,CAHkB,CAA1B;AAKA,WAAO,YAAM;AACXC,MAAAA,YAAY,CAACH,OAAD,CAAZ;AACD,KAFD;AAGD,GATQ,EASN,CAACP,KAAD,EAAQC,KAAR,CATM,CAAT;AAWA,SAAOC,cAAP;AACD","sourcesContent":["import { useState, useEffect, useRef } from 'react';\n\nexport function useThrottle<T>(value: T, limit: number) {\n const [throttledValue, setThrottledValue] = useState(value);\n const lastRan = useRef(Date.now());\n\n useEffect(() => {\n const handler = setTimeout(() => {\n setThrottledValue(value);\n lastRan.current = Date.now();\n }, limit - (Date.now() - lastRan.current));\n\n return () => {\n clearTimeout(handler);\n };\n }, [value, limit]);\n\n return throttledValue;\n}\n"],"file":"useThrottle.js"}
@@ -1,3 +1,3 @@
1
- import { LegacyRef, MutableRefObject, Ref, RefCallback } from 'react';
1
+ import type { LegacyRef, MutableRefObject, Ref, RefCallback } from 'react';
2
2
  export declare function assignRef<T>(ref: LegacyRef<T> | MutableRefObject<T> | Ref<T> | null | undefined, value: T): void;
3
3
  export declare function assignMultipleRefs<T>(...refs: (LegacyRef<T> | MutableRefObject<T> | Ref<T> | null | undefined)[]): RefCallback<T>;
@@ -11,9 +11,13 @@ export function assignRef(ref, value) {
11
11
  }
12
12
  }
13
13
  }
14
- export function assignMultipleRefs(...refs) {
15
- return node => {
16
- refs.forEach(ref => {
14
+ export function assignMultipleRefs() {
15
+ for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {
16
+ refs[_key] = arguments[_key];
17
+ }
18
+
19
+ return function (node) {
20
+ refs.forEach(function (ref) {
17
21
  assignRef(ref, node);
18
22
  });
19
23
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/assignRef.ts"],"names":["assignRef","ref","value","current","error","Error","assignMultipleRefs","refs","node","forEach"],"mappings":"AAEA,OAAO,SAASA,SAAT,CACLC,GADK,EAELC,KAFK,EAGL;AACA,MAAID,GAAG,IAAI,IAAX,EAAiB;;AACjB,MAAI,OAAOA,GAAP,KAAe,UAAnB,EAA+B;AAC7BA,IAAAA,GAAG,CAACC,KAAD,CAAH;AACD,GAFD,MAEO;AACL,QAAI;AACDD,MAAAA,GAAD,CAA6BE,OAA7B,GAAuCD,KAAvC;AACD,KAFD,CAEE,OAAOE,KAAP,EAAc;AACd,YAAM,IAAIC,KAAJ,iCAAkCH,KAAlC,yBAAoDD,GAApD,QAAN;AACD;AACF;AACF;AAED,OAAO,SAASK,kBAAT,CACL,GAAGC,IADE,EAEW;AAChB,SAAQC,IAAD,IAAoB;AACzBD,IAAAA,IAAI,CAACE,OAAL,CAAcR,GAAD,IAAS;AACpBD,MAAAA,SAAS,CAACC,GAAD,EAAMO,IAAN,CAAT;AACD,KAFD;AAGD,GAJD;AAKD","sourcesContent":["import { LegacyRef, MutableRefObject, Ref, RefCallback } from 'react';\n\nexport function assignRef<T>(\n ref: LegacyRef<T> | MutableRefObject<T> | Ref<T> | null | undefined,\n value: T\n) {\n if (ref == null) return;\n if (typeof ref === 'function') {\n ref(value);\n } else {\n try {\n (ref as MutableRefObject<T>).current = value;\n } catch (error) {\n throw new Error(`Cannot assign value \"${value}\" to ref \"${ref}\"`);\n }\n }\n}\n\nexport function assignMultipleRefs<T>(\n ...refs: (LegacyRef<T> | MutableRefObject<T> | Ref<T> | null | undefined)[]\n): RefCallback<T> {\n return (node: T | null) => {\n refs.forEach((ref) => {\n assignRef(ref, node);\n });\n };\n}\n"],"file":"assignRef.js"}
1
+ {"version":3,"sources":["../../../src/utils/assignRef.ts"],"names":["assignRef","ref","value","current","error","Error","assignMultipleRefs","refs","node","forEach"],"mappings":"AAEA,OAAO,SAASA,SAAT,CACLC,GADK,EAELC,KAFK,EAGL;AACA,MAAID,GAAG,IAAI,IAAX,EAAiB;;AACjB,MAAI,OAAOA,GAAP,KAAe,UAAnB,EAA+B;AAC7BA,IAAAA,GAAG,CAACC,KAAD,CAAH;AACD,GAFD,MAEO;AACL,QAAI;AACDD,MAAAA,GAAD,CAA6BE,OAA7B,GAAuCD,KAAvC;AACD,KAFD,CAEE,OAAOE,KAAP,EAAc;AACd,YAAM,IAAIC,KAAJ,iCAAkCH,KAAlC,yBAAoDD,GAApD,QAAN;AACD;AACF;AACF;AAED,OAAO,SAASK,kBAAT,GAEW;AAAA,oCADbC,IACa;AADbA,IAAAA,IACa;AAAA;;AAChB,SAAO,UAACC,IAAD,EAAoB;AACzBD,IAAAA,IAAI,CAACE,OAAL,CAAa,UAACR,GAAD,EAAS;AACpBD,MAAAA,SAAS,CAACC,GAAD,EAAMO,IAAN,CAAT;AACD,KAFD;AAGD,GAJD;AAKD","sourcesContent":["import type { LegacyRef, MutableRefObject, Ref, RefCallback } from 'react';\n\nexport function assignRef<T>(\n ref: LegacyRef<T> | MutableRefObject<T> | Ref<T> | null | undefined,\n value: T\n) {\n if (ref == null) return;\n if (typeof ref === 'function') {\n ref(value);\n } else {\n try {\n (ref as MutableRefObject<T>).current = value;\n } catch (error) {\n throw new Error(`Cannot assign value \"${value}\" to ref \"${ref}\"`);\n }\n }\n}\n\nexport function assignMultipleRefs<T>(\n ...refs: (LegacyRef<T> | MutableRefObject<T> | Ref<T> | null | undefined)[]\n): RefCallback<T> {\n return (node: T | null) => {\n refs.forEach((ref) => {\n assignRef(ref, node);\n });\n };\n}\n"],"file":"assignRef.js"}
@@ -1,20 +1,22 @@
1
1
  export function createSubscription() {
2
- const subscriptions = [];
2
+ var subscriptions = [];
3
3
 
4
4
  function subscribe(fn) {
5
5
  subscriptions.push(fn);
6
- return () => {
6
+ return function () {
7
7
  subscriptions.splice(subscriptions.indexOf(fn), 1);
8
8
  };
9
9
  }
10
10
 
11
11
  function notify() {
12
- subscriptions.forEach(fn => fn());
12
+ subscriptions.forEach(function (fn) {
13
+ return fn();
14
+ });
13
15
  }
14
16
 
15
17
  return {
16
- subscribe,
17
- notify
18
+ subscribe: subscribe,
19
+ notify: notify
18
20
  };
19
21
  }
20
22
  //# sourceMappingURL=createSubscription.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/createSubscription.ts"],"names":["createSubscription","subscriptions","subscribe","fn","push","splice","indexOf","notify","forEach"],"mappings":"AAAA,OAAO,SAASA,kBAAT,GAA8B;AACnC,QAAMC,aAA6B,GAAG,EAAtC;;AAEA,WAASC,SAAT,CAAmBC,EAAnB,EAAmC;AACjCF,IAAAA,aAAa,CAACG,IAAd,CAAmBD,EAAnB;AACA,WAAO,MAAM;AACXF,MAAAA,aAAa,CAACI,MAAd,CAAqBJ,aAAa,CAACK,OAAd,CAAsBH,EAAtB,CAArB,EAAgD,CAAhD;AACD,KAFD;AAGD;;AAED,WAASI,MAAT,GAAkB;AAChBN,IAAAA,aAAa,CAACO,OAAd,CAAuBL,EAAD,IAAQA,EAAE,EAAhC;AACD;;AAED,SAAO;AAAED,IAAAA,SAAF;AAAaK,IAAAA;AAAb,GAAP;AACD","sourcesContent":["export function createSubscription() {\n const subscriptions: (() => void)[] = [];\n\n function subscribe(fn: () => void) {\n subscriptions.push(fn);\n return () => {\n subscriptions.splice(subscriptions.indexOf(fn), 1);\n };\n }\n\n function notify() {\n subscriptions.forEach((fn) => fn());\n }\n\n return { subscribe, notify };\n}\n"],"file":"createSubscription.js"}
1
+ {"version":3,"sources":["../../../src/utils/createSubscription.ts"],"names":["createSubscription","subscriptions","subscribe","fn","push","splice","indexOf","notify","forEach"],"mappings":"AAAA,OAAO,SAASA,kBAAT,GAA8B;AACnC,MAAMC,aAA6B,GAAG,EAAtC;;AAEA,WAASC,SAAT,CAAmBC,EAAnB,EAAmC;AACjCF,IAAAA,aAAa,CAACG,IAAd,CAAmBD,EAAnB;AACA,WAAO,YAAM;AACXF,MAAAA,aAAa,CAACI,MAAd,CAAqBJ,aAAa,CAACK,OAAd,CAAsBH,EAAtB,CAArB,EAAgD,CAAhD;AACD,KAFD;AAGD;;AAED,WAASI,MAAT,GAAkB;AAChBN,IAAAA,aAAa,CAACO,OAAd,CAAsB,UAACL,EAAD;AAAA,aAAQA,EAAE,EAAV;AAAA,KAAtB;AACD;;AAED,SAAO;AAAED,IAAAA,SAAS,EAATA,SAAF;AAAaK,IAAAA,MAAM,EAANA;AAAb,GAAP;AACD","sourcesContent":["export function createSubscription() {\n const subscriptions: (() => void)[] = [];\n\n function subscribe(fn: () => void) {\n subscriptions.push(fn);\n return () => {\n subscriptions.splice(subscriptions.indexOf(fn), 1);\n };\n }\n\n function notify() {\n subscriptions.forEach((fn) => fn());\n }\n\n return { subscribe, notify };\n}\n"],"file":"createSubscription.js"}
@@ -1,9 +1,12 @@
1
1
  // https://twitter.com/chpwn/status/285540192096497664
2
2
  // iOS constant = 0.55
3
- export function rubberBand(distance, dimension, constant = 0.15) {
3
+ export function rubberBand(distance, dimension) {
4
+ var constant = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0.15;
4
5
  return distance * dimension * constant / (dimension + constant * distance);
5
6
  }
6
- export function rubberBandClamp(min, max, delta, constant = 0.15) {
7
+ export function rubberBandClamp(min, max, delta) {
8
+ var constant = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0.15;
9
+
7
10
  if (delta < min) {
8
11
  return -rubberBand(min - delta, max - min, constant) + min;
9
12
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/rubberBandClamp.ts"],"names":["rubberBand","distance","dimension","constant","rubberBandClamp","min","max","delta"],"mappings":"AAAA;AACA;AACA,OAAO,SAASA,UAAT,CACLC,QADK,EAELC,SAFK,EAGLC,QAAQ,GAAG,IAHN,EAIL;AACA,SAAQF,QAAQ,GAAGC,SAAX,GAAuBC,QAAxB,IAAqCD,SAAS,GAAGC,QAAQ,GAAGF,QAA5D,CAAP;AACD;AAED,OAAO,SAASG,eAAT,CACLC,GADK,EAELC,GAFK,EAGLC,KAHK,EAILJ,QAAQ,GAAG,IAJN,EAKL;AACA,MAAII,KAAK,GAAGF,GAAZ,EAAiB;AACf,WAAO,CAACL,UAAU,CAACK,GAAG,GAAGE,KAAP,EAAcD,GAAG,GAAGD,GAApB,EAAyBF,QAAzB,CAAX,GAAgDE,GAAvD;AACD;;AACD,MAAIE,KAAK,GAAGD,GAAZ,EAAiB;AACf,WAAON,UAAU,CAACO,KAAK,GAAGD,GAAT,EAAcA,GAAG,GAAGD,GAApB,EAAyBF,QAAzB,CAAV,GAA+CG,GAAtD;AACD;;AAED,SAAOC,KAAP;AACD","sourcesContent":["// https://twitter.com/chpwn/status/285540192096497664\n// iOS constant = 0.55\nexport function rubberBand(\n distance: number,\n dimension: number,\n constant = 0.15\n) {\n return (distance * dimension * constant) / (dimension + constant * distance);\n}\n\nexport function rubberBandClamp(\n min: number,\n max: number,\n delta: number,\n constant = 0.15\n) {\n if (delta < min) {\n return -rubberBand(min - delta, max - min, constant) + min;\n }\n if (delta > max) {\n return rubberBand(delta - max, max - min, constant) + max;\n }\n\n return delta;\n}\n"],"file":"rubberBandClamp.js"}
1
+ {"version":3,"sources":["../../../src/utils/rubberBandClamp.ts"],"names":["rubberBand","distance","dimension","constant","rubberBandClamp","min","max","delta"],"mappings":"AAAA;AACA;AACA,OAAO,SAASA,UAAT,CACLC,QADK,EAELC,SAFK,EAIL;AAAA,MADAC,QACA,uEADW,IACX;AACA,SAAQF,QAAQ,GAAGC,SAAX,GAAuBC,QAAxB,IAAqCD,SAAS,GAAGC,QAAQ,GAAGF,QAA5D,CAAP;AACD;AAED,OAAO,SAASG,eAAT,CACLC,GADK,EAELC,GAFK,EAGLC,KAHK,EAKL;AAAA,MADAJ,QACA,uEADW,IACX;;AACA,MAAII,KAAK,GAAGF,GAAZ,EAAiB;AACf,WAAO,CAACL,UAAU,CAACK,GAAG,GAAGE,KAAP,EAAcD,GAAG,GAAGD,GAApB,EAAyBF,QAAzB,CAAX,GAAgDE,GAAvD;AACD;;AACD,MAAIE,KAAK,GAAGD,GAAZ,EAAiB;AACf,WAAON,UAAU,CAACO,KAAK,GAAGD,GAAT,EAAcA,GAAG,GAAGD,GAApB,EAAyBF,QAAzB,CAAV,GAA+CG,GAAtD;AACD;;AAED,SAAOC,KAAP;AACD","sourcesContent":["// https://twitter.com/chpwn/status/285540192096497664\n// iOS constant = 0.55\nexport function rubberBand(\n distance: number,\n dimension: number,\n constant = 0.15\n) {\n return (distance * dimension * constant) / (dimension + constant * distance);\n}\n\nexport function rubberBandClamp(\n min: number,\n max: number,\n delta: number,\n constant = 0.15\n) {\n if (delta < min) {\n return -rubberBand(min - delta, max - min, constant) + min;\n }\n if (delta > max) {\n return rubberBand(delta - max, max - min, constant) + max;\n }\n\n return delta;\n}\n"],"file":"rubberBandClamp.js"}
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
2
- export declare type CustomEventHandler<E extends React.SyntheticEvent<any>, H extends unknown[]> = (e: E, ...args: H) => void;
3
- export declare function wrapEvent<E extends React.SyntheticEvent<any>, H extends unknown[]>(theirHandler: CustomEventHandler<E, H> | undefined, ourHandler: CustomEventHandler<E, H>): CustomEventHandler<E, H>;
1
+ import type { SyntheticEvent } from 'react';
2
+ export declare type CustomEventHandler<E extends SyntheticEvent<any>, H extends unknown[]> = (e: E, ...args: H) => void;
3
+ export declare function wrapEvent<E extends SyntheticEvent<any>, H extends unknown[]>(theirHandler: CustomEventHandler<E, H> | undefined, ourHandler: CustomEventHandler<E, H>): CustomEventHandler<E, H>;
@@ -1,9 +1,13 @@
1
1
  export function wrapEvent(theirHandler, ourHandler) {
2
- return (event, ...otherArgs) => {
3
- const ret = theirHandler && theirHandler(event, ...otherArgs);
2
+ return function (event) {
3
+ for (var _len = arguments.length, otherArgs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
4
+ otherArgs[_key - 1] = arguments[_key];
5
+ }
6
+
7
+ var ret = theirHandler && theirHandler.apply(void 0, [event].concat(otherArgs));
4
8
 
5
9
  if (!event.defaultPrevented) {
6
- return ourHandler(event, ...otherArgs);
10
+ return ourHandler.apply(void 0, [event].concat(otherArgs));
7
11
  }
8
12
 
9
13
  return ret;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/wrapEvent.ts"],"names":["wrapEvent","theirHandler","ourHandler","event","otherArgs","ret","defaultPrevented"],"mappings":"AAKA,OAAO,SAASA,SAAT,CAILC,YAJK,EAKLC,UALK,EAMqB;AAC1B,SAAO,CAACC,KAAD,EAAW,GAAGC,SAAd,KAA+B;AACpC,UAAMC,GAAG,GAAGJ,YAAY,IAAIA,YAAY,CAACE,KAAD,EAAQ,GAAGC,SAAX,CAAxC;;AACA,QAAI,CAACD,KAAK,CAACG,gBAAX,EAA6B;AAC3B,aAAOJ,UAAU,CAACC,KAAD,EAAQ,GAAGC,SAAX,CAAjB;AACD;;AACD,WAAOC,GAAP;AACD,GAND;AAOD","sourcesContent":["export type CustomEventHandler<\n E extends React.SyntheticEvent<any>,\n H extends unknown[]\n> = (e: E, ...args: H) => void;\n\nexport function wrapEvent<\n E extends React.SyntheticEvent<any>,\n H extends unknown[]\n>(\n theirHandler: CustomEventHandler<E, H> | undefined,\n ourHandler: CustomEventHandler<E, H>\n): CustomEventHandler<E, H> {\n return (event: E, ...otherArgs: H) => {\n const ret = theirHandler && theirHandler(event, ...otherArgs);\n if (!event.defaultPrevented) {\n return ourHandler(event, ...otherArgs);\n }\n return ret;\n };\n}\n"],"file":"wrapEvent.js"}
1
+ {"version":3,"sources":["../../../src/utils/wrapEvent.ts"],"names":["wrapEvent","theirHandler","ourHandler","event","otherArgs","ret","defaultPrevented"],"mappings":"AAOA,OAAO,SAASA,SAAT,CACLC,YADK,EAELC,UAFK,EAGqB;AAC1B,SAAO,UAACC,KAAD,EAA+B;AAAA,sCAAjBC,SAAiB;AAAjBA,MAAAA,SAAiB;AAAA;;AACpC,QAAMC,GAAG,GAAGJ,YAAY,IAAIA,YAAY,MAAZ,UAAaE,KAAb,SAAuBC,SAAvB,EAA5B;;AACA,QAAI,CAACD,KAAK,CAACG,gBAAX,EAA6B;AAC3B,aAAOJ,UAAU,MAAV,UAAWC,KAAX,SAAqBC,SAArB,EAAP;AACD;;AACD,WAAOC,GAAP;AACD,GAND;AAOD","sourcesContent":["import type { SyntheticEvent } from 'react';\n\nexport type CustomEventHandler<\n E extends SyntheticEvent<any>,\n H extends unknown[]\n> = (e: E, ...args: H) => void;\n\nexport function wrapEvent<E extends SyntheticEvent<any>, H extends unknown[]>(\n theirHandler: CustomEventHandler<E, H> | undefined,\n ourHandler: CustomEventHandler<E, H>\n): CustomEventHandler<E, H> {\n return (event: E, ...otherArgs: H) => {\n const ret = theirHandler && theirHandler(event, ...otherArgs);\n if (!event.defaultPrevented) {\n return ourHandler(event, ...otherArgs);\n }\n return ret;\n };\n}\n"],"file":"wrapEvent.js"}