@salutejs/plasma-new-hope 0.340.0-canary.2305.18873573377.0 → 0.340.0-canary.2316.18995854815.0

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 (373) hide show
  1. package/cjs/components/Calendar/CalendarBase/CalendarBase.js +6 -0
  2. package/cjs/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
  3. package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +6 -0
  4. package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
  5. package/cjs/components/DatePicker/utils/normalizeDates.js +3 -6
  6. package/cjs/components/DatePicker/utils/normalizeDates.js.map +1 -1
  7. package/cjs/components/DateTimePicker/DateTimePicker.css +200 -0
  8. package/cjs/components/DateTimePicker/DateTimePicker.js +436 -0
  9. package/cjs/components/DateTimePicker/DateTimePicker.js.map +1 -0
  10. package/cjs/components/DateTimePicker/DateTimePicker.styles.js +23 -0
  11. package/cjs/components/DateTimePicker/DateTimePicker.styles.js.map +1 -0
  12. package/cjs/components/DateTimePicker/DateTimePicker.styles_x7parr.css +3 -0
  13. package/cjs/components/DateTimePicker/DateTimePicker.tokens.js +263 -0
  14. package/cjs/components/DateTimePicker/DateTimePicker.tokens.js.map +1 -0
  15. package/cjs/components/DateTimePicker/hooks/useDateTimePicker.js +331 -0
  16. package/cjs/components/DateTimePicker/hooks/useDateTimePicker.js.map +1 -0
  17. package/cjs/components/DateTimePicker/hooks/useKeyboardNavigation.js +49 -0
  18. package/cjs/components/DateTimePicker/hooks/useKeyboardNavigation.js.map +1 -0
  19. package/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.css +82 -0
  20. package/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js +41 -0
  21. package/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js.map +1 -0
  22. package/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js +83 -0
  23. package/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js.map +1 -0
  24. package/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles_1ur6u6r.css +2 -0
  25. package/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.css +34 -0
  26. package/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js +44 -0
  27. package/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js.map +1 -0
  28. package/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js +92 -0
  29. package/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js.map +1 -0
  30. package/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles_ubu846.css +6 -0
  31. package/cjs/components/DateTimePicker/ui/Input/Input.css +80 -0
  32. package/cjs/components/DateTimePicker/ui/Input/Input.js +70 -0
  33. package/cjs/components/DateTimePicker/ui/Input/Input.js.map +1 -0
  34. package/cjs/components/DateTimePicker/ui/Input/Input.styles.js +24 -0
  35. package/cjs/components/DateTimePicker/ui/Input/Input.styles.js.map +1 -0
  36. package/cjs/components/DateTimePicker/ui/Input/Input.styles_1af0tdj.css +1 -0
  37. package/cjs/components/DateTimePicker/ui/Popover/Popover.css +11 -0
  38. package/cjs/components/DateTimePicker/ui/Popover/Popover.js +37 -0
  39. package/cjs/components/DateTimePicker/ui/Popover/Popover.js.map +1 -0
  40. package/cjs/components/DateTimePicker/ui/Popover/Popover.styles.js +44 -0
  41. package/cjs/components/DateTimePicker/ui/Popover/Popover.styles.js.map +1 -0
  42. package/cjs/components/DateTimePicker/ui/Popover/Popover.styles_1v6vurg.css +2 -0
  43. package/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.css +12 -0
  44. package/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.js +30 -0
  45. package/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.js.map +1 -0
  46. package/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js +40 -0
  47. package/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js.map +1 -0
  48. package/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles_31tnfx.css +1 -0
  49. package/cjs/components/DateTimePicker/utils/getFormattedDateTime.js +81 -0
  50. package/cjs/components/DateTimePicker/utils/getFormattedDateTime.js.map +1 -0
  51. package/cjs/components/DateTimePicker/utils/getMaskedValue.js +53 -0
  52. package/cjs/components/DateTimePicker/utils/getMaskedValue.js.map +1 -0
  53. package/cjs/components/DateTimePicker/utils/getOriginalDateTime.js +77 -0
  54. package/cjs/components/DateTimePicker/utils/getOriginalDateTime.js.map +1 -0
  55. package/cjs/components/DateTimePicker/utils/normalizeDateTime.js +33 -0
  56. package/cjs/components/DateTimePicker/utils/normalizeDateTime.js.map +1 -0
  57. package/cjs/components/DateTimePicker/variations/_disabled/base.js +9 -0
  58. package/cjs/components/DateTimePicker/variations/_disabled/base.js.map +1 -0
  59. package/cjs/components/DateTimePicker/variations/_disabled/base_7ophop.css +1 -0
  60. package/cjs/components/DateTimePicker/variations/_readonly/base.js +9 -0
  61. package/cjs/components/DateTimePicker/variations/_readonly/base.js.map +1 -0
  62. package/cjs/components/DateTimePicker/variations/_readonly/base_rrpgsr.css +1 -0
  63. package/cjs/components/DateTimePicker/variations/_size/base.js +9 -0
  64. package/cjs/components/DateTimePicker/variations/_size/base.js.map +1 -0
  65. package/cjs/components/DateTimePicker/variations/_size/base_19i3bl1.css +1 -0
  66. package/cjs/components/DateTimePicker/variations/_tooltip-size/base.js +9 -0
  67. package/cjs/components/DateTimePicker/variations/_tooltip-size/base.js.map +1 -0
  68. package/cjs/components/DateTimePicker/variations/_tooltip-size/base_x642ct.css +1 -0
  69. package/cjs/components/DateTimePicker/variations/_view/base.js +9 -0
  70. package/cjs/components/DateTimePicker/variations/_view/base.js.map +1 -0
  71. package/cjs/components/DateTimePicker/variations/_view/base_1a1ebsk.css +1 -0
  72. package/cjs/components/TimePickerGrid/TimePickerGrid.js +208 -276
  73. package/cjs/components/TimePickerGrid/TimePickerGrid.js.map +1 -1
  74. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +2 -1
  75. package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js.map +1 -1
  76. package/cjs/index.css +29 -0
  77. package/cjs/index.js +6 -0
  78. package/cjs/index.js.map +1 -1
  79. package/emotion/cjs/components/Calendar/CalendarBase/CalendarBase.js +6 -0
  80. package/emotion/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +6 -0
  81. package/emotion/cjs/components/DatePicker/utils/normalizeDates.js +3 -6
  82. package/emotion/cjs/components/DateTimePicker/DateTimePicker.js +569 -0
  83. package/emotion/cjs/components/DateTimePicker/DateTimePicker.styles.js +39 -0
  84. package/emotion/cjs/components/DateTimePicker/DateTimePicker.tokens.js +268 -0
  85. package/emotion/cjs/components/DateTimePicker/DateTimePicker.types.js +4 -0
  86. package/emotion/cjs/components/DateTimePicker/hooks/useDateTimePicker.js +339 -0
  87. package/emotion/cjs/components/DateTimePicker/hooks/useKeyboardNavigation.js +57 -0
  88. package/emotion/cjs/components/DateTimePicker/index.js +26 -0
  89. package/emotion/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js +98 -0
  90. package/emotion/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js +61 -0
  91. package/emotion/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js +53 -0
  92. package/emotion/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js +88 -0
  93. package/emotion/cjs/components/DateTimePicker/ui/Input/Input.js +167 -0
  94. package/emotion/cjs/components/DateTimePicker/ui/Input/Input.styles.js +25 -0
  95. package/emotion/cjs/components/DateTimePicker/ui/Popover/Popover.js +153 -0
  96. package/emotion/cjs/components/DateTimePicker/ui/Popover/Popover.styles.js +43 -0
  97. package/emotion/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.js +87 -0
  98. package/emotion/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js +31 -0
  99. package/emotion/cjs/components/DateTimePicker/ui/index.js +29 -0
  100. package/emotion/cjs/components/DateTimePicker/utils/getFormattedDateTime.js +118 -0
  101. package/emotion/cjs/components/DateTimePicker/utils/getMaskedValue.js +52 -0
  102. package/emotion/cjs/components/DateTimePicker/utils/getOriginalDateTime.js +132 -0
  103. package/emotion/cjs/components/DateTimePicker/utils/index.js +19 -0
  104. package/emotion/cjs/components/DateTimePicker/utils/normalizeDateTime.js +30 -0
  105. package/emotion/cjs/components/DateTimePicker/variations/_disabled/base.js +13 -0
  106. package/emotion/cjs/components/DateTimePicker/variations/_readonly/base.js +14 -0
  107. package/emotion/cjs/components/DateTimePicker/variations/_size/base.js +14 -0
  108. package/emotion/cjs/components/DateTimePicker/variations/_tooltip-size/base.js +12 -0
  109. package/emotion/cjs/components/DateTimePicker/variations/_view/base.js +14 -0
  110. package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.js +214 -282
  111. package/emotion/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +2 -2
  112. package/emotion/cjs/examples/components/Combobox/Combobox.js +0 -15
  113. package/emotion/cjs/examples/components/DateTimePicker/DateTimePicker.config.js +40 -0
  114. package/emotion/cjs/examples/components/DateTimePicker/DateTimePicker.js +15 -0
  115. package/emotion/cjs/index.js +1 -0
  116. package/emotion/es/components/Calendar/CalendarBase/CalendarBase.js +6 -0
  117. package/emotion/es/components/Calendar/CalendarDouble/CalendarDouble.js +6 -0
  118. package/emotion/es/components/DatePicker/utils/normalizeDates.js +3 -6
  119. package/emotion/es/components/DateTimePicker/DateTimePicker.js +505 -0
  120. package/emotion/es/components/DateTimePicker/DateTimePicker.styles.js +13 -0
  121. package/emotion/es/components/DateTimePicker/DateTimePicker.tokens.js +247 -0
  122. package/emotion/es/components/DateTimePicker/DateTimePicker.types.js +1 -0
  123. package/emotion/es/components/DateTimePicker/hooks/useDateTimePicker.js +329 -0
  124. package/emotion/es/components/DateTimePicker/hooks/useKeyboardNavigation.js +39 -0
  125. package/emotion/es/components/DateTimePicker/index.js +2 -0
  126. package/emotion/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js +83 -0
  127. package/emotion/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js +36 -0
  128. package/emotion/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js +38 -0
  129. package/emotion/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js +53 -0
  130. package/emotion/es/components/DateTimePicker/ui/Input/Input.js +111 -0
  131. package/emotion/es/components/DateTimePicker/ui/Input/Input.styles.js +11 -0
  132. package/emotion/es/components/DateTimePicker/ui/Popover/Popover.js +102 -0
  133. package/emotion/es/components/DateTimePicker/ui/Popover/Popover.styles.js +20 -0
  134. package/emotion/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.js +72 -0
  135. package/emotion/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js +16 -0
  136. package/emotion/es/components/DateTimePicker/ui/index.js +6 -0
  137. package/emotion/es/components/DateTimePicker/utils/getFormattedDateTime.js +108 -0
  138. package/emotion/es/components/DateTimePicker/utils/getMaskedValue.js +42 -0
  139. package/emotion/es/components/DateTimePicker/utils/getOriginalDateTime.js +122 -0
  140. package/emotion/es/components/DateTimePicker/utils/index.js +2 -0
  141. package/emotion/es/components/DateTimePicker/utils/normalizeDateTime.js +20 -0
  142. package/emotion/es/components/DateTimePicker/variations/_disabled/base.js +3 -0
  143. package/emotion/es/components/DateTimePicker/variations/_readonly/base.js +4 -0
  144. package/emotion/es/components/DateTimePicker/variations/_size/base.js +4 -0
  145. package/emotion/es/components/DateTimePicker/variations/_tooltip-size/base.js +2 -0
  146. package/emotion/es/components/DateTimePicker/variations/_view/base.js +4 -0
  147. package/emotion/es/components/TimePickerGrid/TimePickerGrid.js +214 -282
  148. package/emotion/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +2 -2
  149. package/emotion/es/examples/components/Combobox/Combobox.js +7 -0
  150. package/emotion/es/examples/components/DateTimePicker/DateTimePicker.config.js +30 -0
  151. package/emotion/es/examples/components/DateTimePicker/DateTimePicker.js +5 -0
  152. package/emotion/es/index.js +1 -0
  153. package/es/components/Calendar/CalendarBase/CalendarBase.js +6 -0
  154. package/es/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
  155. package/es/components/Calendar/CalendarDouble/CalendarDouble.js +6 -0
  156. package/es/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
  157. package/es/components/DatePicker/utils/normalizeDates.js +3 -6
  158. package/es/components/DatePicker/utils/normalizeDates.js.map +1 -1
  159. package/es/components/DateTimePicker/DateTimePicker.css +200 -0
  160. package/es/components/DateTimePicker/DateTimePicker.js +426 -0
  161. package/es/components/DateTimePicker/DateTimePicker.js.map +1 -0
  162. package/es/components/DateTimePicker/DateTimePicker.styles.js +17 -0
  163. package/es/components/DateTimePicker/DateTimePicker.styles.js.map +1 -0
  164. package/es/components/DateTimePicker/DateTimePicker.styles_x7parr.css +3 -0
  165. package/es/components/DateTimePicker/DateTimePicker.tokens.js +258 -0
  166. package/es/components/DateTimePicker/DateTimePicker.tokens.js.map +1 -0
  167. package/es/components/DateTimePicker/hooks/useDateTimePicker.js +327 -0
  168. package/es/components/DateTimePicker/hooks/useDateTimePicker.js.map +1 -0
  169. package/es/components/DateTimePicker/hooks/useKeyboardNavigation.js +44 -0
  170. package/es/components/DateTimePicker/hooks/useKeyboardNavigation.js.map +1 -0
  171. package/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.css +82 -0
  172. package/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js +33 -0
  173. package/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js.map +1 -0
  174. package/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js +78 -0
  175. package/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js.map +1 -0
  176. package/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles_1ur6u6r.css +2 -0
  177. package/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.css +34 -0
  178. package/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js +35 -0
  179. package/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js.map +1 -0
  180. package/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js +83 -0
  181. package/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js.map +1 -0
  182. package/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles_ubu846.css +6 -0
  183. package/es/components/DateTimePicker/ui/Input/Input.css +80 -0
  184. package/es/components/DateTimePicker/ui/Input/Input.js +61 -0
  185. package/es/components/DateTimePicker/ui/Input/Input.js.map +1 -0
  186. package/es/components/DateTimePicker/ui/Input/Input.styles.js +20 -0
  187. package/es/components/DateTimePicker/ui/Input/Input.styles.js.map +1 -0
  188. package/es/components/DateTimePicker/ui/Input/Input.styles_1af0tdj.css +1 -0
  189. package/es/components/DateTimePicker/ui/Popover/Popover.css +11 -0
  190. package/es/components/DateTimePicker/ui/Popover/Popover.js +29 -0
  191. package/es/components/DateTimePicker/ui/Popover/Popover.js.map +1 -0
  192. package/es/components/DateTimePicker/ui/Popover/Popover.styles.js +39 -0
  193. package/es/components/DateTimePicker/ui/Popover/Popover.styles.js.map +1 -0
  194. package/es/components/DateTimePicker/ui/Popover/Popover.styles_1v6vurg.css +2 -0
  195. package/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.css +12 -0
  196. package/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.js +22 -0
  197. package/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.js.map +1 -0
  198. package/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js +36 -0
  199. package/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js.map +1 -0
  200. package/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles_31tnfx.css +1 -0
  201. package/es/components/DateTimePicker/utils/getFormattedDateTime.js +77 -0
  202. package/es/components/DateTimePicker/utils/getFormattedDateTime.js.map +1 -0
  203. package/es/components/DateTimePicker/utils/getMaskedValue.js +49 -0
  204. package/es/components/DateTimePicker/utils/getMaskedValue.js.map +1 -0
  205. package/es/components/DateTimePicker/utils/getOriginalDateTime.js +73 -0
  206. package/es/components/DateTimePicker/utils/getOriginalDateTime.js.map +1 -0
  207. package/es/components/DateTimePicker/utils/normalizeDateTime.js +29 -0
  208. package/es/components/DateTimePicker/utils/normalizeDateTime.js.map +1 -0
  209. package/es/components/DateTimePicker/variations/_disabled/base.js +5 -0
  210. package/es/components/DateTimePicker/variations/_disabled/base.js.map +1 -0
  211. package/es/components/DateTimePicker/variations/_disabled/base_7ophop.css +1 -0
  212. package/es/components/DateTimePicker/variations/_readonly/base.js +5 -0
  213. package/es/components/DateTimePicker/variations/_readonly/base.js.map +1 -0
  214. package/es/components/DateTimePicker/variations/_readonly/base_rrpgsr.css +1 -0
  215. package/es/components/DateTimePicker/variations/_size/base.js +5 -0
  216. package/es/components/DateTimePicker/variations/_size/base.js.map +1 -0
  217. package/es/components/DateTimePicker/variations/_size/base_19i3bl1.css +1 -0
  218. package/es/components/DateTimePicker/variations/_tooltip-size/base.js +5 -0
  219. package/es/components/DateTimePicker/variations/_tooltip-size/base.js.map +1 -0
  220. package/es/components/DateTimePicker/variations/_tooltip-size/base_x642ct.css +1 -0
  221. package/es/components/DateTimePicker/variations/_view/base.js +5 -0
  222. package/es/components/DateTimePicker/variations/_view/base.js.map +1 -0
  223. package/es/components/DateTimePicker/variations/_view/base_1a1ebsk.css +1 -0
  224. package/es/components/TimePickerGrid/TimePickerGrid.js +210 -278
  225. package/es/components/TimePickerGrid/TimePickerGrid.js.map +1 -1
  226. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +2 -1
  227. package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js.map +1 -1
  228. package/es/index.css +29 -0
  229. package/es/index.js +2 -0
  230. package/es/index.js.map +1 -1
  231. package/package.json +4 -4
  232. package/styled-components/cjs/components/Calendar/CalendarBase/CalendarBase.js +6 -0
  233. package/styled-components/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +6 -0
  234. package/styled-components/cjs/components/DatePicker/utils/normalizeDates.js +3 -6
  235. package/styled-components/cjs/components/DateTimePicker/DateTimePicker.js +569 -0
  236. package/styled-components/cjs/components/DateTimePicker/DateTimePicker.styles.js +89 -0
  237. package/styled-components/cjs/components/DateTimePicker/DateTimePicker.tokens.js +268 -0
  238. package/styled-components/cjs/components/DateTimePicker/DateTimePicker.types.js +4 -0
  239. package/styled-components/cjs/components/DateTimePicker/hooks/useDateTimePicker.js +339 -0
  240. package/styled-components/cjs/components/DateTimePicker/hooks/useKeyboardNavigation.js +57 -0
  241. package/styled-components/cjs/components/DateTimePicker/index.js +26 -0
  242. package/styled-components/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js +98 -0
  243. package/styled-components/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js +73 -0
  244. package/styled-components/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js +53 -0
  245. package/styled-components/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js +132 -0
  246. package/styled-components/cjs/components/DateTimePicker/ui/Input/Input.js +167 -0
  247. package/styled-components/cjs/components/DateTimePicker/ui/Input/Input.styles.js +176 -0
  248. package/styled-components/cjs/components/DateTimePicker/ui/Popover/Popover.js +153 -0
  249. package/styled-components/cjs/components/DateTimePicker/ui/Popover/Popover.styles.js +56 -0
  250. package/styled-components/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.js +87 -0
  251. package/styled-components/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js +69 -0
  252. package/styled-components/cjs/components/DateTimePicker/ui/index.js +29 -0
  253. package/styled-components/cjs/components/DateTimePicker/utils/getFormattedDateTime.js +118 -0
  254. package/styled-components/cjs/components/DateTimePicker/utils/getMaskedValue.js +52 -0
  255. package/styled-components/cjs/components/DateTimePicker/utils/getOriginalDateTime.js +132 -0
  256. package/styled-components/cjs/components/DateTimePicker/utils/index.js +19 -0
  257. package/styled-components/cjs/components/DateTimePicker/utils/normalizeDateTime.js +30 -0
  258. package/styled-components/cjs/components/DateTimePicker/variations/_disabled/base.js +16 -0
  259. package/styled-components/cjs/components/DateTimePicker/variations/_readonly/base.js +18 -0
  260. package/styled-components/cjs/components/DateTimePicker/variations/_size/base.js +24 -0
  261. package/styled-components/cjs/components/DateTimePicker/variations/_tooltip-size/base.js +14 -0
  262. package/styled-components/cjs/components/DateTimePicker/variations/_view/base.js +18 -0
  263. package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.js +214 -282
  264. package/styled-components/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +2 -2
  265. package/styled-components/cjs/examples/components/DateTimePicker/DateTimePicker.config.js +783 -0
  266. package/styled-components/cjs/examples/components/DateTimePicker/DateTimePicker.js +15 -0
  267. package/styled-components/cjs/index.js +1 -0
  268. package/styled-components/es/components/Calendar/CalendarBase/CalendarBase.js +6 -0
  269. package/styled-components/es/components/Calendar/CalendarDouble/CalendarDouble.js +6 -0
  270. package/styled-components/es/components/DatePicker/utils/normalizeDates.js +3 -6
  271. package/styled-components/es/components/DateTimePicker/DateTimePicker.js +505 -0
  272. package/styled-components/es/components/DateTimePicker/DateTimePicker.styles.js +28 -0
  273. package/styled-components/es/components/DateTimePicker/DateTimePicker.tokens.js +247 -0
  274. package/styled-components/es/components/DateTimePicker/DateTimePicker.types.js +1 -0
  275. package/styled-components/es/components/DateTimePicker/hooks/useDateTimePicker.js +329 -0
  276. package/styled-components/es/components/DateTimePicker/hooks/useKeyboardNavigation.js +39 -0
  277. package/styled-components/es/components/DateTimePicker/index.js +2 -0
  278. package/styled-components/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js +83 -0
  279. package/styled-components/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js +48 -0
  280. package/styled-components/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js +38 -0
  281. package/styled-components/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js +97 -0
  282. package/styled-components/es/components/DateTimePicker/ui/Input/Input.js +111 -0
  283. package/styled-components/es/components/DateTimePicker/ui/Input/Input.styles.js +162 -0
  284. package/styled-components/es/components/DateTimePicker/ui/Popover/Popover.js +102 -0
  285. package/styled-components/es/components/DateTimePicker/ui/Popover/Popover.styles.js +33 -0
  286. package/styled-components/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.js +72 -0
  287. package/styled-components/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js +54 -0
  288. package/styled-components/es/components/DateTimePicker/ui/index.js +6 -0
  289. package/styled-components/es/components/DateTimePicker/utils/getFormattedDateTime.js +108 -0
  290. package/styled-components/es/components/DateTimePicker/utils/getMaskedValue.js +42 -0
  291. package/styled-components/es/components/DateTimePicker/utils/getOriginalDateTime.js +122 -0
  292. package/styled-components/es/components/DateTimePicker/utils/index.js +2 -0
  293. package/styled-components/es/components/DateTimePicker/utils/normalizeDateTime.js +20 -0
  294. package/styled-components/es/components/DateTimePicker/variations/_disabled/base.js +6 -0
  295. package/styled-components/es/components/DateTimePicker/variations/_readonly/base.js +8 -0
  296. package/styled-components/es/components/DateTimePicker/variations/_size/base.js +14 -0
  297. package/styled-components/es/components/DateTimePicker/variations/_tooltip-size/base.js +4 -0
  298. package/styled-components/es/components/DateTimePicker/variations/_view/base.js +8 -0
  299. package/styled-components/es/components/TimePickerGrid/TimePickerGrid.js +214 -282
  300. package/styled-components/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +2 -2
  301. package/styled-components/es/examples/components/DateTimePicker/DateTimePicker.config.js +773 -0
  302. package/styled-components/es/examples/components/DateTimePicker/DateTimePicker.js +5 -0
  303. package/styled-components/es/index.js +1 -0
  304. package/types/components/Calendar/CalendarBase/CalendarBase.d.ts.map +1 -1
  305. package/types/components/Calendar/CalendarDouble/CalendarDouble.d.ts.map +1 -1
  306. package/types/components/DatePicker/utils/normalizeDates.d.ts.map +1 -1
  307. package/types/components/DateTimePicker/DateTimePicker.d.ts +73 -0
  308. package/types/components/DateTimePicker/DateTimePicker.d.ts.map +1 -0
  309. package/types/components/DateTimePicker/DateTimePicker.styles.d.ts +4 -0
  310. package/types/components/DateTimePicker/DateTimePicker.styles.d.ts.map +1 -0
  311. package/types/components/DateTimePicker/DateTimePicker.tokens.d.ts +256 -0
  312. package/types/components/DateTimePicker/DateTimePicker.tokens.d.ts.map +1 -0
  313. package/types/components/DateTimePicker/DateTimePicker.types.d.ts +161 -0
  314. package/types/components/DateTimePicker/DateTimePicker.types.d.ts.map +1 -0
  315. package/types/components/DateTimePicker/hooks/useDateTimePicker.d.ts +18 -0
  316. package/types/components/DateTimePicker/hooks/useDateTimePicker.d.ts.map +1 -0
  317. package/types/components/DateTimePicker/hooks/useKeyboardNavigation.d.ts +18 -0
  318. package/types/components/DateTimePicker/hooks/useKeyboardNavigation.d.ts.map +1 -0
  319. package/types/components/DateTimePicker/index.d.ts +4 -0
  320. package/types/components/DateTimePicker/index.d.ts.map +1 -0
  321. package/types/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.d.ts +11 -0
  322. package/types/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.d.ts.map +1 -0
  323. package/types/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.d.ts +10 -0
  324. package/types/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.d.ts.map +1 -0
  325. package/types/components/DateTimePicker/ui/DateShortcut/DateShortcutList.d.ts +12 -0
  326. package/types/components/DateTimePicker/ui/DateShortcut/DateShortcutList.d.ts.map +1 -0
  327. package/types/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.d.ts +44 -0
  328. package/types/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.d.ts.map +1 -0
  329. package/types/components/DateTimePicker/ui/Input/Input.d.ts +8 -0
  330. package/types/components/DateTimePicker/ui/Input/Input.d.ts.map +1 -0
  331. package/types/components/DateTimePicker/ui/Input/Input.styles.d.ts +298 -0
  332. package/types/components/DateTimePicker/ui/Input/Input.styles.d.ts.map +1 -0
  333. package/types/components/DateTimePicker/ui/Popover/Popover.d.ts +8 -0
  334. package/types/components/DateTimePicker/ui/Popover/Popover.d.ts.map +1 -0
  335. package/types/components/DateTimePicker/ui/Popover/Popover.styles.d.ts +6 -0
  336. package/types/components/DateTimePicker/ui/Popover/Popover.styles.d.ts.map +1 -0
  337. package/types/components/DateTimePicker/ui/TimeGrid/TimeGrid.d.ts +9 -0
  338. package/types/components/DateTimePicker/ui/TimeGrid/TimeGrid.d.ts.map +1 -0
  339. package/types/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.d.ts +23 -0
  340. package/types/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.d.ts.map +1 -0
  341. package/types/components/DateTimePicker/ui/index.d.ts +7 -0
  342. package/types/components/DateTimePicker/ui/index.d.ts.map +1 -0
  343. package/types/components/DateTimePicker/utils/getFormattedDateTime.d.ts +27 -0
  344. package/types/components/DateTimePicker/utils/getFormattedDateTime.d.ts.map +1 -0
  345. package/types/components/DateTimePicker/utils/getMaskedValue.d.ts +13 -0
  346. package/types/components/DateTimePicker/utils/getMaskedValue.d.ts.map +1 -0
  347. package/types/components/DateTimePicker/utils/getOriginalDateTime.d.ts +19 -0
  348. package/types/components/DateTimePicker/utils/getOriginalDateTime.d.ts.map +1 -0
  349. package/types/components/DateTimePicker/utils/index.d.ts +3 -0
  350. package/types/components/DateTimePicker/utils/index.d.ts.map +1 -0
  351. package/types/components/DateTimePicker/utils/normalizeDateTime.d.ts +15 -0
  352. package/types/components/DateTimePicker/utils/normalizeDateTime.d.ts.map +1 -0
  353. package/types/components/DateTimePicker/variations/_disabled/base.d.ts +2 -0
  354. package/types/components/DateTimePicker/variations/_disabled/base.d.ts.map +1 -0
  355. package/types/components/DateTimePicker/variations/_readonly/base.d.ts +2 -0
  356. package/types/components/DateTimePicker/variations/_readonly/base.d.ts.map +1 -0
  357. package/types/components/DateTimePicker/variations/_size/base.d.ts +2 -0
  358. package/types/components/DateTimePicker/variations/_size/base.d.ts.map +1 -0
  359. package/types/components/DateTimePicker/variations/_tooltip-size/base.d.ts +2 -0
  360. package/types/components/DateTimePicker/variations/_tooltip-size/base.d.ts.map +1 -0
  361. package/types/components/DateTimePicker/variations/_view/base.d.ts +2 -0
  362. package/types/components/DateTimePicker/variations/_view/base.d.ts.map +1 -0
  363. package/types/components/TimePickerGrid/TimePickerGrid.d.ts.map +1 -1
  364. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.d.ts +1 -1
  365. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.d.ts.map +1 -1
  366. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.d.ts +2 -1
  367. package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.d.ts.map +1 -1
  368. package/types/examples/components/DateTimePicker/DateTimePicker.config.d.ts +29 -0
  369. package/types/examples/components/DateTimePicker/DateTimePicker.config.d.ts.map +1 -0
  370. package/types/examples/components/DateTimePicker/DateTimePicker.d.ts +42 -0
  371. package/types/examples/components/DateTimePicker/DateTimePicker.d.ts.map +1 -0
  372. package/types/index.d.ts +1 -0
  373. package/types/index.d.ts.map +1 -1
