@onesy/ui-react 1.0.130 → 1.0.131

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 (444) hide show
  1. package/Accordion/Accordion.js +342 -242
  2. package/Accordion/index.js +12 -7
  3. package/AdvancedTextField/AdvancedTextField.js +165 -157
  4. package/AdvancedTextField/index.js +12 -7
  5. package/Append/Append.js +502 -519
  6. package/Append/index.js +12 -7
  7. package/AreaChart/AreaChart.js +53 -40
  8. package/AreaChart/index.js +12 -7
  9. package/AreaChartItem/AreaChartItem.js +325 -237
  10. package/AreaChartItem/index.js +12 -7
  11. package/AudioPlayer/AudioPlayer.js +683 -466
  12. package/AudioPlayer/index.js +12 -7
  13. package/AudioRecorder/AudioRecorder.js +359 -259
  14. package/AudioRecorder/index.js +12 -7
  15. package/AutoComplete/AutoComplete.js +693 -568
  16. package/AutoComplete/index.js +12 -7
  17. package/AutoCompleteCountry/AutoCompleteCountry.js +99 -62
  18. package/AutoCompleteCountry/index.js +12 -7
  19. package/AutoCompleteCurrency/AutoCompleteCurrency.js +73 -61
  20. package/AutoCompleteCurrency/index.js +12 -7
  21. package/Avatar/Avatar.js +113 -86
  22. package/Avatar/index.js +12 -7
  23. package/AvatarGroup/AvatarGroup.js +104 -87
  24. package/AvatarGroup/index.js +12 -7
  25. package/Backdrop/Backdrop.js +160 -139
  26. package/Backdrop/index.js +12 -7
  27. package/Badge/Badge.js +116 -96
  28. package/Badge/index.js +12 -7
  29. package/Banner/Banner.js +126 -85
  30. package/Banner/index.js +12 -7
  31. package/BottomAppBar/BottomAppBar.js +89 -60
  32. package/BottomAppBar/index.js +12 -7
  33. package/BottomSheet/BottomSheet.js +66 -59
  34. package/BottomSheet/index.js +12 -7
  35. package/Box/Box.js +43 -35
  36. package/Box/index.js +12 -7
  37. package/Breadcrumbs/Breadcrumbs.js +168 -144
  38. package/Breadcrumbs/index.js +12 -7
  39. package/BubbleChart/BubbleChart.js +261 -132
  40. package/BubbleChart/index.js +12 -7
  41. package/BubbleChartItem/BubbleChartItem.js +228 -161
  42. package/BubbleChartItem/index.js +12 -7
  43. package/Button/Button.js +488 -467
  44. package/Button/index.js +12 -7
  45. package/Buttons/Buttons.js +366 -293
  46. package/Buttons/index.js +12 -7
  47. package/Calendar/Calendar.js +715 -452
  48. package/Calendar/index.js +12 -7
  49. package/CalendarAvailability/CalendarAvailability.js +709 -388
  50. package/CalendarAvailability/index.js +12 -7
  51. package/CalendarMenu/CalendarMenu.js +430 -303
  52. package/CalendarMenu/index.js +12 -7
  53. package/CalendarMonth/CalendarMonth.js +537 -498
  54. package/CalendarMonth/index.js +12 -7
  55. package/CalendarViews/CalendarViews.js +403 -254
  56. package/CalendarViews/index.js +12 -7
  57. package/CalendarWeek/CalendarWeek.js +536 -395
  58. package/CalendarWeek/index.js +12 -7
  59. package/Card/Card.js +133 -101
  60. package/Card/index.js +12 -7
  61. package/CardButton/CardButton.js +78 -58
  62. package/CardButton/index.js +12 -7
  63. package/CardFooter/CardFooter.js +58 -39
  64. package/CardFooter/index.js +12 -7
  65. package/CardHeader/CardHeader.js +61 -44
  66. package/CardHeader/index.js +12 -7
  67. package/CardImage/CardImage.js +80 -67
  68. package/CardImage/index.js +12 -7
  69. package/CardMain/CardMain.js +53 -39
  70. package/CardMain/index.js +12 -7
  71. package/Carousel/Carousel.js +1025 -913
  72. package/Carousel/index.js +12 -7
  73. package/Chart/Chart.js +1325 -1174
  74. package/Chart/index.js +12 -7
  75. package/Checkbox/Checkbox.js +339 -325
  76. package/Checkbox/index.js +12 -7
  77. package/Chip/Chip.js +131 -102
  78. package/Chip/index.js +12 -7
  79. package/Chips/Chips.js +121 -94
  80. package/Chips/index.js +12 -7
  81. package/ClickListener/ClickListener.js +86 -89
  82. package/ClickListener/index.js +12 -7
  83. package/Clock/Clock.js +470 -417
  84. package/Clock/index.js +12 -7
  85. package/ColorTextField/ColorTextField.js +234 -171
  86. package/ColorTextField/index.js +12 -7
  87. package/ColumnChart/ColumnChart.js +63 -46
  88. package/ColumnChart/index.js +12 -7
  89. package/ColumnChartItem/ColumnChartItem.js +208 -149
  90. package/ColumnChartItem/index.js +12 -7
  91. package/Confirm/Confirm.js +184 -129
  92. package/Confirm/Context.js +9 -7
  93. package/Confirm/index.js +32 -13
  94. package/Confirm/useConfirm.js +11 -10
  95. package/Container/Container.js +154 -133
  96. package/Container/index.js +12 -7
  97. package/CookieBanner/CookieBanner.js +142 -76
  98. package/CookieBanner/index.js +12 -7
  99. package/Countdown/Countdown.js +403 -255
  100. package/Countdown/index.js +12 -7
  101. package/DatePicker/DatePicker.js +802 -547
  102. package/DatePicker/index.js +12 -7
  103. package/DateRangePicker/DateRangePicker.js +44 -37
  104. package/DateRangePicker/index.js +12 -7
  105. package/DateTimePicker/DateTimePicker.js +672 -459
  106. package/DateTimePicker/index.js +12 -7
  107. package/DateTimeRangePicker/DateTimeRangePicker.js +44 -37
  108. package/DateTimeRangePicker/index.js +12 -7
  109. package/Divider/Divider.js +198 -185
  110. package/Divider/index.js +12 -7
  111. package/DonutChart/DonutChart.js +49 -42
  112. package/DonutChart/index.js +12 -7
  113. package/DragAndDropList/DragAndDropList.js +160 -156
  114. package/DragAndDropList/index.js +12 -7
  115. package/Drawing/Drawing.js +850 -523
  116. package/Drawing/index.js +12 -7
  117. package/DropZone/DropZone.js +239 -201
  118. package/DropZone/index.js +12 -7
  119. package/Emojis/Emojis.js +409 -317
  120. package/Emojis/emojis_list.js +7279 -9250
  121. package/Emojis/index.js +19 -9
  122. package/Expand/Expand.js +201 -149
  123. package/Expand/index.js +12 -7
  124. package/Fab/Fab.js +46 -26
  125. package/Fab/index.js +12 -7
  126. package/Fade/Fade.js +131 -101
  127. package/Fade/index.js +12 -7
  128. package/FileChoose/FileChoose.js +218 -150
  129. package/FileChoose/index.js +12 -7
  130. package/Focus/Focus.js +87 -88
  131. package/Focus/index.js +12 -7
  132. package/Form/Form.js +194 -120
  133. package/Form/index.js +12 -7
  134. package/FormRow/FormRow.js +123 -78
  135. package/FormRow/index.js +12 -7
  136. package/Forms/Forms.js +55 -41
  137. package/Forms/index.js +12 -7
  138. package/Frame/Frame.js +212 -150
  139. package/Frame/index.js +12 -7
  140. package/Grid/Grid.js +231 -166
  141. package/Grid/index.js +12 -7
  142. package/Grow/Grow.js +137 -109
  143. package/Grow/index.js +12 -7
  144. package/HTMLCanvas/HTMLCanvas.js +752 -542
  145. package/HTMLCanvas/index.js +24 -21
  146. package/IFrame/IFrame.js +122 -104
  147. package/IFrame/index.js +12 -7
  148. package/Icon/Icon.js +112 -95
  149. package/Icon/index.js +24 -21
  150. package/IconButton/IconButton.js +49 -37
  151. package/IconButton/index.js +12 -7
  152. package/Image/Image.js +285 -252
  153. package/Image/index.js +12 -7
  154. package/ImageCrop/ImageCrop.js +1073 -1048
  155. package/ImageCrop/index.js +12 -7
  156. package/ImageEdit/ImageEdit.js +1088 -783
  157. package/ImageEdit/index.js +12 -7
  158. package/ImageGallery/ImageGallery.js +518 -473
  159. package/ImageGallery/index.js +12 -7
  160. package/ImageList/ImageList.js +136 -129
  161. package/ImageList/index.js +12 -7
  162. package/ImageListItem/ImageListItem.js +101 -87
  163. package/ImageListItem/index.js +12 -7
  164. package/ImageListItemBox/ImageListItemBox.js +61 -50
  165. package/ImageListItemBox/index.js +12 -7
  166. package/Info/Info.js +99 -63
  167. package/Info/index.js +12 -7
  168. package/Interaction/Interaction.js +405 -345
  169. package/Interaction/index.js +12 -7
  170. package/Keyframes/Context.js +9 -7
  171. package/Keyframes/Keyframes.js +189 -174
  172. package/Keyframes/index.js +42 -25
  173. package/Keyframes/useKeyframes.js +11 -10
  174. package/Label/Label.js +177 -151
  175. package/Label/index.js +12 -7
  176. package/Labels/Labels.js +126 -98
  177. package/Labels/index.js +12 -7
  178. package/Line/Line.js +296 -174
  179. package/Line/index.js +12 -7
  180. package/LineChart/LineChart.js +57 -40
  181. package/LineChart/index.js +12 -7
  182. package/LineChartItem/LineChartItem.js +239 -177
  183. package/LineChartItem/index.js +12 -7
  184. package/LinearMeter/LinearMeter.js +453 -377
  185. package/LinearMeter/index.js +12 -7
  186. package/LinearProgress/LinearProgress.js +324 -255
  187. package/LinearProgress/index.js +12 -7
  188. package/Link/Link.js +182 -127
  189. package/Link/index.js +12 -7
  190. package/Links/Links.js +277 -156
  191. package/Links/index.js +12 -7
  192. package/List/List.js +148 -113
  193. package/List/index.js +12 -7
  194. package/ListItem/ListItem.js +388 -362
  195. package/ListItem/index.js +12 -7
  196. package/ListSubheader/ListSubheader.js +52 -44
  197. package/ListSubheader/index.js +12 -7
  198. package/MainProgress/Context.js +9 -7
  199. package/MainProgress/MainProgress.js +193 -161
  200. package/MainProgress/index.js +32 -13
  201. package/MainProgress/useMainProgress.js +11 -10
  202. package/Markdown/Markdown.js +676 -704
  203. package/Markdown/index.js +12 -7
  204. package/Masonry/Masonry.js +207 -181
  205. package/Masonry/index.js +12 -7
  206. package/Medias/Medias.js +436 -398
  207. package/Medias/index.js +12 -7
  208. package/Menu/Menu.js +278 -243
  209. package/Menu/index.js +12 -7
  210. package/MenuDesktop/MenuDesktop.js +496 -419
  211. package/MenuDesktop/index.js +12 -7
  212. package/MenuItem/MenuItem.js +286 -231
  213. package/MenuItem/index.js +12 -7
  214. package/Meta/Meta.js +78 -54
  215. package/Meta/index.js +12 -7
  216. package/Modal/Modal.js +333 -272
  217. package/Modal/index.js +12 -7
  218. package/ModalFooter/ModalFooter.js +50 -39
  219. package/ModalFooter/index.js +12 -7
  220. package/ModalHeader/ModalHeader.js +51 -39
  221. package/ModalHeader/index.js +12 -7
  222. package/ModalIcon/ModalIcon.js +29 -23
  223. package/ModalIcon/index.js +12 -7
  224. package/ModalMain/ModalMain.js +50 -41
  225. package/ModalMain/index.js +12 -7
  226. package/ModalText/ModalText.js +47 -37
  227. package/ModalText/index.js +12 -7
  228. package/ModalTitle/ModalTitle.js +47 -37
  229. package/ModalTitle/index.js +12 -7
  230. package/MoreOptions/MoreOptions.js +72 -52
  231. package/MoreOptions/index.js +12 -7
  232. package/Move/Move.js +166 -141
  233. package/Move/index.js +12 -7
  234. package/NavigationBar/NavigationBar.js +133 -109
  235. package/NavigationBar/index.js +12 -7
  236. package/NavigationDrawer/NavigationDrawer.js +241 -211
  237. package/NavigationDrawer/index.js +12 -7
  238. package/NavigationItem/NavigationItem.js +293 -262
  239. package/NavigationItem/index.js +12 -7
  240. package/NavigationRail/NavigationRail.js +187 -150
  241. package/NavigationRail/index.js +12 -7
  242. package/NotFound/NotFound.js +89 -66
  243. package/NotFound/index.js +12 -7
  244. package/NumericTextField/NumericTextField.js +217 -212
  245. package/NumericTextField/index.js +12 -7
  246. package/Page/Page.js +131 -67
  247. package/Page/index.js +12 -7
  248. package/PageTransition/PageTransition.js +112 -102
  249. package/PageTransition/index.js +12 -7
  250. package/Pagination/Pagination.js +153 -98
  251. package/Pagination/index.js +12 -7
  252. package/PaginationItem/PaginationItem.js +85 -65
  253. package/PaginationItem/index.js +12 -7
  254. package/Parallax/Parallax.js +138 -145
  255. package/Parallax/index.js +12 -7
  256. package/Path/Path.js +40 -35
  257. package/Path/index.js +12 -7
  258. package/PieChart/PieChart.js +382 -267
  259. package/PieChart/index.js +12 -7
  260. package/Placeholder/Placeholder.js +125 -117
  261. package/Placeholder/index.js +12 -7
  262. package/Portal/Portal.js +37 -38
  263. package/Portal/index.js +12 -7
  264. package/Properties/Properties.js +85 -64
  265. package/Properties/index.js +12 -7
  266. package/Property/Property.js +120 -108
  267. package/Property/index.js +12 -7
  268. package/Radio/Radio.js +211 -181
  269. package/Radio/index.js +12 -7
  270. package/Radios/Radios.js +124 -92
  271. package/Radios/index.js +12 -7
  272. package/Rating/Rating.js +353 -360
  273. package/Rating/index.js +12 -7
  274. package/Reset/Reset.js +19 -24
  275. package/Reset/index.js +12 -7
  276. package/Reveal/Reveal.js +98 -89
  277. package/Reveal/index.js +12 -7
  278. package/RichTextEditor/RichTextEditor.js +1764 -972
  279. package/RichTextEditor/index.js +12 -7
  280. package/RoundMeter/RoundMeter.js +629 -537
  281. package/RoundMeter/index.js +12 -7
  282. package/RoundProgress/RoundProgress.js +233 -174
  283. package/RoundProgress/index.js +12 -7
  284. package/ScatterChart/ScatterChart.js +53 -40
  285. package/ScatterChart/index.js +12 -7
  286. package/ScatterChartItem/ScatterChartItem.js +214 -153
  287. package/ScatterChartItem/index.js +12 -7
  288. package/ScreenCapture/ScreenCapture.js +427 -335
  289. package/ScreenCapture/index.js +12 -7
  290. package/Section/Section.js +380 -319
  291. package/Section/index.js +12 -7
  292. package/SectionAction/SectionAction.js +72 -61
  293. package/SectionAction/index.js +12 -7
  294. package/SectionBoxes/SectionBoxes.js +240 -208
  295. package/SectionBoxes/index.js +12 -7
  296. package/SectionCards/SectionCards.js +256 -217
  297. package/SectionCards/index.js +12 -7
  298. package/SectionCarousel/SectionCarousel.js +284 -242
  299. package/SectionCarousel/index.js +12 -7
  300. package/SectionContact/SectionContact.js +174 -116
  301. package/SectionContact/index.js +12 -7
  302. package/SectionImageGallery/SectionImageGallery.js +64 -51
  303. package/SectionImageGallery/index.js +12 -7
  304. package/SectionLogos/SectionLogos.js +123 -109
  305. package/SectionLogos/index.js +12 -7
  306. package/SectionMedia/SectionMedia.js +170 -152
  307. package/SectionMedia/index.js +12 -7
  308. package/SectionReviews/SectionReviews.js +170 -129
  309. package/SectionReviews/index.js +12 -7
  310. package/SectionTextMedia/SectionTextMedia.js +187 -142
  311. package/SectionTextMedia/index.js +12 -7
  312. package/SectionTimeline/SectionTimeline.js +126 -95
  313. package/SectionTimeline/index.js +12 -7
  314. package/SectionWatch/SectionWatch.js +65 -53
  315. package/SectionWatch/index.js +12 -7
  316. package/Select/Select.js +517 -406
  317. package/Select/index.js +12 -7
  318. package/Share/Share.js +458 -319
  319. package/Share/index.js +12 -7
  320. package/Slide/Slide.js +184 -140
  321. package/Slide/index.js +12 -7
  322. package/Slider/Slider.js +927 -837
  323. package/Slider/index.js +12 -7
  324. package/SmartTextField/SmartTextField.js +1406 -1014
  325. package/SmartTextField/index.js +12 -7
  326. package/Snackbar/Snackbar.js +227 -185
  327. package/Snackbar/index.js +12 -7
  328. package/Snackbars/Context.js +9 -7
  329. package/Snackbars/Snackbars.js +234 -210
  330. package/Snackbars/index.js +32 -13
  331. package/Snackbars/useSnackbars.js +11 -10
  332. package/Space/Space.js +1683 -968
  333. package/Space/index.js +24 -21
  334. package/SpeechToText/SpeechToText.js +207 -172
  335. package/SpeechToText/index.js +12 -7
  336. package/SpeedDial/SpeedDial.js +434 -398
  337. package/SpeedDial/index.js +12 -7
  338. package/SpeedDialItem/SpeedDialItem.js +89 -63
  339. package/SpeedDialItem/index.js +12 -7
  340. package/SpyScroll/SpyScroll.js +154 -142
  341. package/SpyScroll/index.js +12 -7
  342. package/Step/Step.js +181 -127
  343. package/Step/index.js +12 -7
  344. package/Stepper/Stepper.js +159 -139
  345. package/Stepper/index.js +12 -7
  346. package/Surface/Surface.js +760 -798
  347. package/Surface/index.js +12 -7
  348. package/Switch/Switch.js +688 -532
  349. package/Switch/index.js +12 -7
  350. package/Tab/Tab.js +185 -150
  351. package/Tab/index.js +12 -7
  352. package/Table/Table.js +100 -77
  353. package/Table/index.js +12 -7
  354. package/TableBody/TableBody.js +76 -63
  355. package/TableBody/index.js +12 -7
  356. package/TableCell/TableCell.js +258 -220
  357. package/TableCell/index.js +12 -7
  358. package/TableFooter/TableFooter.js +60 -48
  359. package/TableFooter/index.js +12 -7
  360. package/TableHead/TableHead.js +139 -120
  361. package/TableHead/index.js +12 -7
  362. package/TableHeader/TableHeader.js +65 -50
  363. package/TableHeader/index.js +12 -7
  364. package/TablePagination/TablePagination.js +171 -98
  365. package/TablePagination/index.js +12 -7
  366. package/TableRow/TableRow.js +77 -64
  367. package/TableRow/index.js +12 -7
  368. package/Tabs/Tabs.js +425 -377
  369. package/Tabs/index.js +12 -7
  370. package/Text/Text.js +131 -113
  371. package/Text/index.js +12 -7
  372. package/TextField/TextField.js +940 -879
  373. package/TextField/index.js +12 -7
  374. package/TextToSpeech/TextToSpeech.js +176 -153
  375. package/TextToSpeech/index.js +12 -7
  376. package/TimePicker/TimePicker.js +985 -718
  377. package/TimePicker/index.js +12 -7
  378. package/TimeRangePicker/TimeRangePicker.js +44 -37
  379. package/TimeRangePicker/index.js +12 -7
  380. package/Timeline/Timeline.js +54 -42
  381. package/Timeline/index.js +12 -7
  382. package/TimelineItem/TimelineItem.js +144 -147
  383. package/TimelineItem/index.js +12 -7
  384. package/Timer/Timer.js +321 -204
  385. package/Timer/index.js +12 -7
  386. package/ToggleButton/ToggleButton.js +67 -58
  387. package/ToggleButton/index.js +12 -7
  388. package/ToggleButtons/ToggleButtons.js +46 -37
  389. package/ToggleButtons/index.js +12 -7
  390. package/Tooltip/Tooltip.js +489 -454
  391. package/Tooltip/index.js +12 -7
  392. package/TopAppBar/TopAppBar.js +237 -197
  393. package/TopAppBar/index.js +12 -7
  394. package/Transition/Context.js +9 -7
  395. package/Transition/Transition.js +321 -339
  396. package/Transition/index.js +42 -25
  397. package/Transition/useTransition.js +11 -10
  398. package/Transitions/Transitions.js +215 -179
  399. package/Transitions/index.js +12 -7
  400. package/Tree/Tree.js +375 -312
  401. package/Tree/index.js +12 -7
  402. package/Type/Type.js +251 -152
  403. package/Type/index.js +12 -7
  404. package/VideoPlayer/VideoPlayer.js +866 -656
  405. package/VideoPlayer/index.js +12 -7
  406. package/ViewSplit/ViewSplit.js +413 -387
  407. package/ViewSplit/index.js +12 -7
  408. package/Watch/Watch.js +436 -290
  409. package/Watch/index.js +12 -7
  410. package/Weather/Weather.js +294 -247
  411. package/Weather/index.js +12 -7
  412. package/Whiteboard/Whiteboard.js +1392 -1292
  413. package/Whiteboard/index.js +12 -7
  414. package/Widgets/Context.js +9 -7
  415. package/Widgets/Widgets.js +220 -168
  416. package/Widgets/index.js +32 -13
  417. package/Widgets/useWidgets.js +11 -10
  418. package/WindowSplit/WindowSplit.js +381 -336
  419. package/WindowSplit/index.js +12 -7
  420. package/Zoom/Zoom.js +126 -99
  421. package/Zoom/index.js +12 -7
  422. package/esm/Buttons/Buttons.js +1 -1
  423. package/esm/index.js +1 -1
  424. package/index.js +4053 -660
  425. package/package.json +1 -1
  426. package/types.js +4 -1
  427. package/useForm/index.js +25 -11
  428. package/useForm/useForm.js +203 -174
  429. package/useForm/validate.js +215 -203
  430. package/useLocation/index.js +12 -7
  431. package/useLocation/useLocation.js +54 -49
  432. package/useMediaQuery/index.js +12 -7
  433. package/useMediaQuery/useMediaQuery.js +44 -43
  434. package/useQuery/index.js +12 -7
  435. package/useQuery/useQuery.js +14 -10
  436. package/useScroll/index.js +12 -7
  437. package/useScroll/useScroll.js +61 -56
  438. package/useSubscription/index.js +12 -7
  439. package/useSubscription/useSubscription.js +35 -35
  440. package/useSwipe/index.js +12 -7
  441. package/useSwipe/useSwipe.js +157 -131
  442. package/useVisible/index.js +12 -7
  443. package/useVisible/useVisible.js +86 -76
  444. package/utils.js +1224 -1362
