@basic-ui/core 0.0.53 → 0.0.54

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 (400) hide show
  1. package/README.md +3 -3
  2. package/build/cjs/index.js +88 -88
  3. package/build/cjs/index.js.map +1 -1
  4. package/build/esm/Accordion/Accordion.d.ts +9 -9
  5. package/build/esm/Accordion/Accordion.js.map +1 -1
  6. package/build/esm/Accordion/AccordionBody.d.ts +6 -6
  7. package/build/esm/Accordion/AccordionBody.js.map +1 -1
  8. package/build/esm/Accordion/AccordionHeader.d.ts +7 -7
  9. package/build/esm/Accordion/AccordionHeader.js.map +1 -1
  10. package/build/esm/Accordion/AccordionItem.d.ts +9 -9
  11. package/build/esm/Accordion/AccordionItem.js.map +1 -1
  12. package/build/esm/Accordion/context.d.ts +19 -19
  13. package/build/esm/Accordion/context.js.map +1 -1
  14. package/build/esm/Accordion/index.d.ts +4 -4
  15. package/build/esm/Accordion/index.js.map +1 -1
  16. package/build/esm/Accordion/scopeQuery.d.ts +2 -2
  17. package/build/esm/Accordion/scopeQuery.js.map +1 -1
  18. package/build/esm/CheckBox/CheckBox.d.ts +7 -7
  19. package/build/esm/CheckBox/CheckBox.js.map +1 -1
  20. package/build/esm/CheckBox/index.d.ts +1 -1
  21. package/build/esm/CheckBox/index.js.map +1 -1
  22. package/build/esm/ComboBox/Combobox.d.ts +18 -18
  23. package/build/esm/ComboBox/Combobox.js.map +1 -1
  24. package/build/esm/ComboBox/ComboboxButton.d.ts +9 -9
  25. package/build/esm/ComboBox/ComboboxButton.js.map +1 -1
  26. package/build/esm/ComboBox/ComboboxInput.d.ts +17 -17
  27. package/build/esm/ComboBox/ComboboxInput.js.map +1 -1
  28. package/build/esm/ComboBox/ComboboxLabel.d.ts +7 -7
  29. package/build/esm/ComboBox/ComboboxLabel.js.map +1 -1
  30. package/build/esm/ComboBox/ComboboxList.d.ts +8 -8
  31. package/build/esm/ComboBox/ComboboxList.js.map +1 -1
  32. package/build/esm/ComboBox/ComboboxOption.d.ts +11 -11
  33. package/build/esm/ComboBox/ComboboxOption.js.map +1 -1
  34. package/build/esm/ComboBox/ComboboxPopover.d.ts +9 -9
  35. package/build/esm/ComboBox/ComboboxPopover.js.map +1 -1
  36. package/build/esm/ComboBox/cities.d.ts +5 -5
  37. package/build/esm/ComboBox/cities.js.map +1 -1
  38. package/build/esm/ComboBox/context.d.ts +30 -30
  39. package/build/esm/ComboBox/context.js.map +1 -1
  40. package/build/esm/ComboBox/hooks.d.ts +37 -37
  41. package/build/esm/ComboBox/hooks.js.map +1 -1
  42. package/build/esm/ComboBox/index.d.ts +8 -8
  43. package/build/esm/ComboBox/index.js.map +1 -1
  44. package/build/esm/ComboBox/makeHash.d.ts +1 -1
  45. package/build/esm/ComboBox/makeHash.js.map +1 -1
  46. package/build/esm/ComboBox/scopeQuery.d.ts +1 -1
  47. package/build/esm/ComboBox/scopeQuery.js.map +1 -1
  48. package/build/esm/FocusLock/FocusLock.d.ts +9 -9
  49. package/build/esm/FocusLock/FocusLock.js.map +1 -1
  50. package/build/esm/FocusLock/index.d.ts +1 -1
  51. package/build/esm/FocusLock/index.js.map +1 -1
  52. package/build/esm/FocusLock/tabUtils.d.ts +3 -3
  53. package/build/esm/FocusLock/tabUtils.js.map +1 -1
  54. package/build/esm/FocusLock/useFocusLock.d.ts +7 -7
  55. package/build/esm/FocusLock/useFocusLock.js.map +1 -1
  56. package/build/esm/List/List.d.ts +7 -7
  57. package/build/esm/List/List.js.map +1 -1
  58. package/build/esm/List/ListItem.d.ts +7 -7
  59. package/build/esm/List/ListItem.js.map +1 -1
  60. package/build/esm/List/context.d.ts +4 -4
  61. package/build/esm/List/context.js.map +1 -1
  62. package/build/esm/List/index.d.ts +2 -2
  63. package/build/esm/List/index.js.map +1 -1
  64. package/build/esm/Menu/ContextMenuTrigger.d.ts +11 -11
  65. package/build/esm/Menu/ContextMenuTrigger.js.map +1 -1
  66. package/build/esm/Menu/Menu.d.ts +10 -10
  67. package/build/esm/Menu/Menu.js.map +1 -1
  68. package/build/esm/Menu/MenuButton.d.ts +11 -11
  69. package/build/esm/Menu/MenuButton.js.map +1 -1
  70. package/build/esm/Menu/MenuItem.d.ts +8 -8
  71. package/build/esm/Menu/MenuItem.js.map +1 -1
  72. package/build/esm/Menu/MenuList.d.ts +7 -7
  73. package/build/esm/Menu/MenuList.js.map +1 -1
  74. package/build/esm/Menu/MenuPopover.d.ts +8 -8
  75. package/build/esm/Menu/MenuPopover.js.map +1 -1
  76. package/build/esm/Menu/context.d.ts +25 -25
  77. package/build/esm/Menu/context.js.map +1 -1
  78. package/build/esm/Menu/fixtures/countryList.d.ts +1 -1
  79. package/build/esm/Menu/fixtures/countryList.js.map +1 -1
  80. package/build/esm/Menu/index.d.ts +6 -6
  81. package/build/esm/Menu/index.js.map +1 -1
  82. package/build/esm/Menu/scope.d.ts +1 -1
  83. package/build/esm/Menu/scope.js.map +1 -1
  84. package/build/esm/Modal/Modal.d.ts +9 -9
  85. package/build/esm/Modal/Modal.js.map +1 -1
  86. package/build/esm/Modal/ModalBackdrop.d.ts +10 -10
  87. package/build/esm/Modal/ModalBackdrop.js.map +1 -1
  88. package/build/esm/Modal/index.d.ts +2 -2
  89. package/build/esm/Modal/index.js.map +1 -1
  90. package/build/esm/Popper/Popper.d.ts +35 -35
  91. package/build/esm/Popper/Popper.js +1 -2
  92. package/build/esm/Popper/Popper.js.map +1 -1
  93. package/build/esm/Popper/PopperArrow.d.ts +6 -6
  94. package/build/esm/Popper/PopperArrow.js.map +1 -1
  95. package/build/esm/Popper/context.d.ts +6 -6
  96. package/build/esm/Popper/context.js.map +1 -1
  97. package/build/esm/Popper/index.d.ts +3 -3
  98. package/build/esm/Popper/index.js.map +1 -1
  99. package/build/esm/Portal/Portal.d.ts +7 -7
  100. package/build/esm/Portal/PortalSelectorProvider.d.ts +8 -8
  101. package/build/esm/Portal/index.d.ts +2 -2
  102. package/build/esm/RadioButton/RadioButton.d.ts +10 -10
  103. package/build/esm/RadioButton/RadioButton.js.map +1 -1
  104. package/build/esm/RadioButton/RadioGroup.d.ts +12 -12
  105. package/build/esm/RadioButton/RadioGroup.js.map +1 -1
  106. package/build/esm/RadioButton/context.d.ts +9 -9
  107. package/build/esm/RadioButton/context.js.map +1 -1
  108. package/build/esm/RadioButton/index.d.ts +2 -2
  109. package/build/esm/RadioButton/index.js.map +1 -1
  110. package/build/esm/SkipNav/SkipNav.d.ts +7 -7
  111. package/build/esm/SkipNav/SkipNav.js.map +1 -1
  112. package/build/esm/SkipNav/index.d.ts +1 -1
  113. package/build/esm/SkipNav/index.js.map +1 -1
  114. package/build/esm/Slider/Slider.d.ts +197 -197
  115. package/build/esm/Slider/Slider.js +82 -82
  116. package/build/esm/Slider/Slider.js.map +1 -1
  117. package/build/esm/Slider/index.d.ts +1 -1
  118. package/build/esm/Slider/index.js.map +1 -1
  119. package/build/esm/Spinner/Spinner.d.ts +12 -12
  120. package/build/esm/Spinner/Spinner.js.map +1 -1
  121. package/build/esm/Spinner/SpinnerButton.d.ts +8 -8
  122. package/build/esm/Spinner/SpinnerButton.js.map +1 -1
  123. package/build/esm/Spinner/context.d.ts +12 -12
  124. package/build/esm/Spinner/context.js.map +1 -1
  125. package/build/esm/Spinner/index.d.ts +2 -2
  126. package/build/esm/Spinner/index.js.map +1 -1
  127. package/build/esm/Tabs/Tab.d.ts +7 -7
  128. package/build/esm/Tabs/Tab.js.map +1 -1
  129. package/build/esm/Tabs/TabList.d.ts +9 -9
  130. package/build/esm/Tabs/TabList.js.map +1 -1
  131. package/build/esm/Tabs/TabPanel.d.ts +8 -8
  132. package/build/esm/Tabs/TabPanel.js.map +1 -1
  133. package/build/esm/Tabs/TabPanels.d.ts +8 -8
  134. package/build/esm/Tabs/TabPanels.js.map +1 -1
  135. package/build/esm/Tabs/Tabs.d.ts +10 -10
  136. package/build/esm/Tabs/Tabs.js.map +1 -1
  137. package/build/esm/Tabs/context.d.ts +17 -17
  138. package/build/esm/Tabs/context.js.map +1 -1
  139. package/build/esm/Tabs/index.d.ts +5 -5
  140. package/build/esm/Tabs/index.js.map +1 -1
  141. package/build/esm/Tabs/scopeQuery.d.ts +1 -1
  142. package/build/esm/Tabs/scopeQuery.js.map +1 -1
  143. package/build/esm/Tooltip/Tooltip.d.ts +10 -10
  144. package/build/esm/Tooltip/Tooltip.js.map +1 -1
  145. package/build/esm/Tooltip/index.d.ts +1 -1
  146. package/build/esm/Tooltip/index.js.map +1 -1
  147. package/build/esm/Tooltip/stateMachine.d.ts +28 -28
  148. package/build/esm/Tooltip/stateMachine.js.map +1 -1
  149. package/build/esm/Tooltip/useTooltip.d.ts +10 -10
  150. package/build/esm/Tooltip/useTooltip.js.map +1 -1
  151. package/build/esm/hooks/index.d.ts +13 -13
  152. package/build/esm/hooks/index.js.map +1 -1
  153. package/build/esm/hooks/useAutoFocus.d.ts +2 -2
  154. package/build/esm/hooks/useAutoFocus.js.map +1 -1
  155. package/build/esm/hooks/useChildrenCounter.d.ts +7 -7
  156. package/build/esm/hooks/useChildrenCounter.js.map +1 -1
  157. package/build/esm/hooks/useControlledState.d.ts +3 -3
  158. package/build/esm/hooks/useFocusReturn.d.ts +2 -2
  159. package/build/esm/hooks/useFocusReturn.js.map +1 -1
  160. package/build/esm/hooks/useFocusState.d.ts +11 -11
  161. package/build/esm/hooks/useFocusState.js.map +1 -1
  162. package/build/esm/hooks/useGestureHandlers.d.ts +52 -52
  163. package/build/esm/hooks/useGestureHandlers.js.map +1 -1
  164. package/build/esm/hooks/useMeasure.d.ts +7 -7
  165. package/build/esm/hooks/useMeasure.js.map +1 -1
  166. package/build/esm/hooks/useOnClickOutside.d.ts +2 -2
  167. package/build/esm/hooks/useOnClickOutside.js.map +1 -1
  168. package/build/esm/hooks/useOnKeyDown.d.ts +1 -1
  169. package/build/esm/hooks/useOnKeyDown.js.map +1 -1
  170. package/build/esm/hooks/useReducerMachine.d.ts +24 -24
  171. package/build/esm/hooks/useReducerMachine.js.map +1 -1
  172. package/build/esm/hooks/useRemoveBodyScroll.d.ts +2 -2
  173. package/build/esm/hooks/useRemoveBodyScroll.js.map +1 -1
  174. package/build/esm/hooks/useScope.d.ts +11 -11
  175. package/build/esm/hooks/useScope.js.map +1 -1
  176. package/build/esm/hooks/useThrottle.d.ts +1 -1
  177. package/build/esm/hooks/useThrottle.js.map +1 -1
  178. package/build/esm/index.d.ts +15 -15
  179. package/build/esm/index.js.map +1 -1
  180. package/build/esm/utils/assign-ref.d.ts +3 -3
  181. package/build/esm/utils/assign-ref.js.map +1 -1
  182. package/build/esm/utils/can-use-dom.d.ts +1 -1
  183. package/build/esm/utils/can-use-dom.js.map +1 -1
  184. package/build/esm/utils/clamp.d.ts +1 -1
  185. package/build/esm/utils/clamp.js.map +1 -1
  186. package/build/esm/utils/context.d.ts +7 -7
  187. package/build/esm/utils/context.js.map +1 -1
  188. package/build/esm/utils/create-subscription.d.ts +4 -4
  189. package/build/esm/utils/create-subscription.js.map +1 -1
  190. package/build/esm/utils/get-circular-index.d.ts +1 -1
  191. package/build/esm/utils/get-circular-index.js.map +1 -1
  192. package/build/esm/utils/index.d.ts +10 -10
  193. package/build/esm/utils/index.js.map +1 -1
  194. package/build/esm/utils/is-right-click.d.ts +6 -6
  195. package/build/esm/utils/is-right-click.js +4 -4
  196. package/build/esm/utils/is-right-click.js.map +1 -1
  197. package/build/esm/utils/owner-document.d.ts +7 -7
  198. package/build/esm/utils/owner-document.js +5 -5
  199. package/build/esm/utils/owner-document.js.map +1 -1
  200. package/build/esm/utils/polymorphic.d.ts +39 -39
  201. package/build/esm/utils/polymorphic.js.map +1 -1
  202. package/build/esm/utils/rubber-band-clamp.d.ts +2 -2
  203. package/build/esm/utils/rubber-band-clamp.js.map +1 -1
  204. package/build/esm/utils/use-stable-callback.d.ts +16 -16
  205. package/build/esm/utils/use-stable-callback.js +16 -16
  206. package/build/esm/utils/use-stable-callback.js.map +1 -1
  207. package/build/esm/utils/wrap-event.d.ts +3 -3
  208. package/build/esm/utils/wrap-event.js.map +1 -1
  209. package/build/tsconfig-build.tsbuildinfo +1 -1
  210. package/package.json +2 -2
  211. package/src/Accordion/Accordion.story.tsx +74 -74
  212. package/src/Accordion/Accordion.tsx +59 -59
  213. package/src/Accordion/AccordionBody.tsx +52 -52
  214. package/src/Accordion/AccordionHeader.tsx +167 -167
  215. package/src/Accordion/AccordionItem.tsx +50 -50
  216. package/src/Accordion/context.ts +37 -37
  217. package/src/Accordion/index.ts +4 -4
  218. package/src/Accordion/scopeQuery.ts +7 -7
  219. package/src/Accordion/styles.css +21 -21
  220. package/src/CheckBox/CheckBox.tsx +41 -41
  221. package/src/CheckBox/index.ts +1 -1
  222. package/src/ComboBox/ComboBox.story.tsx +120 -120
  223. package/src/ComboBox/Combobox.tsx +148 -148
  224. package/src/ComboBox/ComboboxButton.tsx +61 -61
  225. package/src/ComboBox/ComboboxInput.tsx +187 -187
  226. package/src/ComboBox/ComboboxLabel.tsx +33 -33
  227. package/src/ComboBox/ComboboxList.tsx +47 -47
  228. package/src/ComboBox/ComboboxOption.tsx +111 -111
  229. package/src/ComboBox/ComboboxPopover.tsx +64 -64
  230. package/src/ComboBox/cities.ts +23194 -23194
  231. package/src/ComboBox/context.ts +35 -35
  232. package/src/ComboBox/hooks.tsx +451 -451
  233. package/src/ComboBox/index.ts +8 -8
  234. package/src/ComboBox/makeHash.ts +19 -19
  235. package/src/ComboBox/scopeQuery.ts +6 -6
  236. package/src/ComboBox/styles.css +32 -32
  237. package/src/FocusLock/FocusLock.tsx +66 -66
  238. package/src/FocusLock/index.ts +1 -1
  239. package/src/FocusLock/tabUtils.ts +40 -40
  240. package/src/FocusLock/useFocusLock.ts +56 -56
  241. package/src/List/List.story.tsx +18 -18
  242. package/src/List/List.tsx +17 -17
  243. package/src/List/ListItem.tsx +23 -23
  244. package/src/List/context.ts +19 -19
  245. package/src/List/index.ts +2 -2
  246. package/src/Menu/ContextMenu.story.tsx +73 -73
  247. package/src/Menu/ContextMenuTrigger.tsx +76 -76
  248. package/src/Menu/Menu.story.tsx +160 -160
  249. package/src/Menu/Menu.tsx +83 -83
  250. package/src/Menu/MenuButton.tsx +83 -83
  251. package/src/Menu/MenuComplex.story.tsx +58 -58
  252. package/src/Menu/MenuItem.tsx +88 -88
  253. package/src/Menu/MenuList.tsx +254 -254
  254. package/src/Menu/MenuPopover.tsx +35 -35
  255. package/src/Menu/context.ts +44 -44
  256. package/src/Menu/fixtures/countryList.ts +198 -198
  257. package/src/Menu/index.ts +6 -6
  258. package/src/Menu/scope.ts +7 -7
  259. package/src/Menu/styles.css +42 -42
  260. package/src/Modal/Modal.story.tsx +258 -258
  261. package/src/Modal/Modal.tsx +48 -48
  262. package/src/Modal/ModalBackdrop.tsx +78 -78
  263. package/src/Modal/NavDrawer.story.tsx +158 -158
  264. package/src/Modal/index.ts +2 -2
  265. package/src/Modal/styles.css +46 -46
  266. package/src/Popper/Popper.story.tsx +263 -263
  267. package/src/Popper/Popper.tsx +1 -1
  268. package/src/Popper/PopperArrow.tsx +35 -35
  269. package/src/Popper/context.ts +10 -10
  270. package/src/Popper/index.ts +3 -3
  271. package/src/Popper/styles.css +60 -60
  272. package/src/RadioButton/RadioButton.story.tsx +77 -77
  273. package/src/RadioButton/RadioButton.tsx +55 -55
  274. package/src/RadioButton/RadioGroup.tsx +60 -60
  275. package/src/RadioButton/context.ts +17 -17
  276. package/src/RadioButton/index.ts +2 -2
  277. package/src/SkipNav/SkipNav.tsx +16 -16
  278. package/src/SkipNav/index.tsx +1 -1
  279. package/src/Slider/Slider.story.tsx +45 -45
  280. package/src/Slider/Slider.tsx +1120 -1120
  281. package/src/Slider/index.ts +1 -1
  282. package/src/Slider/styles.css +131 -131
  283. package/src/Spinner/Spinner.story.tsx +31 -31
  284. package/src/Spinner/Spinner.tsx +117 -117
  285. package/src/Spinner/SpinnerButton.tsx +54 -54
  286. package/src/Spinner/context.ts +20 -20
  287. package/src/Spinner/index.ts +2 -2
  288. package/src/Spinner/styles.css +23 -23
  289. package/src/Tabs/Tab.story.tsx +80 -80
  290. package/src/Tabs/Tab.tsx +136 -136
  291. package/src/Tabs/TabList.tsx +71 -71
  292. package/src/Tabs/TabPanel.tsx +53 -53
  293. package/src/Tabs/TabPanels.tsx +30 -30
  294. package/src/Tabs/Tabs.tsx +46 -46
  295. package/src/Tabs/context.ts +30 -30
  296. package/src/Tabs/index.tsx +5 -5
  297. package/src/Tabs/scopeQuery.ts +6 -6
  298. package/src/Tooltip/Tooltip.story.tsx +61 -61
  299. package/src/Tooltip/Tooltip.tsx +50 -50
  300. package/src/Tooltip/index.ts +1 -1
  301. package/src/Tooltip/stateMachine.ts +192 -192
  302. package/src/Tooltip/styles.css +17 -17
  303. package/src/Tooltip/useTooltip.ts +136 -136
  304. package/src/hooks/index.ts +13 -13
  305. package/src/hooks/useAutoFocus.ts +22 -22
  306. package/src/hooks/useChildrenCounter.ts +51 -51
  307. package/src/hooks/useFocusReturn.ts +43 -43
  308. package/src/hooks/useFocusState.ts +30 -30
  309. package/src/hooks/useGestureHandlers.ts +286 -286
  310. package/src/hooks/useMeasure.ts +33 -33
  311. package/src/hooks/useOnClickOutside.ts +32 -32
  312. package/src/hooks/useOnKeyDown.ts +19 -19
  313. package/src/hooks/useReducerMachine.ts +60 -60
  314. package/src/hooks/useRemoveBodyScroll.ts +39 -39
  315. package/src/hooks/useScope.ts +52 -52
  316. package/src/hooks/useThrottle.ts +19 -19
  317. package/src/index.ts +20 -20
  318. package/src/utils/assign-ref.ts +27 -27
  319. package/src/utils/can-use-dom.ts +7 -7
  320. package/src/utils/clamp.ts +3 -3
  321. package/src/utils/context.tsx +48 -48
  322. package/src/utils/create-subscription.ts +16 -16
  323. package/src/utils/get-circular-index.ts +7 -7
  324. package/src/utils/index.ts +10 -10
  325. package/src/utils/is-right-click.ts +14 -14
  326. package/src/utils/owner-document.ts +13 -13
  327. package/src/utils/polymorphic.ts +78 -78
  328. package/src/utils/rubber-band-clamp.ts +25 -25
  329. package/src/utils/use-stable-callback.ts +58 -58
  330. package/src/utils/wrap-event.ts +22 -22
  331. package/build/esm/Carousel/Carousel.d.ts +0 -9
  332. package/build/esm/Carousel/Carousel.js +0 -38
  333. package/build/esm/Carousel/Carousel.js.map +0 -1
  334. package/build/esm/Carousel/Fader.d.ts +0 -14
  335. package/build/esm/Carousel/Fader.js +0 -76
  336. package/build/esm/Carousel/Fader.js.map +0 -1
  337. package/build/esm/Carousel/FaderItem.d.ts +0 -5
  338. package/build/esm/Carousel/FaderItem.js +0 -16
  339. package/build/esm/Carousel/FaderItem.js.map +0 -1
  340. package/build/esm/Carousel/Preloader.d.ts +0 -7
  341. package/build/esm/Carousel/Preloader.js +0 -70
  342. package/build/esm/Carousel/Preloader.js.map +0 -1
  343. package/build/esm/Carousel/Slider.d.ts +0 -14
  344. package/build/esm/Carousel/Slider.js +0 -212
  345. package/build/esm/Carousel/Slider.js.map +0 -1
  346. package/build/esm/Carousel/SliderItem.d.ts +0 -12
  347. package/build/esm/Carousel/SliderItem.js +0 -41
  348. package/build/esm/Carousel/SliderItem.js.map +0 -1
  349. package/build/esm/Carousel/context.d.ts +0 -10
  350. package/build/esm/Carousel/context.js +0 -8
  351. package/build/esm/Carousel/context.js.map +0 -1
  352. package/build/esm/Carousel/getSliderParams.d.ts +0 -9
  353. package/build/esm/Carousel/getSliderParams.js +0 -85
  354. package/build/esm/Carousel/getSliderParams.js.map +0 -1
  355. package/build/esm/Carousel/index.d.ts +0 -7
  356. package/build/esm/Carousel/index.js +0 -8
  357. package/build/esm/Carousel/index.js.map +0 -1
  358. package/build/esm/Carousel/useCarouselGestures.d.ts +0 -30
  359. package/build/esm/Carousel/useCarouselGestures.js +0 -33
  360. package/build/esm/Carousel/useCarouselGestures.js.map +0 -1
  361. package/build/esm/DatePicker/DatePicker.d.ts +0 -24
  362. package/build/esm/DatePicker/DatePicker.js +0 -101
  363. package/build/esm/DatePicker/DatePicker.js.map +0 -1
  364. package/build/esm/DatePicker/DatePickerSelect.d.ts +0 -8
  365. package/build/esm/DatePicker/DatePickerSelect.js +0 -201
  366. package/build/esm/DatePicker/DatePickerSelect.js.map +0 -1
  367. package/build/esm/DatePicker/RangeDatePicker.d.ts +0 -28
  368. package/build/esm/DatePicker/RangeDatePicker.js +0 -94
  369. package/build/esm/DatePicker/RangeDatePicker.js.map +0 -1
  370. package/build/esm/DatePicker/adjustDates.d.ts +0 -4
  371. package/build/esm/DatePicker/adjustDates.js +0 -18
  372. package/build/esm/DatePicker/adjustDates.js.map +0 -1
  373. package/build/esm/DatePicker/contexts.d.ts +0 -31
  374. package/build/esm/DatePicker/contexts.js +0 -15
  375. package/build/esm/DatePicker/contexts.js.map +0 -1
  376. package/build/esm/DatePicker/dateTypes.d.ts +0 -2
  377. package/build/esm/DatePicker/dateTypes.js +0 -2
  378. package/build/esm/DatePicker/dateTypes.js.map +0 -1
  379. package/build/esm/DatePicker/hooks.d.ts +0 -36
  380. package/build/esm/DatePicker/hooks.js +0 -98
  381. package/build/esm/DatePicker/hooks.js.map +0 -1
  382. package/build/esm/DatePicker/index.d.ts +0 -5
  383. package/build/esm/DatePicker/index.js +0 -6
  384. package/build/esm/DatePicker/index.js.map +0 -1
  385. package/build/esm/hooks/useId.d.ts +0 -1
  386. package/build/esm/hooks/useId.js +0 -25
  387. package/build/esm/hooks/useId.js.map +0 -1
  388. package/build/esm/utils/assignRef.d.ts +0 -3
  389. package/build/esm/utils/assignRef.js +0 -25
  390. package/build/esm/utils/assignRef.js.map +0 -1
  391. package/build/esm/utils/getCircularIndex.d.ts +0 -1
  392. package/build/esm/utils/getCircularIndex.js +0 -8
  393. package/build/esm/utils/getCircularIndex.js.map +0 -1
  394. package/build/esm/utils/rubberBandClamp.d.ts +0 -2
  395. package/build/esm/utils/rubberBandClamp.js +0 -20
  396. package/build/esm/utils/rubberBandClamp.js.map +0 -1
  397. package/build/esm/utils/wrapEvent.d.ts +0 -3
  398. package/build/esm/utils/wrapEvent.js +0 -16
  399. package/build/esm/utils/wrapEvent.js.map +0 -1
  400. package/build/tsconfig.tsbuildinfo +0 -7270