@@ -0,0 +1,331 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');
6
+ var datejs = require('../../../utils/datejs.js');
7
+ var DateTimePicker_tokens = require('../DateTimePicker.tokens.js');
8
+ var getMaskedValue = require('../utils/getMaskedValue.js');
9
+ var getFormattedDateTime = require('../utils/getFormattedDateTime.js');
10
+ var normalizeDateTime = require('../utils/normalizeDateTime.js');
11
+ var constants = require('../../Calendar/utils/constants.js');
12
+
13
+ var useDateTimePicker = function useDateTimePicker(_ref) {
14
+ var valueError = _ref.valueError,
15
+ valueSuccess = _ref.valueSuccess,
16
+ type = _ref.type,
17
+ _ref$lang = _ref.lang,
18
+ lang = _ref$lang === void 0 ? 'ru' : _ref$lang,
19
+ disabled = _ref.disabled,
20
+ readOnly = _ref.readOnly,
21
+ maskWithFormat = _ref.maskWithFormat,
22
+ format = _ref.format,
23
+ dateFormat = _ref.dateFormat,
24
+ timeFormat = _ref.timeFormat,
25
+ currentValue = _ref.currentValue,
26
+ delimiters = _ref.delimiters,
27
+ inputRef = _ref.inputRef,
28
+ min = _ref.min,
29
+ max = _ref.max,
30
+ includeEdgeDates = _ref.includeEdgeDates,
31
+ correctDates = _ref.correctDates,
32
+ dateOnTimeSelectOnly = _ref.dateOnTimeSelectOnly,
33
+ setCorrectDates = _ref.setCorrectDates,
34
+ setInnerDate = _ref.setInnerDate,
35
+ onChangeValue = _ref.onChangeValue,
36
+ onCommitDate = _ref.onCommitDate;
37
+ var errorClass = valueError ? DateTimePicker_tokens.classes.error : undefined;
38
+ var successClass = valueSuccess ? DateTimePicker_tokens.classes.success : undefined;
39
+ var getQuarterInfo = function getQuarterInfo(originalDate) {
40
+ if (type !== 'Quarters' || !originalDate) {
41
+ return;
42
+ }
43
+ var endQuarter = new Date(originalDate);
44
+ endQuarter.setMonth(originalDate.getMonth() + 3);
45
+ endQuarter.setDate(0);
46
+ datejs.customDayjs.locale(lang);
47
+ var quarterIndex = datejs.customDayjs(originalDate).quarter() - 1;
48
+ return {
49
+ name: constants.QUARTER_NAMES[quarterIndex],
50
+ fullValue: [originalDate, endQuarter]
51
+ };
52
+ };
53
+ var getFormattedCorrectInput = function getFormattedCorrectInput(_ref2) {
54
+ var originalDate = _ref2.originalDate,
55
+ formattedDate = _ref2.formattedDate,
56
+ dateValue = _ref2.dateValue,
57
+ timeValue = _ref2.timeValue;
58
+ if (originalDate || formattedDate === '') {
59
+ return {
60
+ input: formattedDate
61
+ };
62
+ }
63
+ if (dateValue && timeValue) {
64
+ return {
65
+ input: formattedDate
66
+ };
67
+ }
68
+ if (dateValue && !timeValue) {
69
+ return {
70
+ input: formattedDate.slice(0, dateFormat === null || dateFormat === void 0 ? void 0 : dateFormat.length)
71
+ };
72
+ }
73
+ return {
74
+ input: ''
75
+ };
76
+ };
77
+ var handleChangeValue = function handleChangeValue(event) {
78
+ if (disabled || readOnly) {
79
+ return;
80
+ }
81
+ var _event$target = event.target,
82
+ value = _event$target.value,
83
+ selectionStart = _event$target.selectionStart;
84
+ var _ref3 = maskWithFormat ? getMaskedValue.getMaskedValue({
85
+ value: value,
86
+ format: format,
87
+ delimiters: delimiters,
88
+ prevValue: currentValue,
89
+ selectionStart: selectionStart
90
+ }) : {
91
+ formattedValue: value,
92
+ selectionStart: selectionStart
93
+ },
94
+ formattedValue = _ref3.formattedValue,
95
+ newSelectionStart = _ref3.selectionStart;
96
+ var _getFormattedDateTime = getFormattedDateTime.getFormattedDateTime({
97
+ value: formattedValue,
98
+ lang: lang,
99
+ format: format,
100
+ dateFormat: dateFormat,
101
+ timeFormat: timeFormat,
102
+ includeEdgeDates: includeEdgeDates,
103
+ min: min,
104
+ max: max
105
+ }),
106
+ formattedDate = _getFormattedDateTime.formattedDate,
107
+ isoDate = _getFormattedDateTime.isoDate,
108
+ originalDate = _getFormattedDateTime.originalDate,
109
+ dateValue = _getFormattedDateTime.dateValue,
110
+ timeValue = _getFormattedDateTime.timeValue;
111
+ var _getFormattedCorrectI = getFormattedCorrectInput({
112
+ originalDate: originalDate,
113
+ formattedDate: formattedDate,
114
+ dateValue: dateValue,
115
+ timeValue: timeValue
116
+ }),
117
+ inputCorrectValue = _getFormattedCorrectI.input;
118
+ setCorrectDates(function (prevCorrectDates) {
119
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prevCorrectDates), {}, {
120
+ input: inputCorrectValue,
121
+ calendar: inputCorrectValue ? dateValue || prevCorrectDates.calendar : undefined,
122
+ time: inputCorrectValue ? timeValue || prevCorrectDates.time : undefined
123
+ });
124
+ });
125
+ setInnerDate(formattedDate);
126
+ if (originalDate) {
127
+ var quarterInfo = getQuarterInfo(originalDate);
128
+ if (onCommitDate) {
129
+ onCommitDate(formattedDate, {
130
+ quarterInfo: quarterInfo,
131
+ originalDate: originalDate,
132
+ isoDate: isoDate
133
+ });
134
+ }
135
+ }
136
+ if (onChangeValue) {
137
+ onChangeValue(event, formattedDate, {
138
+ originalDate: originalDate,
139
+ isoDate: isoDate
140
+ });
141
+ }
142
+ requestAnimationFrame(function () {
143
+ if (inputRef.current) {
144
+ inputRef.current.setSelectionRange(newSelectionStart, newSelectionStart);
145
+ }
146
+ });
147
+ };
148
+ var handleSearch = function handleSearch(date) {
149
+ if (disabled || readOnly) {
150
+ return;
151
+ }
152
+ if (!date) {
153
+ if (onCommitDate) {
154
+ onCommitDate('', {
155
+ quarterInfo: undefined,
156
+ originalDate: undefined,
157
+ isoDate: ''
158
+ });
159
+ }
160
+ return;
161
+ }
162
+ var _getFormattedDateTime2 = getFormattedDateTime.getFormattedDateTime({
163
+ value: date,
164
+ lang: lang,
165
+ format: format,
166
+ dateFormat: dateFormat,
167
+ timeFormat: timeFormat,
168
+ includeEdgeDates: includeEdgeDates,
169
+ min: min,
170
+ max: max
171
+ }),
172
+ formattedDate = _getFormattedDateTime2.formattedDate,
173
+ isoDate = _getFormattedDateTime2.isoDate,
174
+ originalDate = _getFormattedDateTime2.originalDate;
175
+ var quarterInfo = getQuarterInfo(originalDate);
176
+ if (onCommitDate) {
177
+ onCommitDate(formattedDate, {
178
+ quarterInfo: quarterInfo,
179
+ originalDate: originalDate,
180
+ isoDate: isoDate
181
+ });
182
+ }
183
+ };
184
+ var handleCalendarPick = function handleCalendarPick(date, quarterInfo) {
185
+ if (disabled || readOnly) {
186
+ return;
187
+ }
188
+ if (!date) {
189
+ return;
190
+ }
191
+ datejs.customDayjs.locale(lang);
192
+ var rawDate = datejs.customDayjs(date);
193
+ if (correctDates.time) {
194
+ var correctTimeDate = datejs.customDayjs(correctDates.time);
195
+ var correctHours = correctTimeDate.get('hours');
196
+ var correctMinutes = correctTimeDate.get('minutes');
197
+ var correctSeconds = correctTimeDate.get('seconds');
198
+ rawDate = rawDate.set('hours', correctHours).set('minutes', correctMinutes).set('seconds', correctSeconds);
199
+ }
200
+ var _normalizeDateTime = normalizeDateTime.normalizeDateTime({
201
+ originalDate: rawDate.toDate(),
202
+ lang: lang,
203
+ format: format,
204
+ includeEdgeDates: includeEdgeDates,
205
+ min: min,
206
+ max: max
207
+ }),
208
+ normalizedDate = _normalizeDateTime.normalizedDate,
209
+ formattedNormalizedDate = _normalizeDateTime.formattedNormalizedDate;
210
+ var isoDate = normalizedDate.toISOString();
211
+ setCorrectDates(function (prevCorrectDates) {
212
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prevCorrectDates), {}, {
213
+ input: formattedNormalizedDate,
214
+ calendar: normalizedDate,
215
+ time: normalizedDate
216
+ });
217
+ });
218
+ setInnerDate(formattedNormalizedDate);
219
+ if (onCommitDate) {
220
+ onCommitDate(formattedNormalizedDate, {
221
+ quarterInfo: quarterInfo,
222
+ originalDate: normalizedDate,
223
+ isoDate: isoDate
224
+ });
225
+ }
226
+ if (onChangeValue) {
227
+ onChangeValue(null, formattedNormalizedDate, {
228
+ originalDate: normalizedDate,
229
+ isoDate: isoDate
230
+ });
231
+ }
232
+ };
233
+ var handleTimePick = function handleTimePick(time) {
234
+ if (disabled || readOnly) {
235
+ return;
236
+ }
237
+ if (!(time !== null && time !== void 0 && time.value)) {
238
+ return;
239
+ }
240
+ datejs.customDayjs.locale(lang);
241
+ var rawDate;
242
+ if (!correctDates.calendar) {
243
+ if (dateOnTimeSelectOnly) {
244
+ rawDate = datejs.customDayjs(dateOnTimeSelectOnly);
245
+ } else {
246
+ rawDate = datejs.customDayjs();
247
+ }
248
+ } else {
249
+ rawDate = datejs.customDayjs(correctDates.calendar);
250
+ }
251
+ var timeValues = time.timeValues;
252
+ rawDate = rawDate.set('hours', timeValues.hour || 0).set('minutes', timeValues.minute || 0).set('seconds', timeValues.second || 0);
253
+ var _normalizeDateTime2 = normalizeDateTime.normalizeDateTime({
254
+ originalDate: rawDate.toDate(),
255
+ lang: lang,
256
+ format: format,
257
+ includeEdgeDates: includeEdgeDates,
258
+ min: min,
259
+ max: max
260
+ }),
261
+ normalizedDate = _normalizeDateTime2.normalizedDate,
262
+ formattedNormalizedDate = _normalizeDateTime2.formattedNormalizedDate;
263
+ var isoDate = normalizedDate.toISOString();
264
+ var quarterInfo = getQuarterInfo(normalizedDate);
265
+ setCorrectDates(function (prevCorrectDates) {
266
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prevCorrectDates), {}, {
267
+ input: formattedNormalizedDate,
268
+ calendar: normalizedDate,
269
+ time: normalizedDate
270
+ });
271
+ });
272
+ setInnerDate(formattedNormalizedDate);
273
+ if (onCommitDate) {
274
+ onCommitDate(formattedNormalizedDate, {
275
+ quarterInfo: quarterInfo,
276
+ originalDate: normalizedDate,
277
+ isoDate: isoDate
278
+ });
279
+ }
280
+ if (onChangeValue) {
281
+ onChangeValue(null, formattedNormalizedDate, {
282
+ originalDate: normalizedDate,
283
+ isoDate: isoDate
284
+ });
285
+ }
286
+ };
287
+ var updateExternalDate = function updateExternalDate(externalDate) {
288
+ var _getFormattedDateTime3 = getFormattedDateTime.getFormattedDateTime({
289
+ value: externalDate,
290
+ lang: lang,
291
+ format: format,
292
+ dateFormat: dateFormat,
293
+ timeFormat: timeFormat,
294
+ includeEdgeDates: includeEdgeDates,
295
+ min: min,
296
+ max: max
297
+ }),
298
+ formattedDate = _getFormattedDateTime3.formattedDate,
299
+ originalDate = _getFormattedDateTime3.originalDate,
300
+ dateValue = _getFormattedDateTime3.dateValue,
301
+ timeValue = _getFormattedDateTime3.timeValue;
302
+ var _getFormattedCorrectI2 = getFormattedCorrectInput({
303
+ originalDate: originalDate,
304
+ formattedDate: formattedDate,
305
+ dateValue: dateValue,
306
+ timeValue: timeValue
307
+ }),
308
+ inputCorrectValue = _getFormattedCorrectI2.input;
309
+ setCorrectDates(function (prevCorrectDates) {
310
+ return _rollupPluginBabelHelpers.objectSpread2(_rollupPluginBabelHelpers.objectSpread2({}, prevCorrectDates), {}, {
311
+ input: inputCorrectValue,
312
+ calendar: inputCorrectValue ? dateValue || prevCorrectDates.calendar : undefined,
313
+ time: inputCorrectValue ? timeValue || prevCorrectDates.time : undefined
314
+ });
315
+ });
316
+ setInnerDate(formattedDate);
317
+ };
318
+ return {
319
+ errorClass: errorClass,
320
+ successClass: successClass,
321
+ handleChangeValue: handleChangeValue,
322
+ handleSearch: handleSearch,
323
+ handleCalendarPick: handleCalendarPick,
324
+ handleTimePick: handleTimePick,
325
+ updateExternalDate: updateExternalDate,
326
+ getQuarterInfo: getQuarterInfo
327
+ };
328
+ };
329
+
330
+ exports.useDateTimePicker = useDateTimePicker;
331
+ //# sourceMappingURL=useDateTimePicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDateTimePicker.js","sources":["../../../../src/components/DateTimePicker/hooks/useDateTimePicker.ts"],"sourcesContent":["import type { ChangeEvent } from 'react';\nimport type { Dayjs } from 'dayjs';\nimport { customDayjs } from 'src/utils/datejs';\nimport { QUARTER_NAMES } from 'src/components/Calendar/utils';\nimport type { TimePickerGridChangeEvent } from 'src/components/TimePickerGrid/TimePickerGrid.types';\n\nimport type { CalendarValueType, DateInfo } from '../../Calendar/Calendar.types';\nimport { classes } from '../DateTimePicker.tokens';\nimport type { UseDateTimePickerArgs } from '../DateTimePicker.types';\nimport { getMaskedValue } from '../utils/getMaskedValue';\nimport { getFormattedDateTime, normalizeDateTime } from '../utils';\n\ntype GetFormattedCorrectInputArgs = {\n formattedDate: string;\n originalDate: Date | undefined;\n dateValue: Date | undefined;\n timeValue: Date | undefined;\n};\n\nexport const useDateTimePicker = ({\n valueError,\n valueSuccess,\n type,\n lang = 'ru',\n disabled,\n readOnly,\n maskWithFormat,\n format,\n dateFormat,\n timeFormat,\n currentValue,\n delimiters,\n inputRef,\n min,\n max,\n includeEdgeDates,\n correctDates,\n dateOnTimeSelectOnly,\n setCorrectDates,\n setInnerDate,\n onChangeValue,\n onCommitDate,\n}: UseDateTimePickerArgs) => {\n const errorClass = valueError ? classes.error : undefined;\n const successClass = valueSuccess ? classes.success : undefined;\n\n const getQuarterInfo = (originalDate?: Date) => {\n if (type !== 'Quarters' || !originalDate) {\n return;\n }\n\n const endQuarter = new Date(originalDate);\n\n endQuarter.setMonth(originalDate.getMonth() + 3);\n endQuarter.setDate(0);\n\n customDayjs.locale(lang);\n const quarterIndex = customDayjs(originalDate).quarter() - 1;\n\n return {\n name: QUARTER_NAMES[quarterIndex],\n fullValue: [originalDate, endQuarter] as CalendarValueType,\n };\n };\n\n const getFormattedCorrectInput = ({\n originalDate,\n formattedDate,\n dateValue,\n timeValue,\n }: GetFormattedCorrectInputArgs) => {\n if (originalDate || formattedDate === '') {\n return {\n input: formattedDate,\n };\n }\n\n if (dateValue && timeValue) {\n return {\n input: formattedDate,\n };\n }\n\n if (dateValue && !timeValue) {\n return {\n input: formattedDate.slice(0, dateFormat?.length),\n };\n }\n\n return {\n input: '',\n };\n };\n\n const handleChangeValue = (event: ChangeEvent<HTMLInputElement>) => {\n if (disabled || readOnly) {\n return;\n }\n const { value, selectionStart } = event.target;\n\n const { formattedValue, selectionStart: newSelectionStart } = maskWithFormat\n ? getMaskedValue({ value, format, delimiters, prevValue: currentValue, selectionStart })\n : { formattedValue: value, selectionStart };\n\n const { formattedDate, isoDate, originalDate, dateValue, timeValue } = getFormattedDateTime({\n value: formattedValue,\n lang,\n format,\n dateFormat,\n timeFormat,\n includeEdgeDates,\n min,\n max,\n });\n\n const { input: inputCorrectValue } = getFormattedCorrectInput({\n originalDate,\n formattedDate,\n dateValue,\n timeValue,\n });\n\n setCorrectDates((prevCorrectDates) => ({\n ...prevCorrectDates,\n input: inputCorrectValue,\n calendar: inputCorrectValue ? dateValue || prevCorrectDates.calendar : undefined,\n time: inputCorrectValue ? timeValue || prevCorrectDates.time : undefined,\n }));\n setInnerDate(formattedDate);\n\n if (originalDate) {\n const quarterInfo = getQuarterInfo(originalDate);\n\n if (onCommitDate) {\n onCommitDate(formattedDate, { quarterInfo, originalDate, isoDate });\n }\n }\n\n if (onChangeValue) {\n onChangeValue(event, formattedDate, { originalDate, isoDate });\n }\n\n requestAnimationFrame(() => {\n if (inputRef.current) {\n inputRef.current.setSelectionRange(newSelectionStart, newSelectionStart);\n }\n });\n };\n\n const handleSearch = (date?: string) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (!date) {\n if (onCommitDate) {\n onCommitDate('', { quarterInfo: undefined, originalDate: undefined, isoDate: '' });\n }\n\n return;\n }\n\n const { formattedDate, isoDate, originalDate } = getFormattedDateTime({\n value: date,\n lang,\n format,\n dateFormat,\n timeFormat,\n includeEdgeDates,\n min,\n max,\n });\n\n const quarterInfo = getQuarterInfo(originalDate);\n\n if (onCommitDate) {\n onCommitDate(formattedDate, { quarterInfo, originalDate, isoDate });\n }\n };\n\n const handleCalendarPick = (date?: Date | null, quarterInfo?: DateInfo) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (!date) {\n return;\n }\n\n customDayjs.locale(lang);\n let rawDate = customDayjs(date);\n\n if (correctDates.time) {\n const correctTimeDate = customDayjs(correctDates.time);\n const correctHours = correctTimeDate.get('hours');\n const correctMinutes = correctTimeDate.get('minutes');\n const correctSeconds = correctTimeDate.get('seconds');\n\n rawDate = rawDate.set('hours', correctHours).set('minutes', correctMinutes).set('seconds', correctSeconds);\n }\n\n const { normalizedDate, formattedNormalizedDate } = normalizeDateTime({\n originalDate: rawDate.toDate(),\n lang,\n format,\n includeEdgeDates,\n min,\n max,\n });\n\n const isoDate = normalizedDate.toISOString();\n\n setCorrectDates((prevCorrectDates) => ({\n ...prevCorrectDates,\n input: formattedNormalizedDate,\n calendar: normalizedDate,\n time: normalizedDate,\n }));\n setInnerDate(formattedNormalizedDate);\n\n if (onCommitDate) {\n onCommitDate(formattedNormalizedDate, { quarterInfo, originalDate: normalizedDate, isoDate });\n }\n\n if (onChangeValue) {\n onChangeValue(null, formattedNormalizedDate, { originalDate: normalizedDate, isoDate });\n }\n };\n\n const handleTimePick = (time?: TimePickerGridChangeEvent) => {\n if (disabled || readOnly) {\n return;\n }\n\n if (!time?.value) {\n return;\n }\n\n customDayjs.locale(lang);\n\n let rawDate: Dayjs;\n if (!correctDates.calendar) {\n if (dateOnTimeSelectOnly) {\n rawDate = customDayjs(dateOnTimeSelectOnly);\n } else {\n rawDate = customDayjs();\n }\n } else {\n rawDate = customDayjs(correctDates.calendar);\n }\n\n const { timeValues } = time;\n\n rawDate = rawDate\n .set('hours', timeValues.hour || 0)\n .set('minutes', timeValues.minute || 0)\n .set('seconds', timeValues.second || 0);\n\n const { normalizedDate, formattedNormalizedDate } = normalizeDateTime({\n originalDate: rawDate.toDate(),\n lang,\n format,\n includeEdgeDates,\n min,\n max,\n });\n\n const isoDate = normalizedDate.toISOString();\n\n const quarterInfo = getQuarterInfo(normalizedDate);\n\n setCorrectDates((prevCorrectDates) => ({\n ...prevCorrectDates,\n input: formattedNormalizedDate,\n calendar: normalizedDate,\n time: normalizedDate,\n }));\n setInnerDate(formattedNormalizedDate);\n\n if (onCommitDate) {\n onCommitDate(formattedNormalizedDate, { quarterInfo, originalDate: normalizedDate, isoDate });\n }\n\n if (onChangeValue) {\n onChangeValue(null, formattedNormalizedDate, { originalDate: normalizedDate, isoDate });\n }\n };\n\n const updateExternalDate = (externalDate: Date | string | undefined) => {\n const { formattedDate, originalDate, dateValue, timeValue } = getFormattedDateTime({\n value: externalDate,\n lang,\n format,\n dateFormat,\n timeFormat,\n includeEdgeDates,\n min,\n max,\n });\n const { input: inputCorrectValue } = getFormattedCorrectInput({\n originalDate,\n formattedDate,\n dateValue,\n timeValue,\n });\n\n setCorrectDates((prevCorrectDates) => ({\n ...prevCorrectDates,\n input: inputCorrectValue,\n calendar: inputCorrectValue ? dateValue || prevCorrectDates.calendar : undefined,\n time: inputCorrectValue ? timeValue || prevCorrectDates.time : undefined,\n }));\n setInnerDate(formattedDate);\n };\n\n return {\n errorClass,\n successClass,\n handleChangeValue,\n handleSearch,\n handleCalendarPick,\n handleTimePick,\n updateExternalDate,\n getQuarterInfo,\n };\n};\n"],"names":["useDateTimePicker","_ref","valueError","valueSuccess","type","_ref$lang","lang","disabled","readOnly","maskWithFormat","format","dateFormat","timeFormat","currentValue","delimiters","inputRef","min","max","includeEdgeDates","correctDates","dateOnTimeSelectOnly","setCorrectDates","setInnerDate","onChangeValue","onCommitDate","errorClass","classes","error","undefined","successClass","success","getQuarterInfo","originalDate","endQuarter","Date","setMonth","getMonth","setDate","customDayjs","locale","quarterIndex","quarter","name","QUARTER_NAMES","fullValue","getFormattedCorrectInput","_ref2","formattedDate","dateValue","timeValue","input","slice","length","handleChangeValue","event","_event$target","target","value","selectionStart","_ref3","getMaskedValue","prevValue","formattedValue","newSelectionStart","_getFormattedDateTime","getFormattedDateTime","isoDate","_getFormattedCorrectI","inputCorrectValue","prevCorrectDates","_objectSpread","calendar","time","quarterInfo","requestAnimationFrame","current","setSelectionRange","handleSearch","date","_getFormattedDateTime2","handleCalendarPick","rawDate","correctTimeDate","correctHours","get","correctMinutes","correctSeconds","set","_normalizeDateTime","normalizeDateTime","toDate","normalizedDate","formattedNormalizedDate","toISOString","handleTimePick","timeValues","hour","minute","second","_normalizeDateTime2","updateExternalDate","externalDate","_getFormattedDateTime3","_getFormattedCorrectI2"],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var dateHelper = require('../../DatePicker/utils/dateHelper.js');
6
+
7
+ var keys = {
8
+ Space: 'Space',
9
+ Escape: 'Escape'
10
+ };
11
+ var useKeyNavigation = function useKeyNavigation(_ref) {
12
+ var opened = _ref.opened,
13
+ closeOnEsc = _ref.closeOnEsc,
14
+ format = _ref.format,
15
+ maskWithFormat = _ref.maskWithFormat,
16
+ delimiters = _ref.delimiters,
17
+ onToggle = _ref.onToggle;
18
+ var onKeyDown = function onKeyDown(event) {
19
+ if (delimiters !== null && delimiters !== void 0 && delimiters.includes(event.key) && maskWithFormat && format && !dateHelper.needFullMonth(format)) {
20
+ event.preventDefault();
21
+ return;
22
+ }
23
+ switch (event.code) {
24
+ case keys.Space:
25
+ {
26
+ if (!opened) {
27
+ event.preventDefault();
28
+ onToggle(true, event);
29
+ }
30
+ break;
31
+ }
32
+ case keys.Escape:
33
+ {
34
+ if (opened && closeOnEsc) {
35
+ event.preventDefault();
36
+ onToggle(false, event);
37
+ }
38
+ break;
39
+ }
40
+ }
41
+ };
42
+ return {
43
+ onKeyDown: onKeyDown
44
+ };
45
+ };
46
+
47
+ exports.keys = keys;
48
+ exports.useKeyNavigation = useKeyNavigation;
49
+ //# sourceMappingURL=useKeyboardNavigation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useKeyboardNavigation.js","sources":["../../../../src/components/DateTimePicker/hooks/useKeyboardNavigation.ts"],"sourcesContent":["import type { ChangeEvent, KeyboardEvent, SyntheticEvent } from 'react';\nimport { needFullMonth } from 'src/components/DatePicker/utils/dateHelper';\n\ntype Props = {\n opened: boolean;\n closeOnEsc: boolean;\n delimiters?: string[];\n format?: string;\n maskWithFormat?: boolean;\n onToggle: (isOpen: boolean, event: SyntheticEvent | Event) => void;\n};\n\nexport const keys = {\n Space: 'Space',\n Escape: 'Escape',\n};\n\nexport const useKeyNavigation = ({ opened, closeOnEsc, format, maskWithFormat, delimiters, onToggle }: Props) => {\n const onKeyDown = (event: ChangeEvent<HTMLInputElement> & KeyboardEvent<HTMLInputElement>) => {\n if (delimiters?.includes(event.key) && maskWithFormat && format && !needFullMonth(format)) {\n event.preventDefault();\n return;\n }\n\n switch (event.code) {\n case keys.Space: {\n if (!opened) {\n event.preventDefault();\n onToggle(true, event);\n }\n break;\n }\n case keys.Escape: {\n if (opened && closeOnEsc) {\n event.preventDefault();\n onToggle(false, event);\n }\n break;\n }\n\n default: {\n break;\n }\n }\n };\n\n return { onKeyDown };\n};\n"],"names":["keys","Space","Escape","useKeyNavigation","_ref","opened","closeOnEsc","format","maskWithFormat","delimiters","onToggle","onKeyDown","event","includes","key","needFullMonth","preventDefault","code"],"mappings":";;;;;;AAYO,IAAMA,IAAI,GAAG;AAChBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,MAAM,EAAE,QAAA;AACZ,EAAC;IAEYC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,IAAA,EAAoF;AAAA,EAAA,IAA9EC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAEC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IAAEC,MAAM,GAAAH,IAAA,CAANG,MAAM;IAAEC,cAAc,GAAAJ,IAAA,CAAdI,cAAc;IAAEC,UAAU,GAAAL,IAAA,CAAVK,UAAU;IAAEC,QAAQ,GAAAN,IAAA,CAARM,QAAQ,CAAA;AAC/F,EAAA,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAIC,KAAsE,EAAK;IAC1F,IAAIH,UAAU,aAAVA,UAAU,KAAA,KAAA,CAAA,IAAVA,UAAU,CAAEI,QAAQ,CAACD,KAAK,CAACE,GAAG,CAAC,IAAIN,cAAc,IAAID,MAAM,IAAI,CAACQ,wBAAa,CAACR,MAAM,CAAC,EAAE;MACvFK,KAAK,CAACI,cAAc,EAAE,CAAA;AACtB,MAAA,OAAA;AACJ,KAAA;IAEA,QAAQJ,KAAK,CAACK,IAAI;MACd,KAAKjB,IAAI,CAACC,KAAK;AAAE,QAAA;UACb,IAAI,CAACI,MAAM,EAAE;YACTO,KAAK,CAACI,cAAc,EAAE,CAAA;AACtBN,YAAAA,QAAQ,CAAC,IAAI,EAAEE,KAAK,CAAC,CAAA;AACzB,WAAA;AACA,UAAA,MAAA;AACJ,SAAA;MACA,KAAKZ,IAAI,CAACE,MAAM;AAAE,QAAA;UACd,IAAIG,MAAM,IAAIC,UAAU,EAAE;YACtBM,KAAK,CAACI,cAAc,EAAE,CAAA;AACtBN,YAAAA,QAAQ,CAAC,KAAK,EAAEE,KAAK,CAAC,CAAA;AAC1B,WAAA;AACA,UAAA,MAAA;AACJ,SAAA;AAKJ,KAAA;GACH,CAAA;EAED,OAAO;AAAED,IAAAA,SAAS,EAATA,SAAAA;GAAW,CAAA;AACxB;;;;;"}