@@ -1,560 +1,815 @@
1
1
  "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.SEPARATOR = exports.SEPARATOR_SYMBOL = void 0;
18
- const jsx_runtime_1 = require("react/jsx-runtime");
19
- const react_1 = __importDefault(require("react"));
20
- const utils_1 = require("@onesy/utils");
21
- const date_1 = require("@onesy/date");
22
- const style_react_1 = require("@onesy/style-react");
23
- const IconMaterialCalendarTodayW100Filled_1 = __importDefault(require("@onesy/icons-material-rounded-react/IconMaterialCalendarTodayW100Filled"));
24
- const IconMaterialEditW100_1 = __importDefault(require("@onesy/icons-material-rounded-react/IconMaterialEditW100"));
25
- const IconMaterialCloseW100_1 = __importDefault(require("@onesy/icons-material-rounded-react/IconMaterialCloseW100"));
26
- const IconButton_1 = __importDefault(require("../IconButton"));
27
- const Button_1 = __importDefault(require("../Button"));
28
- const AdvancedTextField_1 = __importDefault(require("../AdvancedTextField"));
29
- const Modal_1 = __importDefault(require("../Modal"));
30
- const Tooltip_1 = __importDefault(require("../Tooltip"));
31
- const Surface_1 = __importDefault(require("../Surface"));
32
- const Line_1 = __importDefault(require("../Line"));
33
- const Type_1 = __importDefault(require("../Type"));
34
- const Calendar_1 = __importDefault(require("../Calendar"));
35
- const Divider_1 = __importDefault(require("../Divider"));
36
- const Slide_1 = __importDefault(require("../Slide"));
37
- const ClickListener_1 = __importDefault(require("../ClickListener"));
38
- const useMediaQuery_1 = __importDefault(require("../useMediaQuery"));
39
- const utils_2 = require("../utils");
40
- const useStyle = (0, style_react_1.style)(theme => ({
41
- root: {},
42
- header: {
43
- width: '100%',
44
- padding: `${theme.methods.space.value(2, 'px')} ${theme.methods.space.value(3, 'px')} 0px`,
45
- flex: '0 0 auto'
46
- },
47
- header_fullScreen: {
48
- padding: `${theme.methods.space.value(2, 'px')} 0px 0px`
49
- },
50
- actions: {
51
- width: '100%',
52
- padding: `0px ${theme.methods.space.value(1, 'px')} ${theme.methods.space.value(1.5, 'px')} ${theme.methods.space.value(1.5, 'px')}`,
53
- flex: '0 0 auto',
54
- overflowX: 'auto'
55
- },
56
- mode: {
57
- overflow: 'hidden'
58
- },
59
- calendar_mobile: {
60
- '&.onesy-Calendar-root': {
61
- width: '100%'
62
- },
63
- '& .onesy-Calendar-header + .onesy-Divider-root': {
64
- display: 'none'
65
- }
66
- },
67
- input_mobile: {
68
- '&.onesy-TextField-root': {
69
- width: '100%'
70
- }
71
- },
72
- mobile: {
73
- width: 'calc(100vw - 48px)',
74
- maxWidth: '330px',
75
- margin: '0 auto',
76
- borderRadius: theme.methods.shape.radius.value(3.5, 'px'),
77
- overflow: 'hidden',
78
- '& .onesy-Calendar-root': {
79
- borderRadius: '0'
80
- }
81
- },
82
- mobile_fullScreen: {
83
- height: '100vh',
84
- width: '100vw',
85
- margin: '0',
86
- maxWidth: 'unset',
87
- borderRadius: '0'
88
- },
89
- modal_input: {
90
- width: '100%',
91
- padding: `${theme.methods.space.value(2, 'px')} ${theme.methods.space.value(3, 'px')} ${theme.methods.space.value(2, 'px')}`,
92
- marginBottom: '12px',
93
- flex: '1 1 auto'
94
- },
95
- dayNames: {
96
- width: '100%',
97
- padding: `0 ${theme.methods.space.value(1, 'px')}`
98
- },
99
- dayName: {
100
- width: '40px',
101
- height: '40px',
102
- flex: '1 1 auto',
103
- userSelect: 'none'
104
- },
105
- heading: {
106
- width: '100%',
107
- marginBottom: '12px'
108
- },
109
- heading_fullScreen: {
110
- paddingInline: `${theme.methods.space.value(7.5, 'px')} ${theme.methods.space.value(1.5, 'px')}`
111
- },
112
- subheading: {
113
- width: '100%',
114
- marginBottom: '36px'
115
- },
116
- subheading_fullScreen: {
117
- margin: '8px 0',
118
- marginInlineStart: '60px'
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = exports.SEPARATOR_SYMBOL = exports.SEPARATOR = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _react = _interopRequireDefault(require("react"));
12
+ var _utils = require("@onesy/utils");
13
+ var _date = require("@onesy/date");
14
+ var _styleReact = require("@onesy/style-react");
15
+ var _IconMaterialCalendarTodayW100Filled = _interopRequireDefault(require("@onesy/icons-material-rounded-react/IconMaterialCalendarTodayW100Filled"));
16
+ var _IconMaterialEditW = _interopRequireDefault(require("@onesy/icons-material-rounded-react/IconMaterialEditW100"));
17
+ var _IconMaterialCloseW = _interopRequireDefault(require("@onesy/icons-material-rounded-react/IconMaterialCloseW100"));
18
+ var _IconButton = _interopRequireDefault(require("../IconButton"));
19
+ var _Button = _interopRequireDefault(require("../Button"));
20
+ var _AdvancedTextField = _interopRequireDefault(require("../AdvancedTextField"));
21
+ var _Modal = _interopRequireDefault(require("../Modal"));
22
+ var _Tooltip = _interopRequireDefault(require("../Tooltip"));
23
+ var _Surface = _interopRequireDefault(require("../Surface"));
24
+ var _Line = _interopRequireDefault(require("../Line"));
25
+ var _Type = _interopRequireDefault(require("../Type"));
26
+ var _Calendar = _interopRequireDefault(require("../Calendar"));
27
+ var _Divider = _interopRequireDefault(require("../Divider"));
28
+ var _Slide = _interopRequireDefault(require("../Slide"));
29
+ var _ClickListener = _interopRequireDefault(require("../ClickListener"));
30
+ var _useMediaQuery = _interopRequireDefault(require("../useMediaQuery"));
31
+ var _utils2 = require("../utils");
32
+ const _excluded = ["tonal", "color", "version", "size", "value", "valueDefault", "onChange", "calendar", "calendarDefault", "onChangeCalendar", "range", "now", "static", "openMobile", "placeholder", "calendars", "min", "max", "validate", "name", "nameFrom", "nameTo", "label", "labelFrom", "labelTo", "modeModalSubHeadingText", "modeModalSubHeadingTextRange", "selectModeHeadingText", "inputModeHeadingText", "useHelperText", "weekStartDay", "switch", "fullScreen", "today", "clear", "heading", "actions", "fullWidth", "readOnly", "disabled", "valid", "onClick", "onClose", "onToday", "onClear", "onCancel", "onOk", "Icon", "IconEnter", "IconClose", "WrapperProps", "CalendarProps", "CalendarPropsDesktop", "CalendarPropsMobile", "IconButtonProps", "AdvancedTextFieldProps", "TooltipProps", "ButtonProps", "ModalProps", "IconProps", "MobileSurfaceProps", "className"];
33
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
34
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
35
+ const useStyle = (0, _styleReact.style)(theme => ({
36
+ root: {},
37
+ header: {
38
+ width: '100%',
39
+ padding: `${theme.methods.space.value(2, 'px')} ${theme.methods.space.value(3, 'px')} 0px`,
40
+ flex: '0 0 auto'
41
+ },
42
+ header_fullScreen: {
43
+ padding: `${theme.methods.space.value(2, 'px')} 0px 0px`
44
+ },
45
+ actions: {
46
+ width: '100%',
47
+ padding: `0px ${theme.methods.space.value(1, 'px')} ${theme.methods.space.value(1.5, 'px')} ${theme.methods.space.value(1.5, 'px')}`,
48
+ flex: '0 0 auto',
49
+ overflowX: 'auto'
50
+ },
51
+ mode: {
52
+ overflow: 'hidden'
53
+ },
54
+ calendar_mobile: {
55
+ '&.onesy-Calendar-root': {
56
+ width: '100%'
119
57
  },
120
- divider: {
121
- '&.onesy-Divider-root': {
122
- margin: '0'
123
- }
58
+ '& .onesy-Calendar-header + .onesy-Divider-root': {
59
+ display: 'none'
60
+ }
61
+ },
62
+ input_mobile: {
63
+ '&.onesy-TextField-root': {
64
+ width: '100%'
65
+ }
66
+ },
67
+ mobile: {
68
+ width: 'calc(100vw - 48px)',
69
+ maxWidth: '330px',
70
+ margin: '0 auto',
71
+ borderRadius: theme.methods.shape.radius.value(3.5, 'px'),
72
+ overflow: 'hidden',
73
+ '& .onesy-Calendar-root': {
74
+ borderRadius: '0'
124
75
  }
125
- }), { name: 'onesy-DatePicker' });
126
- exports.SEPARATOR_SYMBOL = `–`;
127
- exports.SEPARATOR = ` ${exports.SEPARATOR_SYMBOL} `;
128
- const DatePicker = react_1.default.forwardRef((props__, ref) => {
129
- const theme = (0, style_react_1.useOnesyTheme)();
130
- const l = theme.l;
131
- const props = react_1.default.useMemo(() => { var _a, _b, _c, _d, _e, _f, _g, _h; return (Object.assign(Object.assign(Object.assign({}, (_d = (_c = (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.ui) === null || _a === void 0 ? void 0 : _a.elements) === null || _b === void 0 ? void 0 : _b.all) === null || _c === void 0 ? void 0 : _c.props) === null || _d === void 0 ? void 0 : _d.default), (_h = (_g = (_f = (_e = theme === null || theme === void 0 ? void 0 : theme.ui) === null || _e === void 0 ? void 0 : _e.elements) === null || _f === void 0 ? void 0 : _f.onesyDatePicker) === null || _g === void 0 ? void 0 : _g.props) === null || _h === void 0 ? void 0 : _h.default), props__)); }, [props__]);
132
- const Line = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Line) || Line_1.default; }, [theme]);
133
- const IconButton = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.IconButton) || IconButton_1.default; }, [theme]);
134
- const Button = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Button) || Button_1.default; }, [theme]);
135
- const AdvancedTextField = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.AdvancedTextField) || AdvancedTextField_1.default; }, [theme]);
136
- const Modal = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Modal) || Modal_1.default; }, [theme]);
137
- const Tooltip = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Tooltip) || Tooltip_1.default; }, [theme]);
138
- const Surface = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Surface) || Surface_1.default; }, [theme]);
139
- const Type = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Type) || Type_1.default; }, [theme]);
140
- const Calendar = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Calendar) || Calendar_1.default; }, [theme]);
141
- const Divider = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Divider) || Divider_1.default; }, [theme]);
142
- const Slide = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.Slide) || Slide_1.default; }, [theme]);
143
- const ClickListener = react_1.default.useMemo(() => { var _a; return ((_a = theme === null || theme === void 0 ? void 0 : theme.elements) === null || _a === void 0 ? void 0 : _a.ClickListener) || ClickListener_1.default; }, [theme]);
144
- const { tonal = true, color = 'primary', version: version_ = 'auto', size = 'regular', value: value_, valueDefault, onChange, calendar: calendar_, calendarDefault, onChangeCalendar, range, now, static: static_, openMobile = 'select', placeholder: placeholder_, calendars = props.range ? 2 : 1, min, max, validate, name, nameFrom, nameTo, label: label_, labelFrom: labelFrom_ = l('Date from'), labelTo: labelTo_ = l('Date to'), modeModalSubHeadingText = l('Select date'), modeModalSubHeadingTextRange = `${l('Date from')}${exports.SEPARATOR}${l('Date to')}`, selectModeHeadingText = l('Select date'), inputModeHeadingText = l('Enter date'), useHelperText: useHelperText_, weekStartDay = 'Monday', switch: switch__, fullScreen, today, clear = true, heading: heading_ = true, actions: actions_ = true, fullWidth, readOnly, disabled, valid: valid_, onClick: onClick_, onClose: onClose_, onToday: onToday_, onClear: onClear_, onCancel: onCancel_, onOk: onOk_, Icon: Icon_ = IconMaterialCalendarTodayW100Filled_1.default, IconEnter = IconMaterialEditW100_1.default, IconClose = IconMaterialCloseW100_1.default, WrapperProps, CalendarProps, CalendarPropsDesktop, CalendarPropsMobile, IconButtonProps, AdvancedTextFieldProps, TooltipProps, ButtonProps, ModalProps, IconProps, MobileSurfaceProps, className } = props, other = __rest(props, ["tonal", "color", "version", "size", "value", "valueDefault", "onChange", "calendar", "calendarDefault", "onChangeCalendar", "range", "now", "static", "openMobile", "placeholder", "calendars", "min", "max", "validate", "name", "nameFrom", "nameTo", "label", "labelFrom", "labelTo", "modeModalSubHeadingText", "modeModalSubHeadingTextRange", "selectModeHeadingText", "inputModeHeadingText", "useHelperText", "weekStartDay", "switch", "fullScreen", "today", "clear", "heading", "actions", "fullWidth", "readOnly", "disabled", "valid", "onClick", "onClose", "onToday", "onClear", "onCancel", "onOk", "Icon", "IconEnter", "IconClose", "WrapperProps", "CalendarProps", "CalendarPropsDesktop", "CalendarPropsMobile", "IconButtonProps", "AdvancedTextFieldProps", "TooltipProps", "ButtonProps", "ModalProps", "IconProps", "MobileSurfaceProps", "className"]);
145
- const { classes } = useStyle();
146
- const refs = {
147
- root: react_1.default.useRef(undefined)
148
- };
149
- const keys = react_1.default.useMemo(() => {
150
- const result = [];
151
- const items = [switch__, useHelperText_];
152
- items.forEach(item => {
153
- if ((0, utils_1.is)('object', item))
154
- Object.keys(item).filter(key => theme.breakpoints.media[key]).forEach(key => result.push(key));
155
- });
156
- return (0, utils_1.unique)(result);
157
- }, [switch__, useHelperText_]);
158
- const breakpoints = {};
159
- keys.forEach(key => {
160
- breakpoints[key] = (0, useMediaQuery_1.default)(theme.breakpoints.media[key], { element: refs.root.current });
76
+ },
77
+ mobile_fullScreen: {
78
+ height: '100vh',
79
+ width: '100vw',
80
+ margin: '0',
81
+ maxWidth: 'unset',
82
+ borderRadius: '0'
83
+ },
84
+ modal_input: {
85
+ width: '100%',
86
+ padding: `${theme.methods.space.value(2, 'px')} ${theme.methods.space.value(3, 'px')} ${theme.methods.space.value(2, 'px')}`,
87
+ marginBottom: '12px',
88
+ flex: '1 1 auto'
89
+ },
90
+ dayNames: {
91
+ width: '100%',
92
+ padding: `0 ${theme.methods.space.value(1, 'px')}`
93
+ },
94
+ dayName: {
95
+ width: '40px',
96
+ height: '40px',
97
+ flex: '1 1 auto',
98
+ userSelect: 'none'
99
+ },
100
+ heading: {
101
+ width: '100%',
102
+ marginBottom: '12px'
103
+ },
104
+ heading_fullScreen: {
105
+ paddingInline: `${theme.methods.space.value(7.5, 'px')} ${theme.methods.space.value(1.5, 'px')}`
106
+ },
107
+ subheading: {
108
+ width: '100%',
109
+ marginBottom: '36px'
110
+ },
111
+ subheading_fullScreen: {
112
+ margin: '8px 0',
113
+ marginInlineStart: '60px'
114
+ },
115
+ divider: {
116
+ '&.onesy-Divider-root': {
117
+ margin: '0'
118
+ }
119
+ }
120
+ }), {
121
+ name: 'onesy-DatePicker'
122
+ });
123
+ const SEPARATOR_SYMBOL = exports.SEPARATOR_SYMBOL = `–`;
124
+ const SEPARATOR = exports.SEPARATOR = ` ${SEPARATOR_SYMBOL} `;
125
+ const DatePicker = /*#__PURE__*/_react.default.forwardRef((props__, ref) => {
126
+ const theme = (0, _styleReact.useOnesyTheme)();
127
+ const l = theme.l;
128
+ const props = _react.default.useMemo(() => {
129
+ var _theme$ui, _theme$ui2;
130
+ return _objectSpread(_objectSpread(_objectSpread({}, theme === null || theme === void 0 || (_theme$ui = theme.ui) === null || _theme$ui === void 0 || (_theme$ui = _theme$ui.elements) === null || _theme$ui === void 0 || (_theme$ui = _theme$ui.all) === null || _theme$ui === void 0 || (_theme$ui = _theme$ui.props) === null || _theme$ui === void 0 ? void 0 : _theme$ui.default), theme === null || theme === void 0 || (_theme$ui2 = theme.ui) === null || _theme$ui2 === void 0 || (_theme$ui2 = _theme$ui2.elements) === null || _theme$ui2 === void 0 || (_theme$ui2 = _theme$ui2.onesyDatePicker) === null || _theme$ui2 === void 0 || (_theme$ui2 = _theme$ui2.props) === null || _theme$ui2 === void 0 ? void 0 : _theme$ui2.default), props__);
131
+ }, [props__]);
132
+ const Line = _react.default.useMemo(() => {
133
+ var _theme$elements;
134
+ return (theme === null || theme === void 0 || (_theme$elements = theme.elements) === null || _theme$elements === void 0 ? void 0 : _theme$elements.Line) || _Line.default;
135
+ }, [theme]);
136
+ const IconButton = _react.default.useMemo(() => {
137
+ var _theme$elements2;
138
+ return (theme === null || theme === void 0 || (_theme$elements2 = theme.elements) === null || _theme$elements2 === void 0 ? void 0 : _theme$elements2.IconButton) || _IconButton.default;
139
+ }, [theme]);
140
+ const Button = _react.default.useMemo(() => {
141
+ var _theme$elements3;
142
+ return (theme === null || theme === void 0 || (_theme$elements3 = theme.elements) === null || _theme$elements3 === void 0 ? void 0 : _theme$elements3.Button) || _Button.default;
143
+ }, [theme]);
144
+ const AdvancedTextField = _react.default.useMemo(() => {
145
+ var _theme$elements4;
146
+ return (theme === null || theme === void 0 || (_theme$elements4 = theme.elements) === null || _theme$elements4 === void 0 ? void 0 : _theme$elements4.AdvancedTextField) || _AdvancedTextField.default;
147
+ }, [theme]);
148
+ const Modal = _react.default.useMemo(() => {
149
+ var _theme$elements5;
150
+ return (theme === null || theme === void 0 || (_theme$elements5 = theme.elements) === null || _theme$elements5 === void 0 ? void 0 : _theme$elements5.Modal) || _Modal.default;
151
+ }, [theme]);
152
+ const Tooltip = _react.default.useMemo(() => {
153
+ var _theme$elements6;
154
+ return (theme === null || theme === void 0 || (_theme$elements6 = theme.elements) === null || _theme$elements6 === void 0 ? void 0 : _theme$elements6.Tooltip) || _Tooltip.default;
155
+ }, [theme]);
156
+ const Surface = _react.default.useMemo(() => {
157
+ var _theme$elements7;
158
+ return (theme === null || theme === void 0 || (_theme$elements7 = theme.elements) === null || _theme$elements7 === void 0 ? void 0 : _theme$elements7.Surface) || _Surface.default;
159
+ }, [theme]);
160
+ const Type = _react.default.useMemo(() => {
161
+ var _theme$elements8;
162
+ return (theme === null || theme === void 0 || (_theme$elements8 = theme.elements) === null || _theme$elements8 === void 0 ? void 0 : _theme$elements8.Type) || _Type.default;
163
+ }, [theme]);
164
+ const Calendar = _react.default.useMemo(() => {
165
+ var _theme$elements9;
166
+ return (theme === null || theme === void 0 || (_theme$elements9 = theme.elements) === null || _theme$elements9 === void 0 ? void 0 : _theme$elements9.Calendar) || _Calendar.default;
167
+ }, [theme]);
168
+ const Divider = _react.default.useMemo(() => {
169
+ var _theme$elements10;
170
+ return (theme === null || theme === void 0 || (_theme$elements10 = theme.elements) === null || _theme$elements10 === void 0 ? void 0 : _theme$elements10.Divider) || _Divider.default;
171
+ }, [theme]);
172
+ const Slide = _react.default.useMemo(() => {
173
+ var _theme$elements11;
174
+ return (theme === null || theme === void 0 || (_theme$elements11 = theme.elements) === null || _theme$elements11 === void 0 ? void 0 : _theme$elements11.Slide) || _Slide.default;
175
+ }, [theme]);
176
+ const ClickListener = _react.default.useMemo(() => {
177
+ var _theme$elements12;
178
+ return (theme === null || theme === void 0 || (_theme$elements12 = theme.elements) === null || _theme$elements12 === void 0 ? void 0 : _theme$elements12.ClickListener) || _ClickListener.default;
179
+ }, [theme]);
180
+ const {
181
+ tonal = true,
182
+ color = 'primary',
183
+ version: version_ = 'auto',
184
+ size = 'regular',
185
+ value: value_,
186
+ valueDefault,
187
+ onChange,
188
+ calendar: calendar_,
189
+ calendarDefault,
190
+ onChangeCalendar,
191
+ range,
192
+ now,
193
+ static: static_,
194
+ openMobile = 'select',
195
+ placeholder: placeholder_,
196
+ calendars = props.range ? 2 : 1,
197
+ min,
198
+ max,
199
+ validate,
200
+ name,
201
+ nameFrom,
202
+ nameTo,
203
+ label: label_,
204
+ labelFrom: labelFrom_ = l('Date from'),
205
+ labelTo: labelTo_ = l('Date to'),
206
+ modeModalSubHeadingText = l('Select date'),
207
+ modeModalSubHeadingTextRange = `${l('Date from')}${SEPARATOR}${l('Date to')}`,
208
+ selectModeHeadingText = l('Select date'),
209
+ inputModeHeadingText = l('Enter date'),
210
+ useHelperText: useHelperText_,
211
+ weekStartDay = 'Monday',
212
+ switch: switch__,
213
+ fullScreen,
214
+ today,
215
+ clear = true,
216
+ heading: heading_ = true,
217
+ actions: actions_ = true,
218
+ fullWidth,
219
+ readOnly,
220
+ disabled,
221
+ valid: valid_,
222
+ onClick: onClick_,
223
+ onClose: onClose_,
224
+ onToday: onToday_,
225
+ onClear: onClear_,
226
+ onCancel: onCancel_,
227
+ onOk: onOk_,
228
+ Icon: Icon_ = _IconMaterialCalendarTodayW100Filled.default,
229
+ IconEnter = _IconMaterialEditW.default,
230
+ IconClose = _IconMaterialCloseW.default,
231
+ WrapperProps,
232
+ CalendarProps,
233
+ CalendarPropsDesktop,
234
+ CalendarPropsMobile,
235
+ IconButtonProps,
236
+ AdvancedTextFieldProps,
237
+ TooltipProps,
238
+ ButtonProps,
239
+ ModalProps,
240
+ IconProps,
241
+ MobileSurfaceProps,
242
+ className
243
+ } = props,
244
+ other = (0, _objectWithoutProperties2.default)(props, _excluded);
245
+ const {
246
+ classes
247
+ } = useStyle();
248
+ const refs = {
249
+ root: _react.default.useRef(undefined)
250
+ };
251
+ const keys = _react.default.useMemo(() => {
252
+ const result = [];
253
+ const items = [switch__, useHelperText_];
254
+ items.forEach(item => {
255
+ if ((0, _utils.is)('object', item)) Object.keys(item).filter(key => theme.breakpoints.media[key]).forEach(key => result.push(key));
161
256
  });
162
- const label = name !== undefined ? name : label_;
163
- const switch_ = (0, utils_2.valueBreakpoints)(switch__, true, breakpoints, theme);
164
- const useHelperText = (0, utils_2.valueBreakpoints)(useHelperText_, undefined, breakpoints, theme);
165
- const touch = (0, useMediaQuery_1.default)('(pointer: coarse)', { element: refs.root.current });
166
- const [value, setValue] = react_1.default.useState(() => {
167
- const valueResult = (valueDefault !== undefined ? valueDefault : value_) || (now && (range ? [new date_1.OnesyDate(), new date_1.OnesyDate()] : [new date_1.OnesyDate()]));
168
- return ((0, utils_1.is)('array', valueResult) ? valueResult : [valueResult]).filter(Boolean);
257
+ return (0, _utils.unique)(result);
258
+ }, [switch__, useHelperText_]);
259
+ const breakpoints = {};
260
+ keys.forEach(key => {
261
+ breakpoints[key] = (0, _useMediaQuery.default)(theme.breakpoints.media[key], {
262
+ element: refs.root.current
169
263
  });
170
- const [calendar, setCalendar] = react_1.default.useState((calendarDefault !== undefined ? calendarDefault : calendar_) || new date_1.OnesyDate());
171
- const [open, setOpen] = react_1.default.useState(false);
172
- const [mode, setMode] = react_1.default.useState((touch ? openMobile : 'select') || 'select');
173
- const [error, setError] = react_1.default.useState(false);
174
- const valueToInput = react_1.default.useCallback((valueNew = value) => {
175
- let result = '';
176
- const [from, to] = (0, utils_1.is)('array', valueNew) ? valueNew : [valueNew];
177
- if (!(from || to))
178
- return '';
179
- const method = (item) => `${(0, date_1.format)(item, 'DD', { l })}/${(0, date_1.format)(item, 'MM', { l })}/${(0, date_1.format)(item, 'YYYY', { l })}`;
180
- result += `${method(from)}`;
181
- if (range && to)
182
- result += `${exports.SEPARATOR}${method(to)}`;
183
- return result;
184
- }, [value, range]);
185
- const [input, setInput] = react_1.default.useState(valueToInput());
186
- const [inputModal, setInputModal] = react_1.default.useState(valueToInput());
187
- let version = version_;
188
- if (version === 'auto') {
189
- if (touch)
190
- version = 'mobile';
191
- else
192
- version = 'desktop';
264
+ });
265
+ const label = name !== undefined ? name : label_;
266
+ const switch_ = (0, _utils2.valueBreakpoints)(switch__, true, breakpoints, theme);
267
+ const useHelperText = (0, _utils2.valueBreakpoints)(useHelperText_, undefined, breakpoints, theme);
268
+ const touch = (0, _useMediaQuery.default)('(pointer: coarse)', {
269
+ element: refs.root.current
270
+ });
271
+ const [value, setValue] = _react.default.useState(() => {
272
+ const valueResult = (valueDefault !== undefined ? valueDefault : value_) || now && (range ? [new _date.OnesyDate(), new _date.OnesyDate()] : [new _date.OnesyDate()]);
273
+ return ((0, _utils.is)('array', valueResult) ? valueResult : [valueResult]).filter(Boolean);
274
+ });
275
+ const [calendar, setCalendar] = _react.default.useState((calendarDefault !== undefined ? calendarDefault : calendar_) || new _date.OnesyDate());
276
+ const [open, setOpen] = _react.default.useState(false);
277
+ const [mode, setMode] = _react.default.useState((touch ? openMobile : 'select') || 'select');
278
+ const [error, setError] = _react.default.useState(false);
279
+ const valueToInput = _react.default.useCallback((valueNew = value) => {
280
+ let result = '';
281
+ const [from, to] = (0, _utils.is)('array', valueNew) ? valueNew : [valueNew];
282
+ if (!(from || to)) return '';
283
+ const method = item => `${(0, _date.format)(item, 'DD', {
284
+ l
285
+ })}/${(0, _date.format)(item, 'MM', {
286
+ l
287
+ })}/${(0, _date.format)(item, 'YYYY', {
288
+ l
289
+ })}`;
290
+ result += `${method(from)}`;
291
+ if (range && to) result += `${SEPARATOR}${method(to)}`;
292
+ return result;
293
+ }, [value, range]);
294
+ const [input, setInput] = _react.default.useState(valueToInput());
295
+ const [inputModal, setInputModal] = _react.default.useState(valueToInput());
296
+ let version = version_;
297
+ if (version === 'auto') {
298
+ if (touch) version = 'mobile';else version = 'desktop';
299
+ }
300
+ const onUpdateValue = valueNew_ => {
301
+ const valueNew = (0, _utils.is)('array', valueNew_) ? valueNew_ : [valueNew_];
302
+ const dateNow = new _date.OnesyDate();
303
+
304
+ // Update value
305
+ setValue(valueNew);
306
+
307
+ // Update calendar
308
+ onUpdateCalendar(valueNew[0] || dateNow);
309
+
310
+ // Update input
311
+ setInput(valueToInput(valueNew));
312
+
313
+ // Update input modal
314
+ setInputModal(valueToInput(valueNew));
315
+ };
316
+ const errorCheck = _react.default.useCallback((valueNew = value) => {
317
+ // Error
318
+ setError((valueNew || []).some((item, index) => !valid(item)));
319
+ }, [value]);
320
+
321
+ // Init
322
+ _react.default.useEffect(() => {
323
+ // Error
324
+ errorCheck();
325
+ }, []);
326
+
327
+ // Value
328
+ _react.default.useEffect(() => {
329
+ if (value_ !== undefined && value_ !== value) onUpdateValue(((0, _utils.is)('array', value_) ? value_ : [value_]).filter(Boolean));
330
+ }, [value_]);
331
+
332
+ // Calendar
333
+ _react.default.useEffect(() => {
334
+ if (calendar_ !== undefined && calendar_ !== calendar) setCalendar(calendar_);
335
+ }, [calendar_]);
336
+ const onUpdate = _react.default.useCallback(valueNew => {
337
+ // Inner update
338
+ if (!props.hasOwnProperty('value')) setValue(valueNew);
339
+ if ((0, _utils.is)('function', onChange)) onChange(!range ? valueNew[0] : valueNew);
340
+ }, [onChange, range]);
341
+ const onUpdateCalendar = _react.default.useCallback(valueNew => {
342
+ // Inner update
343
+ if (!props.hasOwnProperty('calendar')) setCalendar(valueNew);
344
+ if ((0, _utils.is)('function', onChangeCalendar)) onChangeCalendar(valueNew);
345
+ }, [onChangeCalendar]);
346
+
347
+ // Update only internally, without using onChange
348
+ // since it might be canceled
349
+ // only use onChange on
350
+ // input change, or ok
351
+ const onCalendarChange = _react.default.useCallback(valueNew_ => {
352
+ const valueNew = (0, _utils.is)('array', valueNew_) ? valueNew_ : [valueNew_];
353
+ if (valueNew !== value) {
354
+ (!actions_ ? onUpdate : setValue)(valueNew);
355
+
356
+ // Update input modal
357
+ setInputModal(valueToInput(valueNew));
358
+ }
359
+ }, [value, actions_]);
360
+ const onCalendarChangeCalendar = _react.default.useCallback(valueNew => {
361
+ if (valueNew !== calendar) onUpdateCalendar(valueNew);
362
+ }, [calendar]);
363
+ const inputToValue = _react.default.useCallback((valueNew_ = input) => {
364
+ let valueNew = valueNew_;
365
+ let [from, to] = valueNew.split(SEPARATOR);
366
+ from = textToOnesyDate(from);
367
+ if (to) to = textToOnesyDate(to, false);
368
+ valueNew = [from, to].filter(Boolean);
369
+ return valueNew;
370
+ }, [input]);
371
+ const onOpen = _react.default.useCallback(() => {
372
+ onMode();
373
+ setOpen(!open);
374
+ }, [open, openMobile, version]);
375
+ const onClose = _react.default.useCallback(event => {
376
+ setOpen(false);
377
+ if ((0, _utils.is)('function', onClose_)) onClose_(event);
378
+ }, [onClose_]);
379
+ const onReset = _react.default.useCallback(() => {
380
+ var _valueNew;
381
+ let valueNew = inputToValue();
382
+ const isValid = valueNew && ((_valueNew = valueNew) === null || _valueNew === void 0 || (_valueNew = _valueNew[0]) === null || _valueNew === void 0 ? void 0 : _valueNew.valid);
383
+ if (isValid) {
384
+ // Update value
385
+ onUpdate(valueNew);
386
+
387
+ // Update calendar
388
+ onUpdateCalendar(valueNew[0]);
389
+
390
+ // Update input modal
391
+ setInputModal(input);
392
+ } else {
393
+ const dateNow = new _date.OnesyDate();
394
+ valueNew = [];
395
+
396
+ // Update value
397
+ onUpdate(valueNew);
398
+
399
+ // Update calendar
400
+ onUpdateCalendar(dateNow);
401
+
402
+ // Update input
403
+ setInput(valueToInput(valueNew));
404
+
405
+ // Update input modal
406
+ setInputModal(valueToInput(valueNew));
193
407
  }
194
- const onUpdateValue = (valueNew_) => {
195
- const valueNew = (0, utils_1.is)('array', valueNew_) ? valueNew_ : [valueNew_];
196
- const dateNow = new date_1.OnesyDate();
197
- // Update value
198
- setValue(valueNew);
199
- // Update calendar
200
- onUpdateCalendar(valueNew[0] || dateNow);
201
- // Update input
202
- setInput(valueToInput(valueNew));
203
- // Update input modal
204
- setInputModal(valueToInput(valueNew));
205
- };
206
- const errorCheck = react_1.default.useCallback((valueNew = value) => {
207
- // Error
208
- setError((valueNew || []).some((item, index) => !valid(item)));
209
- }, [value]);
210
- // Init
211
- react_1.default.useEffect(() => {
212
- // Error
213
- errorCheck();
214
- }, []);
215
- // Value
216
- react_1.default.useEffect(() => {
217
- if (value_ !== undefined && value_ !== value)
218
- onUpdateValue((((0, utils_1.is)('array', value_) ? value_ : [value_]).filter(Boolean)));
219
- }, [value_]);
220
- // Calendar
221
- react_1.default.useEffect(() => {
222
- if (calendar_ !== undefined && calendar_ !== calendar)
223
- setCalendar(calendar_);
224
- }, [calendar_]);
225
- const onUpdate = react_1.default.useCallback((valueNew) => {
226
- // Inner update
227
- if (!props.hasOwnProperty('value'))
228
- setValue(valueNew);
229
- if ((0, utils_1.is)('function', onChange))
230
- onChange(!range ? valueNew[0] : valueNew);
231
- }, [onChange, range]);
232
- const onUpdateCalendar = react_1.default.useCallback((valueNew) => {
233
- // Inner update
234
- if (!props.hasOwnProperty('calendar'))
235
- setCalendar(valueNew);
236
- if ((0, utils_1.is)('function', onChangeCalendar))
237
- onChangeCalendar(valueNew);
238
- }, [onChangeCalendar]);
239
- // Update only internally, without using onChange
240
- // since it might be canceled
241
- // only use onChange on
242
- // input change, or ok
243
- const onCalendarChange = react_1.default.useCallback((valueNew_) => {
244
- const valueNew = (0, utils_1.is)('array', valueNew_) ? valueNew_ : [valueNew_];
245
- if (valueNew !== value) {
246
- (!actions_ ? onUpdate : setValue)(valueNew);
247
- // Update input modal
248
- setInputModal(valueToInput(valueNew));
249
- }
250
- }, [value, actions_]);
251
- const onCalendarChangeCalendar = react_1.default.useCallback((valueNew) => {
252
- if (valueNew !== calendar)
253
- onUpdateCalendar(valueNew);
254
- }, [calendar]);
255
- const inputToValue = react_1.default.useCallback((valueNew_ = input) => {
256
- let valueNew = valueNew_;
257
- let [from, to] = valueNew.split(exports.SEPARATOR);
258
- from = textToOnesyDate(from);
259
- if (to)
260
- to = textToOnesyDate(to, false);
261
- valueNew = [from, to].filter(Boolean);
262
- return valueNew;
263
- }, [input]);
264
- const onOpen = react_1.default.useCallback(() => {
265
- onMode();
266
- setOpen(!open);
267
- }, [open, openMobile, version]);
268
- const onClose = react_1.default.useCallback((event) => {
269
- setOpen(false);
270
- if ((0, utils_1.is)('function', onClose_))
271
- onClose_(event);
272
- }, [onClose_]);
273
- const onReset = react_1.default.useCallback(() => {
274
- var _a;
275
- let valueNew = inputToValue();
276
- const isValid = valueNew && ((_a = valueNew === null || valueNew === void 0 ? void 0 : valueNew[0]) === null || _a === void 0 ? void 0 : _a.valid);
277
- if (isValid) {
278
- // Update value
279
- onUpdate(valueNew);
280
- // Update calendar
281
- onUpdateCalendar(valueNew[0]);
282
- // Update input modal
283
- setInputModal(input);
284
- }
285
- else {
286
- const dateNow = new date_1.OnesyDate();
287
- valueNew = [];
288
- // Update value
289
- onUpdate(valueNew);
290
- // Update calendar
291
- onUpdateCalendar(dateNow);
292
- // Update input
293
- setInput(valueToInput(valueNew));
294
- // Update input modal
295
- setInputModal(valueToInput(valueNew));
296
- }
297
- }, [input]);
298
- const onToday = react_1.default.useCallback((event) => {
299
- const valueNew = [(0, date_1.startOf)(new date_1.OnesyDate(), 'day')];
300
- if (range)
301
- valueNew.push((0, date_1.endOf)(new date_1.OnesyDate(), 'day'));
302
- // Update value
303
- onUpdate(valueNew);
304
- // Update calendar
305
- onUpdateCalendar(valueNew[0]);
306
- // Update input
307
- setInput(valueToInput(valueNew));
308
- // Update input modal
309
- setInputModal(valueToInput(valueNew));
310
- onClose(event);
311
- if ((0, utils_1.is)('function', onToday_))
312
- onToday_(event);
313
- }, [input, range, onToday_]);
314
- const onClear = react_1.default.useCallback((event) => {
315
- const dateNow = new date_1.OnesyDate();
316
- const valueNew = [];
317
- // Update value
318
- onUpdate(valueNew);
319
- // Update calendar
320
- onUpdateCalendar(dateNow);
321
- // Update input
322
- setInput(valueToInput(valueNew));
323
- // Update input modal
324
- setInputModal(valueToInput(valueNew));
325
- onClose(event);
326
- if ((0, utils_1.is)('function', onClear_))
327
- onClear_(event);
328
- }, [onClear_]);
329
- const onOk = react_1.default.useCallback((event) => {
330
- // Error
331
- errorCheck();
332
- // Update value
333
- onUpdate(value);
334
- // Update input
335
- setInput(valueToInput(value));
336
- // Update input modal
337
- setInputModal(valueToInput(value));
338
- onClose(event);
339
- if ((0, utils_1.is)('function', onOk_))
340
- onOk_(event);
341
- }, [value, onOk_]);
342
- const onCancel = react_1.default.useCallback((event) => {
343
- onReset();
344
- onClose(event);
345
- if ((0, utils_1.is)('function', onCancel_))
346
- onCancel_(event);
347
- }, [input, onCancel_]);
348
- const valid = react_1.default.useCallback((...args) => {
349
- if ((0, utils_1.is)('function', valid_))
350
- return valid_(...args);
351
- const onesyDate = args[0];
352
- if (min || max || validate) {
353
- let response = true;
354
- if ((0, utils_1.is)('function', validate))
355
- response = validate(onesyDate);
356
- if (min !== undefined)
357
- response = response && (0, date_1.is)(onesyDate, 'after or same', min);
358
- if (max !== undefined)
359
- response = response && (0, date_1.is)(onesyDate, 'before or same', max);
360
- return response;
361
- }
362
- return true;
363
- }, [valid_, min, max, validate]);
364
- const textToOnesyDate = react_1.default.useCallback((valueNew, start = true) => {
365
- const [valueDay, valueMonth, valueYear] = (valueNew || '').split('/');
366
- const onesyDate = new date_1.OnesyDate(new Date(`${valueMonth}/${valueDay}/${valueYear}`));
367
- return start ? (0, date_1.startOf)(onesyDate, 'day') : (0, date_1.endOf)(onesyDate, 'day');
368
- }, []);
369
- const onInputChange = react_1.default.useCallback((valueNew_) => {
370
- const valueNew = inputToValue(valueNew_);
371
- const validValues = valueNew.every(item => item.valid);
372
- // Only update values if input is valid
373
- // format used to make the value
374
- if (validValues) {
375
- // Error
376
- errorCheck(valueNew);
377
- // Update value
378
- onUpdate(valueNew);
379
- // Update calendar
380
- onUpdateCalendar(valueNew[0]);
381
- }
382
- if (!valueNew_) {
383
- onUpdate([null, null]);
384
- }
385
- // Update input for free typing
386
- setInput(valueNew_);
387
- }, []);
388
- const onInputChangeModal = react_1.default.useCallback((valueNew_) => {
389
- const valueNew = inputToValue(valueNew_);
390
- const validValues = valueNew.every(item => item.valid);
391
- // Only update values if input is valid
392
- // format used to make the value
393
- if (validValues) {
394
- // Error
395
- errorCheck(valueNew);
396
- // Update value
397
- onUpdate(valueNew);
398
- // Update calendar
399
- onUpdateCalendar(valueNew[0]);
400
- }
401
- // Update input for free typing
402
- setInputModal(valueNew_);
403
- }, []);
404
- const onMode = react_1.default.useCallback((mode_ = openMobile) => {
405
- setMode(() => mode_);
406
- }, []);
407
- const mask = [
408
- { pattern: '[0-3]' },
409
- (item, result, valueInput) => /^(0[0-9]|1[0-9]|2[0-9]|3[0-1]).*/.test(valueInput),
410
- '/',
411
- { pattern: '[0-1]' },
412
- (item, result, valueInput) => /^(0[0-9]|1[0-9]|2[0-9]|3[0-1])\/(0[0-9]|1[0-2])/.test(valueInput),
413
- '/',
414
- { pattern: '[1-2]' },
415
- { pattern: '[0-9]' },
416
- { pattern: '[0-9]' },
417
- { pattern: '[0-9]' }
418
- ];
419
- let placeholder = `DD/MM/YYYY`;
420
- // range
421
- if (range) {
422
- mask.push(' ', exports.SEPARATOR_SYMBOL, ' ', ...mask);
423
- placeholder += `${exports.SEPARATOR}${placeholder}`;
408
+ }, [input]);
409
+ const onToday = _react.default.useCallback(event => {
410
+ const valueNew = [(0, _date.startOf)(new _date.OnesyDate(), 'day')];
411
+ if (range) valueNew.push((0, _date.endOf)(new _date.OnesyDate(), 'day'));
412
+
413
+ // Update value
414
+ onUpdate(valueNew);
415
+
416
+ // Update calendar
417
+ onUpdateCalendar(valueNew[0]);
418
+
419
+ // Update input
420
+ setInput(valueToInput(valueNew));
421
+
422
+ // Update input modal
423
+ setInputModal(valueToInput(valueNew));
424
+ onClose(event);
425
+ if ((0, _utils.is)('function', onToday_)) onToday_(event);
426
+ }, [input, range, onToday_]);
427
+ const onClear = _react.default.useCallback(event => {
428
+ const dateNow = new _date.OnesyDate();
429
+ const valueNew = [];
430
+
431
+ // Update value
432
+ onUpdate(valueNew);
433
+
434
+ // Update calendar
435
+ onUpdateCalendar(dateNow);
436
+
437
+ // Update input
438
+ setInput(valueToInput(valueNew));
439
+
440
+ // Update input modal
441
+ setInputModal(valueToInput(valueNew));
442
+ onClose(event);
443
+ if ((0, _utils.is)('function', onClear_)) onClear_(event);
444
+ }, [onClear_]);
445
+ const onOk = _react.default.useCallback(event => {
446
+ // Error
447
+ errorCheck();
448
+
449
+ // Update value
450
+ onUpdate(value);
451
+
452
+ // Update input
453
+ setInput(valueToInput(value));
454
+
455
+ // Update input modal
456
+ setInputModal(valueToInput(value));
457
+ onClose(event);
458
+ if ((0, _utils.is)('function', onOk_)) onOk_(event);
459
+ }, [value, onOk_]);
460
+ const onCancel = _react.default.useCallback(event => {
461
+ onReset();
462
+ onClose(event);
463
+ if ((0, _utils.is)('function', onCancel_)) onCancel_(event);
464
+ }, [input, onCancel_]);
465
+ const valid = _react.default.useCallback((...args) => {
466
+ if ((0, _utils.is)('function', valid_)) return valid_(...args);
467
+ const onesyDate = args[0];
468
+ if (min || max || validate) {
469
+ let response = true;
470
+ if ((0, _utils.is)('function', validate)) response = validate(onesyDate);
471
+ if (min !== undefined) response = response && (0, _date.is)(onesyDate, 'after or same', min);
472
+ if (max !== undefined) response = response && (0, _date.is)(onesyDate, 'before or same', max);
473
+ return response;
424
474
  }
425
- placeholder = placeholder_ || placeholder;
426
- const buttonProps = Object.assign({ color: 'inherit', version: 'text', size }, ButtonProps);
427
- const iconButtonProps = Object.assign({ size }, IconButtonProps);
428
- const actions = ((0, jsx_runtime_1.jsxs)(Line, Object.assign({ direction: 'row', align: 'center', justify: 'space-between', className: (0, style_react_1.classNames)([
429
- (0, utils_2.staticClassName)('DatePicker', theme) && [
430
- 'onesy-DatePicker-actions'
431
- ],
432
- classes.actions
433
- ]) }, { children: [(today || clear) && ((0, jsx_runtime_1.jsxs)(Line, Object.assign({ gap: 0, direction: 'row', align: 'center' }, { children: [today && ((0, jsx_runtime_1.jsx)(Button, Object.assign({ onClick: onToday }, buttonProps, { children: l('Today') }))), clear && ((0, jsx_runtime_1.jsx)(Button, Object.assign({ onClick: onClear }, buttonProps, { children: l('Clear') })))] }))), (0, jsx_runtime_1.jsxs)(Line, Object.assign({ gap: 0, direction: 'row', align: 'center' }, { children: [(0, jsx_runtime_1.jsx)(Button, Object.assign({ onClick: onCancel }, buttonProps, { children: l('Cancel') })), (0, jsx_runtime_1.jsx)(Button, Object.assign({ onClick: onOk }, buttonProps, { children: l('Ok') }))] }))] })));
434
- const moreProps = {};
435
- if (version === 'desktop') {
436
- moreProps.end = ((0, jsx_runtime_1.jsx)(IconButton, Object.assign({ tonal: tonal, color: color, version: 'text', onClick: onOpen, "aria-label": `${l('Choose date')}${range ? ' range' : ''}`, disabled: disabled || readOnly }, iconButtonProps, { children: (0, jsx_runtime_1.jsx)(Icon_, Object.assign({}, IconProps)) })));
475
+ return true;
476
+ }, [valid_, min, max, validate]);
477
+ const textToOnesyDate = _react.default.useCallback((valueNew, start = true) => {
478
+ const [valueDay, valueMonth, valueYear] = (valueNew || '').split('/');
479
+ const onesyDate = new _date.OnesyDate(new Date(`${valueMonth}/${valueDay}/${valueYear}`));
480
+ return start ? (0, _date.startOf)(onesyDate, 'day') : (0, _date.endOf)(onesyDate, 'day');
481
+ }, []);
482
+ const onInputChange = _react.default.useCallback(valueNew_ => {
483
+ const valueNew = inputToValue(valueNew_);
484
+ const validValues = valueNew.every(item => item.valid);
485
+
486
+ // Only update values if input is valid
487
+ // format used to make the value
488
+ if (validValues) {
489
+ // Error
490
+ errorCheck(valueNew);
491
+
492
+ // Update value
493
+ onUpdate(valueNew);
494
+
495
+ // Update calendar
496
+ onUpdateCalendar(valueNew[0]);
437
497
  }
438
- if (version === 'mobile') {
439
- if (!(readOnly || disabled))
440
- moreProps.onClick = onOpen;
498
+ if (!valueNew_) {
499
+ onUpdate([null, null]);
441
500
  }
442
- let textHeading = `${(0, date_1.format)(value[0], 'd', { l })}, ${(0, date_1.format)(value[0], 'MMM', { l })} ${(0, date_1.format)(value[0], 'DD', { l })}`;
443
- if (range) {
444
- textHeading = `${(0, date_1.format)(value[0], 'MMM', { l })} ${(0, date_1.format)(value[0], 'DD', { l })}${exports.SEPARATOR}${(0, date_1.format)(value[1], 'MMM', { l })} ${(0, date_1.format)(value[1], 'DD', { l })}`;
501
+
502
+ // Update input for free typing
503
+ setInput(valueNew_);
504
+ }, []);
505
+ const onInputChangeModal = _react.default.useCallback(valueNew_ => {
506
+ const valueNew = inputToValue(valueNew_);
507
+ const validValues = valueNew.every(item => item.valid);
508
+
509
+ // Only update values if input is valid
510
+ // format used to make the value
511
+ if (validValues) {
512
+ // Error
513
+ errorCheck(valueNew);
514
+
515
+ // Update value
516
+ onUpdate(valueNew);
517
+
518
+ // Update calendar
519
+ onUpdateCalendar(valueNew[0]);
445
520
  }
446
- const dayNames = [l('Mo'), l('Tu'), l('We'), l('Th'), l('Fr'), l('Sa'), l('Su')];
447
- const mobile = ((0, jsx_runtime_1.jsxs)(Surface, Object.assign({ color: 'default', tonal: tonal, gap: 0, direction: 'column', Component: Line, className: (0, style_react_1.classNames)([
448
- (0, utils_2.staticClassName)('DatePicker', theme) && [
449
- 'onesy-DatePicker-mobile'
450
- ],
451
- classes.mobile,
452
- fullScreen && classes.mobile_fullScreen
453
- ]) }, MobileSurfaceProps, { children: [(0, jsx_runtime_1.jsxs)(Line, Object.assign({ gap: 0, direction: 'column', className: (0, style_react_1.classNames)([
454
- (0, utils_2.staticClassName)('DatePicker', theme) && [
455
- 'onesy-DatePicker-header'
456
- ],
457
- classes.header,
458
- fullScreen && classes.header_fullScreen
459
- ]) }, { children: [actions_ && fullScreen && ((0, jsx_runtime_1.jsxs)(Line, Object.assign({ gap: 0, direction: 'row', align: 'center', justify: 'space-between', style: {
460
- width: '100%',
461
- marginBottom: 8,
462
- padding: `0px ${theme.methods.space.value(1, 'px')} 0px ${theme.methods.space.value(1.5, 'px')}`
463
- } }, { children: [(0, jsx_runtime_1.jsx)(IconButton, Object.assign({ color: 'inherit', version: 'text', onClick: onClose, "aria-label": l('Close') }, iconButtonProps, { children: (0, jsx_runtime_1.jsx)(IconClose, Object.assign({}, IconProps)) })), (0, jsx_runtime_1.jsx)(Button, Object.assign({ onClick: onOk }, buttonProps, { children: l('Save') }))] }))), heading_ && ((0, jsx_runtime_1.jsx)(Type, Object.assign({ version: 'l2', className: (0, style_react_1.classNames)([
464
- (0, utils_2.staticClassName)('DatePicker', theme) && [
465
- 'onesy-DatePicker-subheading'
466
- ],
467
- classes.subheading,
468
- fullScreen && classes.subheading_fullScreen
469
- ]) }, { children: !range ? modeModalSubHeadingText : modeModalSubHeadingTextRange }))), mode === 'select' && ((0, jsx_runtime_1.jsxs)(Line, Object.assign({ direction: 'row', align: 'center', justify: 'space-between', className: (0, style_react_1.classNames)([
470
- (0, utils_2.staticClassName)('DatePicker', theme) && [
471
- 'onesy-DatePicker-heading'
472
- ],
473
- classes.heading,
474
- fullScreen && classes.heading_fullScreen
475
- ]) }, { children: [(0, jsx_runtime_1.jsx)(Type, Object.assign({ version: 'h1' }, { children: textHeading })), switch_ && ((0, jsx_runtime_1.jsx)(Tooltip, Object.assign({ name: l('Enter date') }, { children: (0, jsx_runtime_1.jsx)(IconButton, Object.assign({ tonal: tonal, color: 'inherit', onClick: () => onMode('input'), "aria-label": l('Enter date') }, iconButtonProps, { children: (0, jsx_runtime_1.jsx)(IconEnter, Object.assign({}, IconProps)) })) })))] }))), mode === 'input' && ((0, jsx_runtime_1.jsxs)(Line, Object.assign({ direction: 'row', align: 'flex-start', justify: 'space-between', className: (0, style_react_1.classNames)([
476
- (0, utils_2.staticClassName)('DatePicker', theme) && [
477
- 'onesy-DatePicker-heading'
478
- ],
479
- classes.heading,
480
- fullScreen && classes.heading_fullScreen
481
- ]) }, { children: [(0, jsx_runtime_1.jsx)(Type, Object.assign({ version: 'h1' }, { children: inputModeHeadingText })), switch_ && ((0, jsx_runtime_1.jsx)(Tooltip, Object.assign({ name: l('Select date') }, { children: (0, jsx_runtime_1.jsx)(IconButton, Object.assign({ tonal: tonal, color: 'inherit', onClick: () => onMode('select'), "aria-label": l('Select date') }, iconButtonProps, { children: (0, jsx_runtime_1.jsx)(Icon_, Object.assign({}, IconProps)) })) })))] })))] })), mode === 'select' && fullScreen && ((0, jsx_runtime_1.jsx)(Line, Object.assign({ gap: 0, direction: 'row', align: 'center', justify: 'space-between', className: (0, style_react_1.classNames)([
482
- (0, utils_2.staticClassName)('DatePicker', theme) && [
483
- 'onesy-DatePicker-day-names'
484
- ],
485
- classes.dayNames
486
- ]) }, { children: dayNames.map((day, index) => ((0, jsx_runtime_1.jsx)(Line, Object.assign({ version: 'b3', direction: 'row', align: 'center', justify: 'center', Component: Type, className: (0, style_react_1.classNames)([
487
- (0, utils_2.staticClassName)('DatePicker', theme) && [
488
- 'onesy-DatePicker-day-name'
489
- ],
490
- classes.dayName
491
- ]) }, { children: day }), index))) }))), (0, jsx_runtime_1.jsx)(Divider, { tonal: false, className: (0, style_react_1.classNames)([
492
- (0, utils_2.staticClassName)('DatePicker', theme) && [
493
- 'onesy-DatePicker-divider'
494
- ],
495
- classes.divider
496
- ]) }), mode === 'select' && ((0, jsx_runtime_1.jsx)(Calendar, Object.assign({ version: !fullScreen ? 'regular' : 'year', tonal: tonal, color: color, value: value, menu: 'month', menu_month_previous_unit: fullScreen ? 'year' : 'month', menu_month_next_unit: fullScreen ? 'year' : 'month', calendar: calendar, onChange: onCalendarChange, onChangeCalendar: onCalendarChangeCalendar, now: now, size: size, range: range, calendars: 1, valid: valid, min: min, max: max, validate: validate }, CalendarProps, CalendarPropsMobile, { CalendarMonthProps: Object.assign(Object.assign({ outside: false, labels: !fullScreen }, CalendarProps === null || CalendarProps === void 0 ? void 0 : CalendarProps.CalendarMonthProps), CalendarPropsMobile === null || CalendarPropsMobile === void 0 ? void 0 : CalendarPropsMobile.CalendarMonthProps), className: (0, style_react_1.classNames)([
497
- (0, utils_2.staticClassName)('DatePicker', theme) && [
498
- 'onesy-DatePicker-calendar',
499
- 'onesy-DatePicker-version-mobile'
500
- ],
501
- CalendarProps === null || CalendarProps === void 0 ? void 0 : CalendarProps.className,
502
- CalendarPropsMobile === null || CalendarPropsMobile === void 0 ? void 0 : CalendarPropsMobile.className,
503
- classes.calendar,
504
- classes.calendar_mobile
505
- ]) }))), mode === 'input' && ((0, jsx_runtime_1.jsx)(Line, Object.assign({ gap: 1.5, direction: 'row', align: 'flex-start', className: (0, style_react_1.classNames)([
506
- classes.modal_input
507
- ]) }, { children: (0, jsx_runtime_1.jsx)(AdvancedTextField, Object.assign({ tonal: tonal, color: color, version: 'outlined', size: size, name: label, mask: mask, placeholder: placeholder, value: inputModal, onChange: onInputChangeModal, helperText: useHelperText ? placeholder : undefined, error: error, readOnly: readOnly, disabled: disabled }, AdvancedTextFieldProps, { className: (0, style_react_1.classNames)([
508
- AdvancedTextFieldProps === null || AdvancedTextFieldProps === void 0 ? void 0 : AdvancedTextFieldProps.className,
509
- classes.input_mobile
510
- ]) })) }))), fullScreen && ((0, jsx_runtime_1.jsx)(Divider, { tonal: false, className: (0, style_react_1.classNames)([
511
- (0, utils_2.staticClassName)('DatePicker', theme) && [
512
- 'onesy-DatePicker-divider'
513
- ],
514
- classes.divider
515
- ]) })), actions_ && react_1.default.cloneElement(actions, {
516
- style: {
517
- paddingTop: theme.methods.space.value(1, 'px')
518
- }
519
- })] })));
520
- const desktop = ((0, jsx_runtime_1.jsx)(Calendar, Object.assign({ value: value, calendar: calendar, onChange: onCalendarChange, onChangeCalendar: onCalendarChangeCalendar, now: now, size: size, range: range, calendars: calendars, valid: valid, min: min, max: max, validate: validate, belowCalendars: actions_ ? actions : undefined }, CalendarProps, CalendarPropsDesktop, { className: (0, style_react_1.classNames)([
521
- (0, utils_2.staticClassName)('DatePicker', theme) && [
522
- 'onesy-DatePicker-calendar',
523
- 'onesy-DatePicker-version-desktop'
524
- ],
525
- CalendarProps === null || CalendarProps === void 0 ? void 0 : CalendarProps.className,
526
- CalendarPropsDesktop === null || CalendarPropsDesktop === void 0 ? void 0 : CalendarPropsDesktop.className,
527
- classes.calendar,
528
- classes.calendar_desktop
529
- ]) })));
530
- if (static_) {
531
- if (version === 'mobile')
532
- return mobile;
533
- if (version === 'desktop')
534
- return desktop;
521
+
522
+ // Update input for free typing
523
+ setInputModal(valueNew_);
524
+ }, []);
525
+ const onMode = _react.default.useCallback((mode_ = openMobile) => {
526
+ setMode(() => mode_);
527
+ }, []);
528
+ const mask = [{
529
+ pattern: '[0-3]'
530
+ }, (item, result, valueInput) => /^(0[0-9]|1[0-9]|2[0-9]|3[0-1]).*/.test(valueInput), '/', {
531
+ pattern: '[0-1]'
532
+ }, (item, result, valueInput) => /^(0[0-9]|1[0-9]|2[0-9]|3[0-1])\/(0[0-9]|1[0-2])/.test(valueInput), '/', {
533
+ pattern: '[1-2]'
534
+ }, {
535
+ pattern: '[0-9]'
536
+ }, {
537
+ pattern: '[0-9]'
538
+ }, {
539
+ pattern: '[0-9]'
540
+ }];
541
+ let placeholder = `DD/MM/YYYY`;
542
+
543
+ // range
544
+ if (range) {
545
+ mask.push(' ', SEPARATOR_SYMBOL, ' ', ...mask);
546
+ placeholder += `${SEPARATOR}${placeholder}`;
547
+ }
548
+ placeholder = placeholder_ || placeholder;
549
+ const buttonProps = _objectSpread({
550
+ color: 'inherit',
551
+ version: 'text',
552
+ size
553
+ }, ButtonProps);
554
+ const iconButtonProps = _objectSpread({
555
+ size
556
+ }, IconButtonProps);
557
+ const actions = /*#__PURE__*/_react.default.createElement(Line, {
558
+ direction: "row",
559
+ align: "center",
560
+ justify: "space-between",
561
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-actions'], classes.actions])
562
+ }, (today || clear) && /*#__PURE__*/_react.default.createElement(Line, {
563
+ gap: 0,
564
+ direction: "row",
565
+ align: "center"
566
+ }, today && /*#__PURE__*/_react.default.createElement(Button, (0, _extends2.default)({
567
+ onClick: onToday
568
+ }, buttonProps), l('Today')), clear && /*#__PURE__*/_react.default.createElement(Button, (0, _extends2.default)({
569
+ onClick: onClear
570
+ }, buttonProps), l('Clear'))), /*#__PURE__*/_react.default.createElement(Line, {
571
+ gap: 0,
572
+ direction: "row",
573
+ align: "center"
574
+ }, /*#__PURE__*/_react.default.createElement(Button, (0, _extends2.default)({
575
+ onClick: onCancel
576
+ }, buttonProps), l('Cancel')), /*#__PURE__*/_react.default.createElement(Button, (0, _extends2.default)({
577
+ onClick: onOk
578
+ }, buttonProps), l('Ok'))));
579
+ const moreProps = {};
580
+ if (version === 'desktop') {
581
+ moreProps.end = /*#__PURE__*/_react.default.createElement(IconButton, (0, _extends2.default)({
582
+ tonal: tonal,
583
+ color: color,
584
+ version: "text",
585
+ onClick: onOpen,
586
+ "aria-label": `${l('Choose date')}${range ? ' range' : ''}`,
587
+ disabled: disabled || readOnly
588
+ }, iconButtonProps), /*#__PURE__*/_react.default.createElement(Icon_, IconProps));
589
+ }
590
+ if (version === 'mobile') {
591
+ if (!(readOnly || disabled)) moreProps.onClick = onOpen;
592
+ }
593
+ let textHeading = `${(0, _date.format)(value[0], 'd', {
594
+ l
595
+ })}, ${(0, _date.format)(value[0], 'MMM', {
596
+ l
597
+ })} ${(0, _date.format)(value[0], 'DD', {
598
+ l
599
+ })}`;
600
+ if (range) {
601
+ textHeading = `${(0, _date.format)(value[0], 'MMM', {
602
+ l
603
+ })} ${(0, _date.format)(value[0], 'DD', {
604
+ l
605
+ })}${SEPARATOR}${(0, _date.format)(value[1], 'MMM', {
606
+ l
607
+ })} ${(0, _date.format)(value[1], 'DD', {
608
+ l
609
+ })}`;
610
+ }
611
+ const dayNames = [l('Mo'), l('Tu'), l('We'), l('Th'), l('Fr'), l('Sa'), l('Su')];
612
+ const mobile = /*#__PURE__*/_react.default.createElement(Surface, (0, _extends2.default)({
613
+ color: "default",
614
+ tonal: tonal,
615
+ gap: 0,
616
+ direction: "column",
617
+ Component: Line,
618
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-mobile'], classes.mobile, fullScreen && classes.mobile_fullScreen])
619
+ }, MobileSurfaceProps), /*#__PURE__*/_react.default.createElement(Line, {
620
+ gap: 0,
621
+ direction: "column",
622
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-header'], classes.header, fullScreen && classes.header_fullScreen])
623
+ }, actions_ && fullScreen && /*#__PURE__*/_react.default.createElement(Line, {
624
+ gap: 0,
625
+ direction: "row",
626
+ align: "center",
627
+ justify: "space-between",
628
+ style: {
629
+ width: '100%',
630
+ marginBottom: 8,
631
+ padding: `0px ${theme.methods.space.value(1, 'px')} 0px ${theme.methods.space.value(1.5, 'px')}`
535
632
  }
536
- return ((0, jsx_runtime_1.jsxs)(Line, Object.assign({ gap: 0, direction: 'column', fullWidth: fullWidth }, WrapperProps, { className: (0, style_react_1.classNames)([
537
- (0, utils_2.staticClassName)('DatePicker', theme) && [
538
- 'onesy-DatePicker-root',
539
- `onesy-DatePicker-version-${version}`,
540
- `onesy-DatePicker-size-${size}`,
541
- WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.className,
542
- range && `onesy-DatePicker-range`,
543
- readOnly && `onesy-DatePicker-read-only`,
544
- disabled && `onesy-DatePicker-disabled`,
545
- fullWidth && 'onesy-full-width'
546
- ],
547
- className,
548
- classes.root
549
- ]) }, { children: [(0, jsx_runtime_1.jsx)(AdvancedTextField, Object.assign({ rootRef: item => {
550
- if (ref) {
551
- if ((0, utils_1.is)('function', ref))
552
- ref(item);
553
- else
554
- ref.current = item;
555
- }
556
- refs.root.current = item;
557
- }, tonal: tonal, color: color, version: 'outlined', size: size, name: label, mask: mask, placeholder: placeholder, value: input, onChange: onInputChange, helperText: useHelperText ? placeholder : undefined, endVerticalAlign: 'center', error: error, fullWidth: fullWidth, readOnly: readOnly, disabled: disabled }, moreProps, other, AdvancedTextFieldProps)), version === 'mobile' && ((0, jsx_runtime_1.jsx)(Modal, Object.assign({ open: open, modalWrapperSurface: false, TransitionComponent: Slide, fullScreen: fullScreen, onClose: onClose }, ModalProps, { children: mobile }))), version === 'desktop' && ((0, jsx_runtime_1.jsx)(Tooltip, Object.assign({ open: open, portal: true, anchorElement: refs.root.current, alignment: 'center', position: 'bottom', hover: false, focus: false, longPress: false, maxWidth: 'unset', noMargin: true, name: ((0, jsx_runtime_1.jsx)(ClickListener, Object.assign({ onClickOutside: onCancel, includeParentQueries: ['.onesy-Calendar-list'] }, { children: desktop }))) }, TooltipProps)))] })));
633
+ }, /*#__PURE__*/_react.default.createElement(IconButton, (0, _extends2.default)({
634
+ color: "inherit",
635
+ version: "text",
636
+ onClick: onClose,
637
+ "aria-label": l('Close')
638
+ }, iconButtonProps), /*#__PURE__*/_react.default.createElement(IconClose, IconProps)), /*#__PURE__*/_react.default.createElement(Button, (0, _extends2.default)({
639
+ onClick: onOk
640
+ }, buttonProps), l('Save'))), heading_ && /*#__PURE__*/_react.default.createElement(Type, {
641
+ version: "l2",
642
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-subheading'], classes.subheading, fullScreen && classes.subheading_fullScreen])
643
+ }, !range ? modeModalSubHeadingText : modeModalSubHeadingTextRange), mode === 'select' && /*#__PURE__*/_react.default.createElement(Line, {
644
+ direction: "row",
645
+ align: "center",
646
+ justify: "space-between",
647
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-heading'], classes.heading, fullScreen && classes.heading_fullScreen])
648
+ }, /*#__PURE__*/_react.default.createElement(Type, {
649
+ version: "h1"
650
+ }, textHeading), switch_ && /*#__PURE__*/_react.default.createElement(Tooltip, {
651
+ name: l('Enter date')
652
+ }, /*#__PURE__*/_react.default.createElement(IconButton, (0, _extends2.default)({
653
+ tonal: tonal,
654
+ color: "inherit",
655
+ onClick: () => onMode('input'),
656
+ "aria-label": l('Enter date')
657
+ }, iconButtonProps), /*#__PURE__*/_react.default.createElement(IconEnter, IconProps)))), mode === 'input' && /*#__PURE__*/_react.default.createElement(Line, {
658
+ direction: "row",
659
+ align: "flex-start",
660
+ justify: "space-between",
661
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-heading'], classes.heading, fullScreen && classes.heading_fullScreen])
662
+ }, /*#__PURE__*/_react.default.createElement(Type, {
663
+ version: "h1"
664
+ }, inputModeHeadingText), switch_ && /*#__PURE__*/_react.default.createElement(Tooltip, {
665
+ name: l('Select date')
666
+ }, /*#__PURE__*/_react.default.createElement(IconButton, (0, _extends2.default)({
667
+ tonal: tonal,
668
+ color: "inherit",
669
+ onClick: () => onMode('select'),
670
+ "aria-label": l('Select date')
671
+ }, iconButtonProps), /*#__PURE__*/_react.default.createElement(Icon_, IconProps))))), mode === 'select' && fullScreen && /*#__PURE__*/_react.default.createElement(Line, {
672
+ gap: 0,
673
+ direction: "row",
674
+ align: "center",
675
+ justify: "space-between",
676
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-day-names'], classes.dayNames])
677
+ }, dayNames.map((day, index) => /*#__PURE__*/_react.default.createElement(Line, {
678
+ key: index,
679
+ version: "b3",
680
+ direction: "row",
681
+ align: "center",
682
+ justify: "center",
683
+ Component: Type,
684
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-day-name'], classes.dayName])
685
+ }, day))), /*#__PURE__*/_react.default.createElement(Divider, {
686
+ tonal: false,
687
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-divider'], classes.divider])
688
+ }), mode === 'select' && /*#__PURE__*/_react.default.createElement(Calendar, (0, _extends2.default)({
689
+ version: !fullScreen ? 'regular' : 'year',
690
+ tonal: tonal,
691
+ color: color,
692
+ value: value,
693
+ menu: "month",
694
+ menu_month_previous_unit: fullScreen ? 'year' : 'month',
695
+ menu_month_next_unit: fullScreen ? 'year' : 'month',
696
+ calendar: calendar,
697
+ onChange: onCalendarChange,
698
+ onChangeCalendar: onCalendarChangeCalendar,
699
+ now: now,
700
+ size: size,
701
+ range: range,
702
+ calendars: 1,
703
+ valid: valid,
704
+ min: min,
705
+ max: max,
706
+ validate: validate
707
+ }, CalendarProps, CalendarPropsMobile, {
708
+ CalendarMonthProps: _objectSpread(_objectSpread({
709
+ outside: false,
710
+ labels: !fullScreen
711
+ }, CalendarProps === null || CalendarProps === void 0 ? void 0 : CalendarProps.CalendarMonthProps), CalendarPropsMobile === null || CalendarPropsMobile === void 0 ? void 0 : CalendarPropsMobile.CalendarMonthProps),
712
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-calendar', 'onesy-DatePicker-version-mobile'], CalendarProps === null || CalendarProps === void 0 ? void 0 : CalendarProps.className, CalendarPropsMobile === null || CalendarPropsMobile === void 0 ? void 0 : CalendarPropsMobile.className, classes.calendar, classes.calendar_mobile])
713
+ })), mode === 'input' && /*#__PURE__*/_react.default.createElement(Line, {
714
+ gap: 1.5,
715
+ direction: "row",
716
+ align: "flex-start",
717
+ className: (0, _styleReact.classNames)([classes.modal_input])
718
+ }, /*#__PURE__*/_react.default.createElement(AdvancedTextField, (0, _extends2.default)({
719
+ tonal: tonal,
720
+ color: color,
721
+ version: "outlined",
722
+ size: size,
723
+ name: label,
724
+ mask: mask,
725
+ placeholder: placeholder,
726
+ value: inputModal,
727
+ onChange: onInputChangeModal,
728
+ helperText: useHelperText ? placeholder : undefined,
729
+ error: error,
730
+ readOnly: readOnly,
731
+ disabled: disabled
732
+ }, AdvancedTextFieldProps, {
733
+ className: (0, _styleReact.classNames)([AdvancedTextFieldProps === null || AdvancedTextFieldProps === void 0 ? void 0 : AdvancedTextFieldProps.className, classes.input_mobile])
734
+ }))), fullScreen && /*#__PURE__*/_react.default.createElement(Divider, {
735
+ tonal: false,
736
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-divider'], classes.divider])
737
+ }), actions_ && /*#__PURE__*/_react.default.cloneElement(actions, {
738
+ style: {
739
+ paddingTop: theme.methods.space.value(1, 'px')
740
+ }
741
+ }));
742
+ const desktop = /*#__PURE__*/_react.default.createElement(Calendar, (0, _extends2.default)({
743
+ value: value,
744
+ calendar: calendar,
745
+ onChange: onCalendarChange,
746
+ onChangeCalendar: onCalendarChangeCalendar,
747
+ now: now,
748
+ size: size,
749
+ range: range,
750
+ calendars: calendars,
751
+ valid: valid,
752
+ min: min,
753
+ max: max,
754
+ validate: validate,
755
+ belowCalendars: actions_ ? actions : undefined
756
+ }, CalendarProps, CalendarPropsDesktop, {
757
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-calendar', 'onesy-DatePicker-version-desktop'], CalendarProps === null || CalendarProps === void 0 ? void 0 : CalendarProps.className, CalendarPropsDesktop === null || CalendarPropsDesktop === void 0 ? void 0 : CalendarPropsDesktop.className, classes.calendar, classes.calendar_desktop])
758
+ }));
759
+ if (static_) {
760
+ if (version === 'mobile') return mobile;
761
+ if (version === 'desktop') return desktop;
762
+ }
763
+ return /*#__PURE__*/_react.default.createElement(Line, (0, _extends2.default)({
764
+ gap: 0,
765
+ direction: "column",
766
+ fullWidth: fullWidth
767
+ }, WrapperProps, {
768
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('DatePicker', theme) && ['onesy-DatePicker-root', `onesy-DatePicker-version-${version}`, `onesy-DatePicker-size-${size}`, WrapperProps === null || WrapperProps === void 0 ? void 0 : WrapperProps.className, range && `onesy-DatePicker-range`, readOnly && `onesy-DatePicker-read-only`, disabled && `onesy-DatePicker-disabled`, fullWidth && 'onesy-full-width'], className, classes.root])
769
+ }), /*#__PURE__*/_react.default.createElement(AdvancedTextField, (0, _extends2.default)({
770
+ rootRef: item => {
771
+ if (ref) {
772
+ if ((0, _utils.is)('function', ref)) ref(item);else ref.current = item;
773
+ }
774
+ refs.root.current = item;
775
+ },
776
+ tonal: tonal,
777
+ color: color,
778
+ version: "outlined",
779
+ size: size,
780
+ name: label,
781
+ mask: mask,
782
+ placeholder: placeholder,
783
+ value: input,
784
+ onChange: onInputChange,
785
+ helperText: useHelperText ? placeholder : undefined,
786
+ endVerticalAlign: "center",
787
+ error: error,
788
+ fullWidth: fullWidth,
789
+ readOnly: readOnly,
790
+ disabled: disabled
791
+ }, moreProps, other, AdvancedTextFieldProps)), version === 'mobile' && /*#__PURE__*/_react.default.createElement(Modal, (0, _extends2.default)({
792
+ open: open,
793
+ modalWrapperSurface: false,
794
+ TransitionComponent: Slide,
795
+ fullScreen: fullScreen,
796
+ onClose: onClose
797
+ }, ModalProps), mobile), version === 'desktop' && /*#__PURE__*/_react.default.createElement(Tooltip, (0, _extends2.default)({
798
+ open: open,
799
+ portal: true,
800
+ anchorElement: refs.root.current,
801
+ alignment: "center",
802
+ position: "bottom",
803
+ hover: false,
804
+ focus: false,
805
+ longPress: false,
806
+ maxWidth: "unset",
807
+ noMargin: true,
808
+ name: /*#__PURE__*/_react.default.createElement(ClickListener, {
809
+ onClickOutside: onCancel,
810
+ includeParentQueries: ['.onesy-Calendar-list']
811
+ }, desktop)
812
+ }, TooltipProps)));
558
813
  });
559
814
  DatePicker.displayName = 'onesy-DatePicker';
560
- exports.default = DatePicker;
815
+ var _default = exports.default = DatePicker;