@@ -1,30 +0,0 @@
1
- /// <reference types="react" />
2
- import { GestureHandlersState } from '../hooks';
3
- interface UseCarouselOptions {
4
- onSwipeRight?: (s: GestureHandlersState) => void;
5
- onSwipeLeft?: (s: GestureHandlersState) => void;
6
- onDrag?: (s: GestureHandlersState) => void;
7
- slidesToShow?: number;
8
- isRTL?: boolean;
9
- containerRef: React.MutableRefObject<HTMLElement | null>;
10
- }
11
- export declare const useCarouselGestures: (props: UseCarouselOptions) => {
12
- state: {
13
- target: EventTarget | null;
14
- x: number;
15
- xDelta: number;
16
- xDeltaPercent: number;
17
- xInitial: number;
18
- xPrev: number;
19
- xVelocity: number;
20
- y: number;
21
- yDelta: number;
22
- yDeltaPercent: number;
23
- yInitial: number;
24
- yPrev: number;
25
- yVelocity: number;
26
- down: boolean;
27
- };
28
- handlers: import("../hooks").GestureHandlersReturn;
29
- };
30
- export {};
@@ -1,33 +0,0 @@
1
- import { useGestureHandlers } from '../hooks';
2
- export var useCarouselGestures = function useCarouselGestures(props) {
3
- var onSwipeLeft = props.onSwipeLeft,
4
- onSwipeRight = props.onSwipeRight,
5
- onDrag = props.onDrag,
6
- _props$slidesToShow = props.slidesToShow,
7
- slidesToShow = _props$slidesToShow === void 0 ? 1 : _props$slidesToShow,
8
- isRTL = props.isRTL,
9
- containerRef = props.containerRef;
10
- return useGestureHandlers(containerRef, function (state) {
11
- var xDelta = state.xDeltaPercent,
12
- xVelocity = state.xVelocity,
13
- down = state.down;
14
- var swipeLeft = onSwipeLeft;
15
- var swipeRight = onSwipeRight;
16
-
17
- if (isRTL) {
18
- swipeLeft = onSwipeRight;
19
- swipeRight = onSwipeLeft;
20
- }
21
-
22
- if (swipeLeft && swipeRight && !down && (Math.abs(xDelta) >= 25 / slidesToShow || Math.abs(xVelocity) >= 2.5)) {
23
- if (xDelta < 0) {
24
- swipeRight && swipeRight(state);
25
- } else {
26
- swipeLeft && swipeLeft(state);
27
- }
28
- }
29
-
30
- onDrag && onDrag(state);
31
- });
32
- };
33
- //# sourceMappingURL=useCarouselGestures.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Carousel/useCarouselGestures.ts"],"names":["useGestureHandlers","useCarouselGestures","props","onSwipeLeft","onSwipeRight","onDrag","slidesToShow","isRTL","containerRef","state","xDelta","xDeltaPercent","xVelocity","down","swipeLeft","swipeRight","Math","abs"],"mappings":"AAAA,SAASA,kBAAT,QAAyD,UAAzD;AAWA,OAAO,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,KAAD,EAA+B;AAAA,MAE9DC,WAF8D,GAQ5DD,KAR4D,CAE9DC,WAF8D;AAAA,MAG9DC,YAH8D,GAQ5DF,KAR4D,CAG9DE,YAH8D;AAAA,MAI9DC,MAJ8D,GAQ5DH,KAR4D,CAI9DG,MAJ8D;AAAA,4BAQ5DH,KAR4D,CAK9DI,YAL8D;AAAA,MAK9DA,YAL8D,oCAK/C,CAL+C;AAAA,MAM9DC,KAN8D,GAQ5DL,KAR4D,CAM9DK,KAN8D;AAAA,MAO9DC,YAP8D,GAQ5DN,KAR4D,CAO9DM,YAP8D;AAUhE,SAAOR,kBAAkB,CAACQ,YAAD,EAAe,UAACC,KAAD,EAAW;AAAA,QAC1BC,MAD0B,GACED,KADF,CACzCE,aADyC;AAAA,QAClBC,SADkB,GACEH,KADF,CAClBG,SADkB;AAAA,QACPC,IADO,GACEJ,KADF,CACPI,IADO;AAGjD,QAAIC,SAAS,GAAGX,WAAhB;AACA,QAAIY,UAAU,GAAGX,YAAjB;;AACA,QAAIG,KAAJ,EAAW;AACTO,MAAAA,SAAS,GAAGV,YAAZ;AACAW,MAAAA,UAAU,GAAGZ,WAAb;AACD;;AAED,QACEW,SAAS,IACTC,UADA,IAEA,CAACF,IAFD,KAGCG,IAAI,CAACC,GAAL,CAASP,MAAT,KAAoB,KAAKJ,YAAzB,IAAyCU,IAAI,CAACC,GAAL,CAASL,SAAT,KAAuB,GAHjE,CADF,EAKE;AACA,UAAIF,MAAM,GAAG,CAAb,EAAgB;AACdK,QAAAA,UAAU,IAAIA,UAAU,CAACN,KAAD,CAAxB;AACD,OAFD,MAEO;AACLK,QAAAA,SAAS,IAAIA,SAAS,CAACL,KAAD,CAAtB;AACD;AACF;;AAEDJ,IAAAA,MAAM,IAAIA,MAAM,CAACI,KAAD,CAAhB;AACD,GAxBwB,CAAzB;AAyBD,CAnCM","sourcesContent":["import { useGestureHandlers, GestureHandlersState } from '../hooks';\n\ninterface UseCarouselOptions {\n onSwipeRight?: (s: GestureHandlersState) => void;\n onSwipeLeft?: (s: GestureHandlersState) => void;\n onDrag?: (s: GestureHandlersState) => void;\n slidesToShow?: number;\n isRTL?: boolean;\n containerRef: React.MutableRefObject<HTMLElement | null>;\n}\n\nexport const useCarouselGestures = (props: UseCarouselOptions) => {\n const {\n onSwipeLeft,\n onSwipeRight,\n onDrag,\n slidesToShow = 1,\n isRTL,\n containerRef,\n } = props;\n\n return useGestureHandlers(containerRef, (state) => {\n const { xDeltaPercent: xDelta, xVelocity, down } = state;\n\n let swipeLeft = onSwipeLeft;\n let swipeRight = onSwipeRight;\n if (isRTL) {\n swipeLeft = onSwipeRight;\n swipeRight = onSwipeLeft;\n }\n\n if (\n swipeLeft &&\n swipeRight &&\n !down &&\n (Math.abs(xDelta) >= 25 / slidesToShow || Math.abs(xVelocity) >= 2.5)\n ) {\n if (xDelta < 0) {\n swipeRight && swipeRight(state);\n } else {\n swipeLeft && swipeLeft(state);\n }\n }\n\n onDrag && onDrag(state);\n });\n};\n"],"file":"useCarouselGestures.js"}
@@ -1,24 +0,0 @@
1
- import React from 'react';
2
- import { DayNames, MonthNames } from './dateTypes';
3
- export declare type DatePickerProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'value' | 'defaultValue' | 'onChange'> & {
4
- as?: React.ElementType<any>;
5
- minDate?: Date;
6
- maxDate?: Date;
7
- dayNames?: DayNames;
8
- monthNames?: MonthNames;
9
- onChange?: (from: Date | null) => void;
10
- value?: Date | null;
11
- defaultValue?: Date | null;
12
- type?: 'from' | 'to';
13
- };
14
- export declare const DatePicker: React.ForwardRefExoticComponent<Pick<React.HTMLAttributes<HTMLDivElement>, "dir" | "slot" | "style" | "title" | "children" | "onFocus" | "onBlur" | "id" | "hidden" | "defaultChecked" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "draggable" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocusCapture" | "onBlurCapture" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture"> & {
15
- as?: "symbol" | "object" | "a" | "abbr" | "address" | "area" | "article" | "aside" | "audio" | "b" | "base" | "bdi" | "bdo" | "blockquote" | "body" | "br" | "button" | "canvas" | "caption" | "cite" | "code" | "col" | "colgroup" | "data" | "datalist" | "dd" | "del" | "details" | "dfn" | "dialog" | "div" | "dl" | "dt" | "em" | "embed" | "fieldset" | "figcaption" | "figure" | "footer" | "form" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "head" | "header" | "hgroup" | "hr" | "html" | "i" | "iframe" | "img" | "input" | "ins" | "kbd" | "label" | "legend" | "li" | "link" | "main" | "map" | "mark" | "menu" | "meta" | "meter" | "nav" | "noscript" | "ol" | "optgroup" | "option" | "output" | "p" | "param" | "picture" | "pre" | "progress" | "q" | "rp" | "rt" | "ruby" | "s" | "samp" | "script" | "section" | "select" | "slot" | "small" | "source" | "span" | "strong" | "style" | "sub" | "summary" | "sup" | "table" | "tbody" | "td" | "template" | "textarea" | "tfoot" | "th" | "thead" | "time" | "title" | "tr" | "track" | "u" | "ul" | "var" | "video" | "wbr" | "circle" | "clipPath" | "defs" | "desc" | "ellipse" | "feBlend" | "feColorMatrix" | "feComponentTransfer" | "feComposite" | "feConvolveMatrix" | "feDiffuseLighting" | "feDisplacementMap" | "feDistantLight" | "feFlood" | "feFuncA" | "feFuncB" | "feFuncG" | "feFuncR" | "feGaussianBlur" | "feImage" | "feMerge" | "feMergeNode" | "feMorphology" | "feOffset" | "fePointLight" | "feSpecularLighting" | "feSpotLight" | "feTile" | "feTurbulence" | "filter" | "foreignObject" | "g" | "image" | "line" | "linearGradient" | "marker" | "mask" | "metadata" | "path" | "pattern" | "polygon" | "polyline" | "radialGradient" | "rect" | "stop" | "svg" | "switch" | "text" | "textPath" | "tspan" | "use" | "view" | "big" | "keygen" | "menuitem" | "noindex" | "webview" | "animate" | "animateMotion" | "animateTransform" | "feDropShadow" | "mpath" | React.ComponentClass<any, any> | React.FunctionComponent<any> | undefined;
16
- minDate?: Date | undefined;
17
- maxDate?: Date | undefined;
18
- dayNames?: DayNames | undefined;
19
- monthNames?: MonthNames | undefined;
20
- onChange?: ((from: Date | null) => void) | undefined;
21
- value?: Date | null | undefined;
22
- defaultValue?: Date | null | undefined;
23
- type?: "from" | "to" | undefined;
24
- } & React.RefAttributes<HTMLDivElement>>;
@@ -1,101 +0,0 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- import _extends from "@babel/runtime/helpers/esm/extends";
4
- import React, { forwardRef, useMemo, useRef, useReducer } from 'react';
5
- import { assignMultipleRefs } from '../utils/assignRef';
6
- import { reducer } from './hooks';
7
- import { useRangeDatePickerContext, DatePickerProvider } from './contexts';
8
-
9
- /**
10
- * Merges props from RangeDatePicker and DatePicker
11
- */
12
- function usePropsMerge(props) {
13
- var context = useRangeDatePickerContext();
14
-
15
- if (context && !props.type) {
16
- throw new Error("<DatePicker /> as a children of <RangeDatePicker /> needs a 'type'");
17
- }
18
-
19
- if (!context) {
20
- return props;
21
- } else {
22
- var mergedProps = _extends(_extends({}, props), {}, {
23
- minDate: context.minDate,
24
- maxDate: context.maxDate,
25
- dayNames: context.dayNames,
26
- monthNames: context.monthNames
27
- }, props.type === 'from' ? {
28
- value: context.from,
29
- onChange: context.onChangeFrom
30
- } : {
31
- // props.type === 'to'
32
- value: context.to,
33
- onChange: context.onChangeTo,
34
- minDate: context.from !== null && context.from !== undefined ? new Date(context.from.valueOf() + 86400000) : context.minDate
35
- });
36
-
37
- return mergedProps;
38
- }
39
- }
40
-
41
- export var DatePicker = forwardRef(function DatePicker(props, ref) {
42
- var _usePropsMerge = usePropsMerge(props),
43
- _usePropsMerge$as = _usePropsMerge.as,
44
- Comp = _usePropsMerge$as === void 0 ? 'div' : _usePropsMerge$as,
45
- _usePropsMerge$minDat = _usePropsMerge.minDate,
46
- propMinDate = _usePropsMerge$minDat === void 0 ? new Date(0) : _usePropsMerge$minDat,
47
- _usePropsMerge$maxDat = _usePropsMerge.maxDate,
48
- propMaxDate = _usePropsMerge$maxDat === void 0 ? new Date() : _usePropsMerge$maxDat,
49
- dayNames = _usePropsMerge.dayNames,
50
- monthNames = _usePropsMerge.monthNames,
51
- onChange = _usePropsMerge.onChange,
52
- controlledValue = _usePropsMerge.value,
53
- defaultValue = _usePropsMerge.defaultValue,
54
- type = _usePropsMerge.type,
55
- rest = _objectWithoutProperties(_usePropsMerge, ["as", "minDate", "maxDate", "dayNames", "monthNames", "onChange", "value", "defaultValue", "type"]);
56
-
57
- var datePickerRef = useRef(null);
58
- var minDate = propMinDate,
59
- maxDate = propMaxDate;
60
- var onChangeRef = useRef(onChange);
61
- onChangeRef.current = onChange;
62
- var controlledValueRef = useRef(controlledValue);
63
- controlledValueRef.current = controlledValue;
64
- var initialData = {
65
- isFocused: false,
66
- navigationDay: -1,
67
- navigationMonth: -1,
68
- navigationYear: -1,
69
- selectedDate: defaultValue !== undefined ? defaultValue : null
70
- };
71
-
72
- var _useReducer = useReducer(reducer, initialData),
73
- _useReducer2 = _slicedToArray(_useReducer, 2),
74
- state = _useReducer2[0],
75
- dispatch = _useReducer2[1];
76
-
77
- if (!dayNames || !monthNames) {
78
- throw new Error('Props dayNames and monthNames not specified in <DatePicker />');
79
- }
80
-
81
- var contextValue = useMemo(function () {
82
- return {
83
- minDate: minDate,
84
- maxDate: maxDate,
85
- dayNames: dayNames,
86
- monthNames: monthNames,
87
- datePickerRef: datePickerRef,
88
- controlledValueRef: controlledValueRef,
89
- state: state,
90
- dispatch: dispatch,
91
- onChangeRef: onChangeRef
92
- };
93
- }, [maxDate, minDate, dayNames, monthNames, state]);
94
- return /*#__PURE__*/React.createElement(DatePickerProvider, {
95
- value: contextValue
96
- }, /*#__PURE__*/React.createElement(Comp, _extends({
97
- ref: assignMultipleRefs(ref, datePickerRef),
98
- "data-has-focus": state.isFocused ? '' : undefined
99
- }, rest)));
100
- });
101
- //# sourceMappingURL=DatePicker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/DatePicker/DatePicker.tsx"],"names":["React","forwardRef","useMemo","useRef","useReducer","assignMultipleRefs","reducer","useRangeDatePickerContext","DatePickerProvider","usePropsMerge","props","context","type","Error","mergedProps","minDate","maxDate","dayNames","monthNames","value","from","onChange","onChangeFrom","to","onChangeTo","undefined","Date","valueOf","DatePicker","ref","as","Comp","propMinDate","propMaxDate","controlledValue","defaultValue","rest","datePickerRef","onChangeRef","current","controlledValueRef","initialData","isFocused","navigationDay","navigationMonth","navigationYear","selectedDate","state","dispatch","contextValue"],"mappings":"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","sourcesContent":["import React, { forwardRef, useMemo, useRef, useReducer } from 'react';\nimport { assignMultipleRefs } from '../utils/assignRef';\nimport { reducer, ReducerState } from './hooks';\nimport { DayNames, MonthNames } from './dateTypes';\nimport {\n useRangeDatePickerContext,\n DatePickerContextProps,\n DatePickerProvider,\n} from './contexts';\n\nexport type DatePickerProps = Omit<\n React.HTMLAttributes<HTMLDivElement>,\n 'value' | 'defaultValue' | 'onChange'\n> & {\n as?: React.ElementType<any>;\n minDate?: Date;\n maxDate?: Date;\n dayNames?: DayNames;\n monthNames?: MonthNames;\n onChange?: (from: Date | null) => void;\n value?: Date | null;\n defaultValue?: Date | null;\n type?: 'from' | 'to';\n};\n\n/**\n * Merges props from RangeDatePicker and DatePicker\n */\nfunction usePropsMerge(props: DatePickerProps) {\n const context = useRangeDatePickerContext();\n if (context && !props.type) {\n throw new Error(\n \"<DatePicker /> as a children of <RangeDatePicker /> needs a 'type'\"\n );\n }\n\n if (!context) {\n return props;\n } else {\n const mergedProps = {\n ...props,\n minDate: context.minDate,\n maxDate: context.maxDate,\n dayNames: context.dayNames,\n monthNames: context.monthNames,\n ...(props.type === 'from'\n ? {\n value: context.from,\n onChange: context.onChangeFrom,\n }\n : {\n // props.type === 'to'\n value: context.to,\n onChange: context.onChangeTo,\n minDate:\n context.from !== null && context.from !== undefined\n ? new Date(context.from.valueOf() + 86400000)\n : context.minDate,\n }),\n };\n\n return mergedProps;\n }\n}\n\nexport const DatePicker = forwardRef<HTMLDivElement, DatePickerProps>(\n function DatePicker(props, ref) {\n const {\n as: Comp = 'div',\n minDate: propMinDate = new Date(0),\n maxDate: propMaxDate = new Date(),\n dayNames,\n monthNames,\n onChange,\n value: controlledValue,\n defaultValue,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n type, // just to avoid passing it to DOM\n ...rest\n } = usePropsMerge(props);\n const datePickerRef = useRef<HTMLDivElement | null>(null);\n const minDate = propMinDate,\n maxDate = propMaxDate;\n\n const onChangeRef = useRef(onChange);\n onChangeRef.current = onChange;\n\n const controlledValueRef = useRef(controlledValue);\n controlledValueRef.current = controlledValue;\n\n const initialData: ReducerState = {\n isFocused: false,\n navigationDay: -1,\n navigationMonth: -1,\n navigationYear: -1,\n selectedDate: defaultValue !== undefined ? defaultValue : null,\n };\n const [state, dispatch] = useReducer(reducer, initialData);\n\n if (!dayNames || !monthNames) {\n throw new Error(\n 'Props dayNames and monthNames not specified in <DatePicker />'\n );\n }\n\n const contextValue: DatePickerContextProps = useMemo(\n () => ({\n minDate,\n maxDate,\n dayNames,\n monthNames,\n datePickerRef,\n controlledValueRef,\n state,\n dispatch,\n onChangeRef,\n }),\n [maxDate, minDate, dayNames, monthNames, state]\n );\n\n return (\n <DatePickerProvider value={contextValue}>\n <Comp\n ref={assignMultipleRefs(ref, datePickerRef)}\n data-has-focus={state.isFocused ? '' : undefined}\n {...rest}\n />\n </DatePickerProvider>\n );\n }\n);\n"],"file":"DatePicker.js"}
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- export interface DatePickerSelectProps extends React.SelectHTMLAttributes<HTMLSelectElement> {
3
- groupType?: 'from' | 'to';
4
- type: 'month_year' | 'day';
5
- emptyOption?: string;
6
- as?: React.ElementType<any>;
7
- }
8
- export declare const DatePickerSelect: React.ForwardRefExoticComponent<DatePickerSelectProps & React.RefAttributes<unknown>>;
@@ -1,201 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- import React, { forwardRef, memo } from 'react';
5
- import { wrapEvent } from '../utils/wrapEvent';
6
- import { useInnerFocus, SET_DATE } from './hooks';
7
- import { useDatePickerContext } from './contexts';
8
- import { NAVIGATE } from '../ComboBox/hooks';
9
- import { differenceInCalendarMonths, addMonths, getDaysInMonth, setDate } from 'date-fns';
10
- var MonthYearOptions = memo(function (_ref) {
11
- var minDate = _ref.minDate,
12
- maxDate = _ref.maxDate,
13
- monthNames = _ref.monthNames,
14
- emptyOption = _ref.emptyOption;
15
- var ret = [/*#__PURE__*/React.createElement("option", {
16
- key: 'empty',
17
- value: "",
18
- disabled: true
19
- }, emptyOption)];
20
- var diff = differenceInCalendarMonths(maxDate, minDate);
21
-
22
- for (var i = 0; i <= diff; i++) {
23
- var date = addMonths(minDate, i);
24
- var year = date.getFullYear();
25
- var month = date.getMonth();
26
- ret.push( /*#__PURE__*/React.createElement("option", {
27
- key: "".concat(year, "_").concat(month),
28
- value: "".concat(year, "-").concat(month)
29
- }, monthNames[month], " ", year));
30
- }
31
-
32
- return /*#__PURE__*/React.createElement(React.Fragment, null, ret);
33
- });
34
- var DayOptions = memo(function (_ref2) {
35
- var _ref2$date = _ref2.date,
36
- date = _ref2$date === void 0 ? new Date(0) : _ref2$date,
37
- dayNames = _ref2.dayNames,
38
- minDate = _ref2.minDate,
39
- emptyOption = _ref2.emptyOption;
40
-
41
- if (!date) {
42
- return null;
43
- }
44
-
45
- var ret = [/*#__PURE__*/React.createElement("option", {
46
- key: 'empty',
47
- value: "",
48
- disabled: true
49
- }, emptyOption)];
50
-
51
- for (var day = 1; day <= getDaysInMonth(date); day++) {
52
- var newDate = setDate(date, day);
53
- ret.push( /*#__PURE__*/React.createElement("option", {
54
- key: "day_".concat(day),
55
- value: "".concat(day),
56
- disabled: newDate.valueOf() < minDate.valueOf()
57
- }, (newDate.getDay(), dayNames[newDate.getDay()]), " ", day));
58
- }
59
-
60
- return /*#__PURE__*/React.createElement(React.Fragment, null, ret);
61
- });
62
- export var DatePickerSelect = forwardRef(function DatePicker(_ref3, ref) {
63
- var _ref3$as = _ref3.as,
64
- Comp = _ref3$as === void 0 ? 'select' : _ref3$as,
65
- type = _ref3.type,
66
- onFocus = _ref3.onFocus,
67
- onBlur = _ref3.onBlur,
68
- onChange = _ref3.onChange,
69
- children = _ref3.children,
70
- _ref3$emptyOption = _ref3.emptyOption,
71
- emptyOption = _ref3$emptyOption === void 0 ? '' : _ref3$emptyOption,
72
- rest = _objectWithoutProperties(_ref3, ["as", "type", "onFocus", "onBlur", "onChange", "children", "emptyOption"]);
73
-
74
- var _useDatePickerContext = useDatePickerContext(),
75
- minDate = _useDatePickerContext.minDate,
76
- maxDate = _useDatePickerContext.maxDate,
77
- monthNames = _useDatePickerContext.monthNames,
78
- onChangeRef = _useDatePickerContext.onChangeRef,
79
- dayNames = _useDatePickerContext.dayNames,
80
- dispatch = _useDatePickerContext.dispatch,
81
- controlledValueRef = _useDatePickerContext.controlledValueRef,
82
- data = _useDatePickerContext.state;
83
-
84
- var _useInnerFocus = useInnerFocus(),
85
- handleFocus = _useInnerFocus.handleFocus,
86
- handleBlur = _useInnerFocus.handleBlur;
87
-
88
- var stateSelectedDate = data.selectedDate;
89
- var year = data.navigationYear,
90
- month = data.navigationMonth,
91
- day = data.navigationDay;
92
- var selectedDate = controlledValueRef.current !== undefined ? controlledValueRef.current : stateSelectedDate;
93
-
94
- var handleChange = function handleChange(e) {
95
- var nextState = {
96
- year: year,
97
- month: month,
98
- day: day
99
- };
100
-
101
- switch (type) {
102
- case 'month_year':
103
- {
104
- nextState.year = -1;
105
- nextState.month = -1;
106
- nextState.day = -1;
107
-
108
- if (e.target.value) {
109
- var _e$target$value$split = e.target.value.split('-'),
110
- _e$target$value$split2 = _slicedToArray(_e$target$value$split, 2),
111
- yearStr = _e$target$value$split2[0],
112
- monthStr = _e$target$value$split2[1];
113
-
114
- nextState.year = parseInt(yearStr, 10);
115
- nextState.month = parseInt(monthStr, 10);
116
- nextState.day = -1;
117
- }
118
-
119
- dispatch(_extends({
120
- type: NAVIGATE
121
- }, nextState));
122
- break;
123
- }
124
-
125
- case 'day':
126
- {
127
- nextState.day = -1;
128
-
129
- if (e.target.value) {
130
- nextState.day = parseInt(e.target.value, 10);
131
- }
132
-
133
- var nextDate = undefined;
134
-
135
- if (nextState.day !== -1) {
136
- if (nextState.year >= 0 && nextState.month >= 0) {
137
- nextDate = new Date(Date.UTC(nextState.year, nextState.month, nextState.day));
138
- } else if (selectedDate !== null) {
139
- nextDate = new Date(Date.UTC(selectedDate.getFullYear(), selectedDate.getMonth(), nextState.day));
140
- }
141
- }
142
-
143
- if (nextDate !== undefined) {
144
- onChangeRef.current && onChangeRef.current(nextDate);
145
- dispatch({
146
- type: SET_DATE,
147
- selectedDate: nextDate
148
- });
149
- } else {
150
- dispatch(_extends({
151
- type: NAVIGATE
152
- }, nextState));
153
- }
154
-
155
- break;
156
- }
157
- }
158
- };
159
-
160
- if (year < 0 && month < 0 && day <= 0 && selectedDate !== null) {
161
- year = selectedDate.getFullYear();
162
- month = selectedDate.getMonth();
163
- day = selectedDate.getDate();
164
- }
165
-
166
- var value = '';
167
- var disabled = false;
168
-
169
- if (type === 'month_year') {
170
- if (month >= 0 && year >= 0) {
171
- value = "".concat(year, "-").concat(month);
172
- }
173
- } else if (type === 'day') {
174
- disabled = month < 0 || year < 0;
175
-
176
- if (day > 0) {
177
- value = "".concat(day);
178
- }
179
- }
180
-
181
- return /*#__PURE__*/React.createElement(Comp, _extends({
182
- ref: ref,
183
- onFocus: wrapEvent(onFocus, handleFocus),
184
- onBlur: wrapEvent(onBlur, handleBlur),
185
- onChange: wrapEvent(onChange, handleChange),
186
- value: value,
187
- disabled: disabled,
188
- "data-has-selected": value !== '' ? '' : undefined
189
- }, rest), type === 'month_year' ? /*#__PURE__*/React.createElement(MonthYearOptions, {
190
- minDate: minDate,
191
- maxDate: maxDate,
192
- monthNames: monthNames,
193
- emptyOption: emptyOption
194
- }) : type === 'day' ? /*#__PURE__*/React.createElement(DayOptions, {
195
- date: month >= 0 && year >= 0 ? new Date(Date.UTC(year, month, 15)) : undefined,
196
- dayNames: dayNames,
197
- minDate: minDate,
198
- emptyOption: emptyOption
199
- }) : null);
200
- });
201
- //# sourceMappingURL=DatePickerSelect.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/DatePicker/DatePickerSelect.tsx"],"names":["React","forwardRef","memo","wrapEvent","useInnerFocus","SET_DATE","useDatePickerContext","NAVIGATE","differenceInCalendarMonths","addMonths","getDaysInMonth","setDate","MonthYearOptions","minDate","maxDate","monthNames","emptyOption","ret","diff","i","date","year","getFullYear","month","getMonth","push","DayOptions","Date","dayNames","day","newDate","valueOf","getDay","DatePickerSelect","DatePicker","ref","as","Comp","type","onFocus","onBlur","onChange","children","rest","onChangeRef","dispatch","controlledValueRef","data","state","handleFocus","handleBlur","stateSelectedDate","selectedDate","navigationYear","navigationMonth","navigationDay","current","undefined","handleChange","e","nextState","target","value","split","yearStr","monthStr","parseInt","nextDate","UTC","getDate","disabled"],"mappings":"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","sourcesContent":["import React, { forwardRef, memo } from 'react';\nimport { wrapEvent } from '../utils/wrapEvent';\nimport { useInnerFocus, SET_DATE } from './hooks';\nimport { DayNames, MonthNames } from './dateTypes';\nimport { useDatePickerContext } from './contexts';\nimport { NAVIGATE } from '../ComboBox/hooks';\nimport {\n differenceInCalendarMonths,\n addMonths,\n getDaysInMonth,\n setDate,\n} from 'date-fns';\n\nexport interface DatePickerSelectProps\n extends React.SelectHTMLAttributes<HTMLSelectElement> {\n groupType?: 'from' | 'to';\n type: 'month_year' | 'day';\n emptyOption?: string;\n\n as?: React.ElementType<any>;\n}\n\nconst MonthYearOptions = memo(\n ({\n minDate,\n maxDate,\n monthNames,\n emptyOption,\n }: {\n minDate: Date;\n maxDate: Date;\n monthNames: MonthNames;\n emptyOption: string;\n }) => {\n const ret = [\n <option key={'empty'} value=\"\" disabled>\n {emptyOption}\n </option>,\n ];\n\n const diff = differenceInCalendarMonths(maxDate, minDate);\n for (let i = 0; i <= diff; i++) {\n const date = addMonths(minDate, i);\n const year = date.getFullYear();\n const month = date.getMonth();\n\n ret.push(\n <option key={`${year}_${month}`} value={`${year}-${month}`}>\n {monthNames[month]} {year}\n </option>\n );\n }\n\n return <>{ret}</>;\n }\n);\n\nconst DayOptions = memo(\n ({\n date = new Date(0),\n dayNames,\n minDate,\n emptyOption,\n }: {\n date: Date | undefined;\n dayNames: DayNames;\n minDate: Date;\n emptyOption: string;\n }) => {\n if (!date) {\n return null;\n }\n\n const ret = [\n <option key={'empty'} value=\"\" disabled>\n {emptyOption}\n </option>,\n ];\n\n for (let day = 1; day <= getDaysInMonth(date); day++) {\n const newDate = setDate(date, day);\n ret.push(\n <option\n key={`day_${day}`}\n value={`${day}`}\n disabled={newDate.valueOf() < minDate.valueOf()}\n >\n {(newDate.getDay(), dayNames[newDate.getDay()])} {day}\n </option>\n );\n }\n\n return <>{ret}</>;\n }\n);\n\nexport const DatePickerSelect = forwardRef(function DatePicker(\n {\n as: Comp = 'select',\n type,\n onFocus,\n onBlur,\n onChange,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n children,\n emptyOption = '',\n ...rest\n }: DatePickerSelectProps,\n ref\n) {\n const {\n minDate,\n maxDate,\n monthNames,\n onChangeRef,\n dayNames,\n dispatch,\n controlledValueRef,\n state: data,\n } = useDatePickerContext();\n const { handleFocus, handleBlur } = useInnerFocus();\n\n const { selectedDate: stateSelectedDate } = data;\n let {\n navigationYear: year,\n navigationMonth: month,\n navigationDay: day,\n } = data;\n\n const selectedDate =\n controlledValueRef.current !== undefined\n ? controlledValueRef.current\n : stateSelectedDate;\n\n const handleChange = (e: React.ChangeEvent<HTMLSelectElement>) => {\n const nextState = {\n year,\n month,\n day,\n };\n\n switch (type) {\n case 'month_year': {\n nextState.year = -1;\n nextState.month = -1;\n nextState.day = -1;\n\n if (e.target.value) {\n const [yearStr, monthStr] = e.target.value.split('-');\n nextState.year = parseInt(yearStr, 10);\n nextState.month = parseInt(monthStr, 10);\n nextState.day = -1;\n }\n\n dispatch({ type: NAVIGATE, ...nextState });\n break;\n }\n case 'day': {\n nextState.day = -1;\n if (e.target.value) {\n nextState.day = parseInt(e.target.value, 10);\n }\n\n let nextDate: Date | undefined = undefined;\n if (nextState.day !== -1) {\n if (nextState.year >= 0 && nextState.month >= 0) {\n nextDate = new Date(\n Date.UTC(nextState.year, nextState.month, nextState.day)\n );\n } else if (selectedDate !== null) {\n nextDate = new Date(\n Date.UTC(\n selectedDate.getFullYear(),\n selectedDate.getMonth(),\n nextState.day\n )\n );\n }\n }\n\n if (nextDate !== undefined) {\n onChangeRef.current && onChangeRef.current(nextDate);\n dispatch({ type: SET_DATE, selectedDate: nextDate });\n } else {\n dispatch({ type: NAVIGATE, ...nextState });\n }\n break;\n }\n }\n };\n\n if (year < 0 && month < 0 && day <= 0 && selectedDate !== null) {\n year = selectedDate.getFullYear();\n month = selectedDate.getMonth();\n day = selectedDate.getDate();\n }\n\n let value = '';\n let disabled = false;\n if (type === 'month_year') {\n if (month >= 0 && year >= 0) {\n value = `${year}-${month}`;\n }\n } else if (type === 'day') {\n disabled = month < 0 || year < 0;\n if (day > 0) {\n value = `${day}`;\n }\n }\n\n return (\n <Comp\n ref={ref}\n onFocus={wrapEvent(onFocus, handleFocus)}\n onBlur={wrapEvent(onBlur, handleBlur)}\n onChange={wrapEvent(onChange, handleChange)}\n value={value}\n disabled={disabled}\n data-has-selected={value !== '' ? '' : undefined}\n {...rest}\n >\n {type === 'month_year' ? (\n <MonthYearOptions\n minDate={minDate}\n maxDate={maxDate}\n monthNames={monthNames}\n emptyOption={emptyOption}\n />\n ) : type === 'day' ? (\n <DayOptions\n date={\n month >= 0 && year >= 0\n ? new Date(Date.UTC(year, month, 15))\n : undefined\n }\n dayNames={dayNames}\n minDate={minDate}\n emptyOption={emptyOption}\n />\n ) : null}\n </Comp>\n );\n});\n"],"file":"DatePickerSelect.js"}
@@ -1,28 +0,0 @@
1
- import React from 'react';
2
- import { MonthNames, DayNames } from './dateTypes';
3
- export declare type RangeDatePickerProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> & {
4
- as?: React.ElementType<any>;
5
- minDate?: Date;
6
- maxDate?: Date;
7
- dayNames: DayNames;
8
- monthNames: MonthNames;
9
- children?: React.ReactNode[];
10
- onChange?: (from: Date | null, to: Date | null) => void;
11
- from?: Date | null;
12
- to?: Date | null;
13
- defaultFrom?: Date | null;
14
- defaultTo?: Date | null;
15
- };
16
- export declare const RangeDatePicker: React.ForwardRefExoticComponent<Pick<React.HTMLAttributes<HTMLDivElement>, "dir" | "slot" | "style" | "title" | "children" | "onFocus" | "onBlur" | "id" | "hidden" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "draggable" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocusCapture" | "onBlurCapture" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture"> & {
17
- as?: "symbol" | "object" | "a" | "abbr" | "address" | "area" | "article" | "aside" | "audio" | "b" | "base" | "bdi" | "bdo" | "blockquote" | "body" | "br" | "button" | "canvas" | "caption" | "cite" | "code" | "col" | "colgroup" | "data" | "datalist" | "dd" | "del" | "details" | "dfn" | "dialog" | "div" | "dl" | "dt" | "em" | "embed" | "fieldset" | "figcaption" | "figure" | "footer" | "form" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "head" | "header" | "hgroup" | "hr" | "html" | "i" | "iframe" | "img" | "input" | "ins" | "kbd" | "label" | "legend" | "li" | "link" | "main" | "map" | "mark" | "menu" | "meta" | "meter" | "nav" | "noscript" | "ol" | "optgroup" | "option" | "output" | "p" | "param" | "picture" | "pre" | "progress" | "q" | "rp" | "rt" | "ruby" | "s" | "samp" | "script" | "section" | "select" | "slot" | "small" | "source" | "span" | "strong" | "style" | "sub" | "summary" | "sup" | "table" | "tbody" | "td" | "template" | "textarea" | "tfoot" | "th" | "thead" | "time" | "title" | "tr" | "track" | "u" | "ul" | "var" | "video" | "wbr" | "circle" | "clipPath" | "defs" | "desc" | "ellipse" | "feBlend" | "feColorMatrix" | "feComponentTransfer" | "feComposite" | "feConvolveMatrix" | "feDiffuseLighting" | "feDisplacementMap" | "feDistantLight" | "feFlood" | "feFuncA" | "feFuncB" | "feFuncG" | "feFuncR" | "feGaussianBlur" | "feImage" | "feMerge" | "feMergeNode" | "feMorphology" | "feOffset" | "fePointLight" | "feSpecularLighting" | "feSpotLight" | "feTile" | "feTurbulence" | "filter" | "foreignObject" | "g" | "image" | "line" | "linearGradient" | "marker" | "mask" | "metadata" | "path" | "pattern" | "polygon" | "polyline" | "radialGradient" | "rect" | "stop" | "svg" | "switch" | "text" | "textPath" | "tspan" | "use" | "view" | "big" | "keygen" | "menuitem" | "noindex" | "webview" | "animate" | "animateMotion" | "animateTransform" | "feDropShadow" | "mpath" | React.ComponentClass<any, any> | React.FunctionComponent<any> | undefined;
18
- minDate?: Date | undefined;
19
- maxDate?: Date | undefined;
20
- dayNames: DayNames;
21
- monthNames: MonthNames;
22
- children?: React.ReactNode[] | undefined;
23
- onChange?: ((from: Date | null, to: Date | null) => void) | undefined;
24
- from?: Date | null | undefined;
25
- to?: Date | null | undefined;
26
- defaultFrom?: Date | null | undefined;
27
- defaultTo?: Date | null | undefined;
28
- } & React.RefAttributes<HTMLDivElement>>;
@@ -1,94 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
- import React, { forwardRef, useRef, useState } from 'react';
5
- import { assignMultipleRefs } from '../utils/assignRef';
6
- import { adjustDates } from './adjustDates';
7
- import { RangeDatePickerProvider } from './contexts';
8
- export var RangeDatePicker = forwardRef(function RangeDatePicker(_ref, ref) {
9
- var _ref$as = _ref.as,
10
- Comp = _ref$as === void 0 ? 'div' : _ref$as,
11
- _ref$minDate = _ref.minDate,
12
- propMinDate = _ref$minDate === void 0 ? new Date(0) : _ref$minDate,
13
- _ref$maxDate = _ref.maxDate,
14
- propMaxDate = _ref$maxDate === void 0 ? new Date() : _ref$maxDate,
15
- dayNames = _ref.dayNames,
16
- monthNames = _ref.monthNames,
17
- onChange = _ref.onChange,
18
- controlledFrom = _ref.from,
19
- controlledTo = _ref.to,
20
- defaultFrom = _ref.defaultFrom,
21
- defaultTo = _ref.defaultTo,
22
- rest = _objectWithoutProperties(_ref, ["as", "minDate", "maxDate", "dayNames", "monthNames", "onChange", "from", "to", "defaultFrom", "defaultTo"]);
23
-
24
- var isControlled = controlledFrom !== undefined && controlledTo !== undefined;
25
- var minDate = propMinDate,
26
- maxDate = propMaxDate;
27
- var rangeDatePickerRef = useRef(null);
28
-
29
- var _useState = useState({
30
- from: defaultFrom || null,
31
- to: defaultTo || null
32
- }),
33
- _useState2 = _slicedToArray(_useState, 2),
34
- _useState2$ = _useState2[0],
35
- stateFrom = _useState2$.from,
36
- stateTo = _useState2$.to,
37
- setDates = _useState2[1];
38
-
39
- var _useState3 = useState(false),
40
- _useState4 = _slicedToArray(_useState3, 2),
41
- innerHasFocus = _useState4[0],
42
- setInnerHasFocus = _useState4[1];
43
-
44
- var onChangeFrom = function onChangeFrom(from) {
45
- var to = stateTo;
46
-
47
- var _adjustDates = adjustDates(from, to, 'from'),
48
- nextFrom = _adjustDates.from,
49
- nextTo = _adjustDates.to;
50
-
51
- onChange && onChange(nextFrom, nextTo);
52
- setDates({
53
- from: nextFrom,
54
- to: nextTo
55
- });
56
- };
57
-
58
- var onChangeTo = function onChangeTo(to) {
59
- var from = stateFrom;
60
-
61
- var _adjustDates2 = adjustDates(from, to, 'to'),
62
- nextFrom = _adjustDates2.from,
63
- nextTo = _adjustDates2.to;
64
-
65
- onChange && onChange(nextFrom, nextTo);
66
- setDates({
67
- from: nextFrom,
68
- to: nextTo
69
- });
70
- };
71
-
72
- var from = isControlled ? controlledFrom : stateFrom;
73
- var to = isControlled ? controlledTo : stateTo;
74
- var contextValue = {
75
- rangeDatePickerRef: rangeDatePickerRef,
76
- innerHasFocus: innerHasFocus,
77
- setInnerHasFocus: setInnerHasFocus,
78
- minDate: minDate,
79
- maxDate: maxDate,
80
- from: from,
81
- to: to,
82
- dayNames: dayNames,
83
- monthNames: monthNames,
84
- onChangeFrom: onChangeFrom,
85
- onChangeTo: onChangeTo
86
- };
87
- return /*#__PURE__*/React.createElement(RangeDatePickerProvider, {
88
- value: contextValue
89
- }, /*#__PURE__*/React.createElement(Comp, _extends({
90
- ref: assignMultipleRefs(ref, rangeDatePickerRef),
91
- "data-has-focus": innerHasFocus ? '' : undefined
92
- }, rest)));
93
- });
94
- //# sourceMappingURL=RangeDatePicker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/DatePicker/RangeDatePicker.tsx"],"names":["React","forwardRef","useRef","useState","assignMultipleRefs","adjustDates","RangeDatePickerProvider","RangeDatePicker","ref","as","Comp","minDate","propMinDate","Date","maxDate","propMaxDate","dayNames","monthNames","onChange","controlledFrom","from","controlledTo","to","defaultFrom","defaultTo","rest","isControlled","undefined","rangeDatePickerRef","stateFrom","stateTo","setDates","innerHasFocus","setInnerHasFocus","onChangeFrom","nextFrom","nextTo","onChangeTo","contextValue"],"mappings":"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","sourcesContent":["import React, { forwardRef, useRef, useState } from 'react';\nimport { MonthNames, DayNames } from './dateTypes';\nimport { assignMultipleRefs } from '../utils/assignRef';\nimport { adjustDates } from './adjustDates';\nimport {\n RangeDatePickerProvider,\n RangeDatePickerContextProps,\n} from './contexts';\n\nexport type RangeDatePickerProps = Omit<\n React.HTMLAttributes<HTMLDivElement>,\n 'onChange'\n> & {\n as?: React.ElementType<any>;\n minDate?: Date;\n maxDate?: Date;\n dayNames: DayNames;\n monthNames: MonthNames;\n children?: React.ReactNode[];\n onChange?: (from: Date | null, to: Date | null) => void;\n from?: Date | null;\n to?: Date | null;\n defaultFrom?: Date | null;\n defaultTo?: Date | null;\n};\n\nexport const RangeDatePicker = forwardRef<HTMLDivElement, RangeDatePickerProps>(\n function RangeDatePicker(\n {\n as: Comp = 'div',\n minDate: propMinDate = new Date(0),\n maxDate: propMaxDate = new Date(),\n dayNames,\n monthNames,\n onChange,\n from: controlledFrom,\n to: controlledTo,\n defaultFrom,\n defaultTo,\n ...rest\n },\n ref\n ) {\n const isControlled =\n controlledFrom !== undefined && controlledTo !== undefined;\n\n const minDate = propMinDate,\n maxDate = propMaxDate;\n\n const rangeDatePickerRef = useRef<HTMLDivElement | null>(null);\n const [{ from: stateFrom, to: stateTo }, setDates] = useState({\n from: (defaultFrom || null) as Date | null,\n to: (defaultTo || null) as Date | null,\n });\n const [innerHasFocus, setInnerHasFocus] = useState(false);\n\n const onChangeFrom = (from: Date | null) => {\n const to = stateTo;\n const { from: nextFrom, to: nextTo } = adjustDates(from, to, 'from');\n\n onChange && onChange(nextFrom, nextTo);\n setDates({ from: nextFrom, to: nextTo });\n };\n\n const onChangeTo = (to: Date | null) => {\n const from = stateFrom;\n const { from: nextFrom, to: nextTo } = adjustDates(from, to, 'to');\n\n onChange && onChange(nextFrom, nextTo);\n setDates({ from: nextFrom, to: nextTo });\n };\n\n const from = isControlled ? controlledFrom : stateFrom;\n const to = isControlled ? controlledTo : stateTo;\n\n const contextValue: RangeDatePickerContextProps = {\n rangeDatePickerRef,\n innerHasFocus,\n setInnerHasFocus,\n minDate,\n maxDate,\n from,\n to,\n dayNames,\n monthNames,\n onChangeFrom,\n onChangeTo,\n };\n\n return (\n <RangeDatePickerProvider value={contextValue}>\n <Comp\n ref={assignMultipleRefs(ref, rangeDatePickerRef)}\n data-has-focus={innerHasFocus ? '' : undefined}\n {...rest}\n />\n </RangeDatePickerProvider>\n );\n }\n);\n"],"file":"RangeDatePicker.js"}
@@ -1,4 +0,0 @@
1
- export declare function adjustDates(from: Date | null, to: Date | null, frozenParam: 'from' | 'to'): {
2
- from: Date | null;
3
- to: Date | null;
4
- };