@gravity-ui/date-components 2.11.0-beta.0 → 2.12.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 (665) hide show
  1. package/dist/cjs/components/Calendar/Calendar.d.ts +4 -4
  2. package/dist/cjs/components/Calendar/Calendar.js +5 -6
  3. package/dist/cjs/components/Calendar/Calendar.js.map +1 -0
  4. package/dist/cjs/components/Calendar/index.d.ts +8 -8
  5. package/dist/cjs/components/Calendar/index.js +9 -21
  6. package/dist/cjs/components/Calendar/index.js.map +1 -0
  7. package/dist/cjs/components/CalendarView/Calendar.css +2 -1
  8. package/dist/cjs/components/CalendarView/Calendar.css.map +1 -0
  9. package/dist/cjs/components/CalendarView/CalendarView.d.ts +4 -4
  10. package/dist/cjs/components/CalendarView/CalendarView.js +11 -12
  11. package/dist/cjs/components/CalendarView/CalendarView.js.map +1 -0
  12. package/dist/cjs/components/CalendarView/hooks/types.d.ts +1 -1
  13. package/dist/cjs/components/CalendarView/hooks/types.js +1 -0
  14. package/dist/cjs/components/CalendarView/hooks/types.js.map +1 -0
  15. package/dist/cjs/components/CalendarView/hooks/useCalendarCellProps.d.ts +1 -1
  16. package/dist/cjs/components/CalendarView/hooks/useCalendarCellProps.js +4 -5
  17. package/dist/cjs/components/CalendarView/hooks/useCalendarCellProps.js.map +1 -0
  18. package/dist/cjs/components/CalendarView/hooks/useCalendarGridProps.d.ts +1 -1
  19. package/dist/cjs/components/CalendarView/hooks/useCalendarGridProps.js +2 -1
  20. package/dist/cjs/components/CalendarView/hooks/useCalendarGridProps.js.map +1 -0
  21. package/dist/cjs/components/CalendarView/hooks/useCalendarProps.d.ts +2 -2
  22. package/dist/cjs/components/CalendarView/hooks/useCalendarProps.js +5 -6
  23. package/dist/cjs/components/CalendarView/hooks/useCalendarProps.js.map +1 -0
  24. package/dist/cjs/components/CalendarView/hooks/useCalendarState.d.ts +3 -3
  25. package/dist/cjs/components/CalendarView/hooks/useCalendarState.js +6 -7
  26. package/dist/cjs/components/CalendarView/hooks/useCalendarState.js.map +1 -0
  27. package/dist/cjs/components/CalendarView/hooks/useRangeCalendarState.d.ts +4 -4
  28. package/dist/cjs/components/CalendarView/hooks/useRangeCalendarState.js +4 -3
  29. package/dist/cjs/components/CalendarView/hooks/useRangeCalendarState.js.map +1 -0
  30. package/dist/cjs/components/CalendarView/i18n/index.js +5 -6
  31. package/dist/cjs/components/CalendarView/i18n/index.js.map +1 -0
  32. package/dist/cjs/components/CalendarView/utils.d.ts +3 -3
  33. package/dist/cjs/components/CalendarView/utils.js +8 -6
  34. package/dist/cjs/components/CalendarView/utils.js.map +1 -0
  35. package/dist/cjs/components/DateField/DateField.css +2 -1
  36. package/dist/cjs/components/DateField/DateField.css.map +1 -0
  37. package/dist/cjs/components/DateField/DateField.d.ts +2 -2
  38. package/dist/cjs/components/DateField/DateField.js +5 -4
  39. package/dist/cjs/components/DateField/DateField.js.map +1 -0
  40. package/dist/cjs/components/DateField/hooks/useBaseDateFieldState.d.ts +13 -4
  41. package/dist/cjs/components/DateField/hooks/useBaseDateFieldState.js +11 -21
  42. package/dist/cjs/components/DateField/hooks/useBaseDateFieldState.js.map +1 -0
  43. package/dist/cjs/components/DateField/hooks/useDateFieldProps.d.ts +2 -2
  44. package/dist/cjs/components/DateField/hooks/useDateFieldProps.js +4 -5
  45. package/dist/cjs/components/DateField/hooks/useDateFieldProps.js.map +1 -0
  46. package/dist/cjs/components/DateField/hooks/useDateFieldState.d.ts +2 -2
  47. package/dist/cjs/components/DateField/hooks/useDateFieldState.js +14 -22
  48. package/dist/cjs/components/DateField/hooks/useDateFieldState.js.map +1 -0
  49. package/dist/cjs/components/DateField/i18n/en.json +1 -0
  50. package/dist/cjs/components/DateField/i18n/index.d.ts +1 -1
  51. package/dist/cjs/components/DateField/i18n/index.js +5 -6
  52. package/dist/cjs/components/DateField/i18n/index.js.map +1 -0
  53. package/dist/cjs/components/DateField/i18n/ru.json +1 -0
  54. package/dist/cjs/components/DateField/index.d.ts +4 -4
  55. package/dist/cjs/components/DateField/index.js +6 -18
  56. package/dist/cjs/components/DateField/index.js.map +1 -0
  57. package/dist/cjs/components/DateField/types.d.ts +9 -1
  58. package/dist/cjs/components/DateField/types.js +1 -0
  59. package/dist/cjs/components/DateField/types.js.map +1 -0
  60. package/dist/cjs/components/DateField/utils.d.ts +22 -6
  61. package/dist/cjs/components/DateField/utils.js +90 -8
  62. package/dist/cjs/components/DateField/utils.js.map +1 -0
  63. package/dist/cjs/components/DatePicker/DatePicker.css +2 -1
  64. package/dist/cjs/components/DatePicker/DatePicker.css.map +1 -0
  65. package/dist/cjs/components/DatePicker/DatePicker.d.ts +4 -4
  66. package/dist/cjs/components/DatePicker/DatePicker.js +11 -10
  67. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -0
  68. package/dist/cjs/components/DatePicker/MobileCalendar.css +2 -1
  69. package/dist/cjs/components/DatePicker/MobileCalendar.css.map +1 -0
  70. package/dist/cjs/components/DatePicker/MobileCalendar.d.ts +3 -3
  71. package/dist/cjs/components/DatePicker/MobileCalendar.js +7 -6
  72. package/dist/cjs/components/DatePicker/MobileCalendar.js.map +1 -0
  73. package/dist/cjs/components/DatePicker/StubButton.css +2 -1
  74. package/dist/cjs/components/DatePicker/StubButton.css.map +1 -0
  75. package/dist/cjs/components/DatePicker/StubButton.d.ts +1 -1
  76. package/dist/cjs/components/DatePicker/StubButton.js +2 -1
  77. package/dist/cjs/components/DatePicker/StubButton.js.map +1 -0
  78. package/dist/cjs/components/DatePicker/hooks/datePickerStateFactory.d.ts +15 -5
  79. package/dist/cjs/components/DatePicker/hooks/datePickerStateFactory.js +21 -20
  80. package/dist/cjs/components/DatePicker/hooks/datePickerStateFactory.js.map +1 -0
  81. package/dist/cjs/components/DatePicker/hooks/useDatePickerProps.d.ts +5 -5
  82. package/dist/cjs/components/DatePicker/hooks/useDatePickerProps.js +10 -7
  83. package/dist/cjs/components/DatePicker/hooks/useDatePickerProps.js.map +1 -0
  84. package/dist/cjs/components/DatePicker/hooks/useDatePickerState.d.ts +3 -3
  85. package/dist/cjs/components/DatePicker/hooks/useDatePickerState.js +8 -5
  86. package/dist/cjs/components/DatePicker/hooks/useDatePickerState.js.map +1 -0
  87. package/dist/cjs/components/DatePicker/i18n/index.js +5 -6
  88. package/dist/cjs/components/DatePicker/i18n/index.js.map +1 -0
  89. package/dist/cjs/components/DatePicker/index.d.ts +3 -3
  90. package/dist/cjs/components/DatePicker/index.js +5 -17
  91. package/dist/cjs/components/DatePicker/index.js.map +1 -0
  92. package/dist/cjs/components/DatePicker/utils/cn.js +2 -1
  93. package/dist/cjs/components/DatePicker/utils/cn.js.map +1 -0
  94. package/dist/cjs/components/DatePicker/utils/getCalendarModes.d.ts +5 -0
  95. package/dist/cjs/components/DatePicker/utils/getCalendarModes.js +21 -0
  96. package/dist/cjs/components/DatePicker/utils/getCalendarModes.js.map +1 -0
  97. package/dist/cjs/components/DatePicker/utils/getDateTimeValue.d.ts +1 -1
  98. package/dist/cjs/components/DatePicker/utils/getDateTimeValue.js +1 -0
  99. package/dist/cjs/components/DatePicker/utils/getDateTimeValue.js.map +1 -0
  100. package/dist/cjs/components/DatePicker/utils/index.d.ts +3 -2
  101. package/dist/cjs/components/DatePicker/utils/index.js +5 -16
  102. package/dist/cjs/components/DatePicker/utils/index.js.map +1 -0
  103. package/dist/cjs/components/HiddenInput/HiddenInput.js +3 -4
  104. package/dist/cjs/components/HiddenInput/HiddenInput.js.map +1 -0
  105. package/dist/cjs/components/RangeCalendar/RangeCalendar.d.ts +4 -4
  106. package/dist/cjs/components/RangeCalendar/RangeCalendar.js +5 -6
  107. package/dist/cjs/components/RangeCalendar/RangeCalendar.js.map +1 -0
  108. package/dist/cjs/components/RangeCalendar/index.d.ts +1 -1
  109. package/dist/cjs/components/RangeCalendar/index.js +3 -15
  110. package/dist/cjs/components/RangeCalendar/index.js.map +1 -0
  111. package/dist/cjs/components/RangeDateField/RangeDateField.css +2 -1
  112. package/dist/cjs/components/RangeDateField/RangeDateField.css.map +1 -0
  113. package/dist/cjs/components/RangeDateField/RangeDateField.d.ts +3 -3
  114. package/dist/cjs/components/RangeDateField/RangeDateField.js +5 -4
  115. package/dist/cjs/components/RangeDateField/RangeDateField.js.map +1 -0
  116. package/dist/cjs/components/RangeDateField/hooks/useRangeDateFieldState.d.ts +3 -3
  117. package/dist/cjs/components/RangeDateField/hooks/useRangeDateFieldState.js +19 -29
  118. package/dist/cjs/components/RangeDateField/hooks/useRangeDateFieldState.js.map +1 -0
  119. package/dist/cjs/components/RangeDateField/index.d.ts +2 -2
  120. package/dist/cjs/components/RangeDateField/index.js +4 -16
  121. package/dist/cjs/components/RangeDateField/index.js.map +1 -0
  122. package/dist/cjs/components/RangeDateField/utils/createPlaceholderRangeValue.d.ts +1 -1
  123. package/dist/cjs/components/RangeDateField/utils/createPlaceholderRangeValue.js +3 -2
  124. package/dist/cjs/components/RangeDateField/utils/createPlaceholderRangeValue.js.map +1 -0
  125. package/dist/cjs/components/RangeDateField/utils/getRangeEditableSections.d.ts +4 -4
  126. package/dist/cjs/components/RangeDateField/utils/getRangeEditableSections.js +2 -1
  127. package/dist/cjs/components/RangeDateField/utils/getRangeEditableSections.js.map +1 -0
  128. package/dist/cjs/components/RangeDateField/utils/index.d.ts +3 -3
  129. package/dist/cjs/components/RangeDateField/utils/index.js +5 -17
  130. package/dist/cjs/components/RangeDateField/utils/index.js.map +1 -0
  131. package/dist/cjs/components/RangeDateField/utils/isValidRange.d.ts +1 -1
  132. package/dist/cjs/components/RangeDateField/utils/isValidRange.js +2 -2
  133. package/dist/cjs/components/RangeDateField/utils/isValidRange.js.map +1 -0
  134. package/dist/cjs/components/RangeDatePicker/RangeDatePicker.css +2 -1
  135. package/dist/cjs/components/RangeDatePicker/RangeDatePicker.css.map +1 -0
  136. package/dist/cjs/components/RangeDatePicker/RangeDatePicker.d.ts +3 -3
  137. package/dist/cjs/components/RangeDatePicker/RangeDatePicker.js +10 -9
  138. package/dist/cjs/components/RangeDatePicker/RangeDatePicker.js.map +1 -0
  139. package/dist/cjs/components/RangeDatePicker/hooks/useRangeDatePickerState.d.ts +7 -4
  140. package/dist/cjs/components/RangeDatePicker/hooks/useRangeDatePickerState.js +15 -7
  141. package/dist/cjs/components/RangeDatePicker/hooks/useRangeDatePickerState.js.map +1 -0
  142. package/dist/cjs/components/RangeDatePicker/index.d.ts +2 -2
  143. package/dist/cjs/components/RangeDatePicker/index.js +4 -16
  144. package/dist/cjs/components/RangeDatePicker/index.js.map +1 -0
  145. package/dist/cjs/components/RangeDateSelection/RangeDateSelection.css +2 -1
  146. package/dist/cjs/components/RangeDateSelection/RangeDateSelection.css.map +1 -0
  147. package/dist/cjs/components/RangeDateSelection/RangeDateSelection.d.ts +4 -4
  148. package/dist/cjs/components/RangeDateSelection/RangeDateSelection.js +9 -10
  149. package/dist/cjs/components/RangeDateSelection/RangeDateSelection.js.map +1 -0
  150. package/dist/cjs/components/RangeDateSelection/components/NowLine/NowLine.css +2 -1
  151. package/dist/cjs/components/RangeDateSelection/components/NowLine/NowLine.css.map +1 -0
  152. package/dist/cjs/components/RangeDateSelection/components/NowLine/NowLine.d.ts +1 -1
  153. package/dist/cjs/components/RangeDateSelection/components/NowLine/NowLine.js +6 -8
  154. package/dist/cjs/components/RangeDateSelection/components/NowLine/NowLine.js.map +1 -0
  155. package/dist/cjs/components/RangeDateSelection/components/Ruler/Ruler.d.ts +2 -2
  156. package/dist/cjs/components/RangeDateSelection/components/Ruler/Ruler.js +12 -13
  157. package/dist/cjs/components/RangeDateSelection/components/Ruler/Ruler.js.map +1 -0
  158. package/dist/cjs/components/RangeDateSelection/components/RulerViewport/RulerViewport.css +2 -1
  159. package/dist/cjs/components/RangeDateSelection/components/RulerViewport/RulerViewport.css.map +1 -0
  160. package/dist/cjs/components/RangeDateSelection/components/RulerViewport/RulerViewport.d.ts +2 -2
  161. package/dist/cjs/components/RangeDateSelection/components/RulerViewport/RulerViewport.js +5 -6
  162. package/dist/cjs/components/RangeDateSelection/components/RulerViewport/RulerViewport.js.map +1 -0
  163. package/dist/cjs/components/RangeDateSelection/components/SelectionControl/SelectionControl.css +2 -1
  164. package/dist/cjs/components/RangeDateSelection/components/SelectionControl/SelectionControl.css.map +1 -0
  165. package/dist/cjs/components/RangeDateSelection/components/SelectionControl/SelectionControl.d.ts +3 -3
  166. package/dist/cjs/components/RangeDateSelection/components/SelectionControl/SelectionControl.js +6 -5
  167. package/dist/cjs/components/RangeDateSelection/components/SelectionControl/SelectionControl.js.map +1 -0
  168. package/dist/cjs/components/RangeDateSelection/components/Ticks/MiddleTicks.js +3 -2
  169. package/dist/cjs/components/RangeDateSelection/components/Ticks/MiddleTicks.js.map +1 -0
  170. package/dist/cjs/components/RangeDateSelection/components/Ticks/SlitTicks.js +3 -2
  171. package/dist/cjs/components/RangeDateSelection/components/Ticks/SlitTicks.js.map +1 -0
  172. package/dist/cjs/components/RangeDateSelection/components/Ticks/Ticks.css +2 -1
  173. package/dist/cjs/components/RangeDateSelection/components/Ticks/Ticks.css.map +1 -0
  174. package/dist/cjs/components/RangeDateSelection/components/Ticks/Ticks.d.ts +3 -3
  175. package/dist/cjs/components/RangeDateSelection/components/Ticks/Ticks.js +7 -8
  176. package/dist/cjs/components/RangeDateSelection/components/Ticks/Ticks.js.map +1 -0
  177. package/dist/cjs/components/RangeDateSelection/components/Ticks/UnavialableTicks.d.ts +3 -3
  178. package/dist/cjs/components/RangeDateSelection/components/Ticks/UnavialableTicks.js +6 -7
  179. package/dist/cjs/components/RangeDateSelection/components/Ticks/UnavialableTicks.js.map +1 -0
  180. package/dist/cjs/components/RangeDateSelection/components/Ticks/utils.d.ts +1 -1
  181. package/dist/cjs/components/RangeDateSelection/components/Ticks/utils.js +3 -2
  182. package/dist/cjs/components/RangeDateSelection/components/Ticks/utils.js.map +1 -0
  183. package/dist/cjs/components/RangeDateSelection/hooks/useRangeDateSelectionState.d.ts +1 -1
  184. package/dist/cjs/components/RangeDateSelection/hooks/useRangeDateSelectionState.js +7 -8
  185. package/dist/cjs/components/RangeDateSelection/hooks/useRangeDateSelectionState.js.map +1 -0
  186. package/dist/cjs/components/RangeDateSelection/i18n/index.js +5 -6
  187. package/dist/cjs/components/RangeDateSelection/i18n/index.js.map +1 -0
  188. package/dist/cjs/components/RangeDateSelection/index.d.ts +3 -3
  189. package/dist/cjs/components/RangeDateSelection/index.js +4 -16
  190. package/dist/cjs/components/RangeDateSelection/index.js.map +1 -0
  191. package/dist/cjs/components/RangeDateSelection/utils/date.js +2 -1
  192. package/dist/cjs/components/RangeDateSelection/utils/date.js.map +1 -0
  193. package/dist/cjs/components/RangeDateSelection/utils/span.js +1 -0
  194. package/dist/cjs/components/RangeDateSelection/utils/span.js.map +1 -0
  195. package/dist/cjs/components/RelativeDateField/RelativeDateField.css +2 -1
  196. package/dist/cjs/components/RelativeDateField/RelativeDateField.css.map +1 -0
  197. package/dist/cjs/components/RelativeDateField/RelativeDateField.d.ts +3 -3
  198. package/dist/cjs/components/RelativeDateField/RelativeDateField.js +9 -10
  199. package/dist/cjs/components/RelativeDateField/RelativeDateField.js.map +1 -0
  200. package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldProps.d.ts +4 -4
  201. package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldProps.js +3 -4
  202. package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldProps.js.map +1 -0
  203. package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldState.d.ts +1 -1
  204. package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldState.js +4 -5
  205. package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldState.js.map +1 -0
  206. package/dist/cjs/components/RelativeDateField/index.d.ts +3 -3
  207. package/dist/cjs/components/RelativeDateField/index.js +5 -17
  208. package/dist/cjs/components/RelativeDateField/index.js.map +1 -0
  209. package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.css +2 -1
  210. package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.css.map +1 -0
  211. package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.d.ts +4 -4
  212. package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.js +13 -14
  213. package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.js.map +1 -0
  214. package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.d.ts +4 -4
  215. package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.js +10 -6
  216. package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.js.map +1 -0
  217. package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerState.d.ts +3 -3
  218. package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerState.js +16 -9
  219. package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerState.js.map +1 -0
  220. package/dist/cjs/components/RelativeDatePicker/i18n/index.js +5 -6
  221. package/dist/cjs/components/RelativeDatePicker/i18n/index.js.map +1 -0
  222. package/dist/cjs/components/RelativeDatePicker/index.d.ts +3 -3
  223. package/dist/cjs/components/RelativeDatePicker/index.js +5 -17
  224. package/dist/cjs/components/RelativeDatePicker/index.js.map +1 -0
  225. package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.css +2 -1
  226. package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.css.map +1 -0
  227. package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.d.ts +2 -2
  228. package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.js +8 -9
  229. package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.js.map +1 -0
  230. package/dist/cjs/components/RelativeRangeDatePicker/components/Control/Control.css +2 -1
  231. package/dist/cjs/components/RelativeRangeDatePicker/components/Control/Control.css.map +1 -0
  232. package/dist/cjs/components/RelativeRangeDatePicker/components/Control/Control.d.ts +3 -3
  233. package/dist/cjs/components/RelativeRangeDatePicker/components/Control/Control.js +7 -8
  234. package/dist/cjs/components/RelativeRangeDatePicker/components/Control/Control.js.map +1 -0
  235. package/dist/cjs/components/RelativeRangeDatePicker/components/Control/i18n/index.js +5 -6
  236. package/dist/cjs/components/RelativeRangeDatePicker/components/Control/i18n/index.js.map +1 -0
  237. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.css +2 -1
  238. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.css.map +1 -0
  239. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.d.ts +6 -5
  240. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.js +10 -9
  241. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.js.map +1 -0
  242. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.js +5 -6
  243. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.js.map +1 -0
  244. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.d.ts +5 -5
  245. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.js +5 -6
  246. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.js.map +1 -0
  247. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.css +2 -1
  248. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.css.map +1 -0
  249. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.d.ts +3 -3
  250. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.js +6 -7
  251. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.js.map +1 -0
  252. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.css +2 -1
  253. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.css.map +1 -0
  254. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.d.ts +2 -2
  255. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.js +6 -7
  256. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.js.map +1 -0
  257. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/defaultPresets.js +2 -1
  258. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/defaultPresets.js.map +1 -0
  259. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/i18n/index.js +5 -6
  260. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/i18n/index.js.map +1 -0
  261. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/utils.d.ts +1 -1
  262. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/utils.js +3 -2
  263. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/utils.js.map +1 -0
  264. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.css +2 -1
  265. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.css.map +1 -0
  266. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.d.ts +1 -1
  267. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.js +4 -3
  268. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.js.map +1 -0
  269. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/i18n/index.js +5 -6
  270. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/i18n/index.js.map +1 -0
  271. package/dist/cjs/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.d.ts +2 -2
  272. package/dist/cjs/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.js +5 -6
  273. package/dist/cjs/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.js.map +1 -0
  274. package/dist/cjs/components/RelativeRangeDatePicker/i18n/index.js +5 -6
  275. package/dist/cjs/components/RelativeRangeDatePicker/i18n/index.js.map +1 -0
  276. package/dist/cjs/components/RelativeRangeDatePicker/index.d.ts +9 -9
  277. package/dist/cjs/components/RelativeRangeDatePicker/index.js +8 -20
  278. package/dist/cjs/components/RelativeRangeDatePicker/index.js.map +1 -0
  279. package/dist/cjs/components/RelativeRangeDatePicker/types.d.ts +5 -5
  280. package/dist/cjs/components/RelativeRangeDatePicker/types.js +1 -0
  281. package/dist/cjs/components/RelativeRangeDatePicker/types.js.map +1 -0
  282. package/dist/cjs/components/RelativeRangeDatePicker/utils.d.ts +3 -3
  283. package/dist/cjs/components/RelativeRangeDatePicker/utils.js +2 -1
  284. package/dist/cjs/components/RelativeRangeDatePicker/utils.js.map +1 -0
  285. package/dist/cjs/components/index.d.ts +11 -11
  286. package/dist/cjs/components/index.js +12 -24
  287. package/dist/cjs/components/index.js.map +1 -0
  288. package/dist/cjs/components/mixins.css +2 -0
  289. package/dist/cjs/components/mixins.css.map +1 -0
  290. package/dist/cjs/components/types/datePicker.d.ts +1 -1
  291. package/dist/cjs/components/types/datePicker.js +1 -0
  292. package/dist/cjs/components/types/datePicker.js.map +1 -0
  293. package/dist/cjs/components/types/events.js +1 -0
  294. package/dist/cjs/components/types/events.js.map +1 -0
  295. package/dist/cjs/components/types/index.d.ts +4 -4
  296. package/dist/cjs/components/types/index.js +1 -0
  297. package/dist/cjs/components/types/index.js.map +1 -0
  298. package/dist/cjs/components/types/inputs.js +1 -0
  299. package/dist/cjs/components/types/inputs.js.map +1 -0
  300. package/dist/cjs/components/types/style.js +1 -0
  301. package/dist/cjs/components/types/style.js.map +1 -0
  302. package/dist/cjs/components/utils/constants.js +1 -0
  303. package/dist/cjs/components/utils/constants.js.map +1 -0
  304. package/dist/cjs/components/utils/dates.js +2 -1
  305. package/dist/cjs/components/utils/dates.js.map +1 -0
  306. package/dist/cjs/components/utils/filterDOMProps.d.ts +1 -1
  307. package/dist/cjs/components/utils/filterDOMProps.js +1 -0
  308. package/dist/cjs/components/utils/filterDOMProps.js.map +1 -0
  309. package/dist/cjs/components/utils/getButtonSizeForInput.js +1 -0
  310. package/dist/cjs/components/utils/getButtonSizeForInput.js.map +1 -0
  311. package/dist/cjs/components/utils/mergeProps.js +1 -0
  312. package/dist/cjs/components/utils/mergeProps.js.map +1 -0
  313. package/dist/cjs/components/utils/useDefaultTimeZone.js +3 -4
  314. package/dist/cjs/components/utils/useDefaultTimeZone.js.map +1 -0
  315. package/dist/cjs/components/utils/validation/datePicker.js +2 -1
  316. package/dist/cjs/components/utils/validation/datePicker.js.map +1 -0
  317. package/dist/cjs/components/utils/validation/i18n/index.js +5 -6
  318. package/dist/cjs/components/utils/validation/i18n/index.js.map +1 -0
  319. package/dist/cjs/components/variables.css +2 -0
  320. package/dist/cjs/components/variables.css.map +1 -0
  321. package/dist/cjs/hooks/useEventHandler.js +3 -4
  322. package/dist/cjs/hooks/useEventHandler.js.map +1 -0
  323. package/dist/cjs/hooks/useMove.js +4 -5
  324. package/dist/cjs/hooks/useMove.js.map +1 -0
  325. package/dist/cjs/hooks/useResizeObserver.js +3 -4
  326. package/dist/cjs/hooks/useResizeObserver.js.map +1 -0
  327. package/dist/cjs/index.d.ts +1 -1
  328. package/dist/cjs/index.js +3 -15
  329. package/dist/cjs/index.js.map +1 -0
  330. package/dist/cjs/package.json +1 -0
  331. package/dist/cjs/utils/cn.js +1 -0
  332. package/dist/cjs/utils/cn.js.map +1 -0
  333. package/dist/esm/components/Calendar/Calendar.d.ts +4 -4
  334. package/dist/esm/components/Calendar/Calendar.js +4 -3
  335. package/dist/esm/components/Calendar/Calendar.js.map +1 -0
  336. package/dist/esm/components/Calendar/index.d.ts +8 -8
  337. package/dist/esm/components/Calendar/index.js +8 -7
  338. package/dist/esm/components/Calendar/index.js.map +1 -0
  339. package/dist/esm/components/CalendarView/Calendar.css +2 -1
  340. package/dist/esm/components/CalendarView/Calendar.css.map +1 -0
  341. package/dist/esm/components/CalendarView/CalendarView.d.ts +4 -4
  342. package/dist/esm/components/CalendarView/CalendarView.js +10 -9
  343. package/dist/esm/components/CalendarView/CalendarView.js.map +1 -0
  344. package/dist/esm/components/CalendarView/hooks/types.d.ts +1 -1
  345. package/dist/esm/components/CalendarView/hooks/types.js +1 -0
  346. package/dist/esm/components/CalendarView/hooks/types.js.map +1 -0
  347. package/dist/esm/components/CalendarView/hooks/useCalendarCellProps.d.ts +1 -1
  348. package/dist/esm/components/CalendarView/hooks/useCalendarCellProps.js +2 -1
  349. package/dist/esm/components/CalendarView/hooks/useCalendarCellProps.js.map +1 -0
  350. package/dist/esm/components/CalendarView/hooks/useCalendarGridProps.d.ts +1 -1
  351. package/dist/esm/components/CalendarView/hooks/useCalendarGridProps.js +2 -1
  352. package/dist/esm/components/CalendarView/hooks/useCalendarGridProps.js.map +1 -0
  353. package/dist/esm/components/CalendarView/hooks/useCalendarProps.d.ts +2 -2
  354. package/dist/esm/components/CalendarView/hooks/useCalendarProps.js +3 -2
  355. package/dist/esm/components/CalendarView/hooks/useCalendarProps.js.map +1 -0
  356. package/dist/esm/components/CalendarView/hooks/useCalendarState.d.ts +3 -3
  357. package/dist/esm/components/CalendarView/hooks/useCalendarState.js +4 -3
  358. package/dist/esm/components/CalendarView/hooks/useCalendarState.js.map +1 -0
  359. package/dist/esm/components/CalendarView/hooks/useRangeCalendarState.d.ts +4 -4
  360. package/dist/esm/components/CalendarView/hooks/useRangeCalendarState.js +4 -3
  361. package/dist/esm/components/CalendarView/hooks/useRangeCalendarState.js.map +1 -0
  362. package/dist/esm/components/CalendarView/i18n/index.js +4 -3
  363. package/dist/esm/components/CalendarView/i18n/index.js.map +1 -0
  364. package/dist/esm/components/CalendarView/utils.d.ts +3 -3
  365. package/dist/esm/components/CalendarView/utils.js +8 -6
  366. package/dist/esm/components/CalendarView/utils.js.map +1 -0
  367. package/dist/esm/components/DateField/DateField.css +2 -1
  368. package/dist/esm/components/DateField/DateField.css.map +1 -0
  369. package/dist/esm/components/DateField/DateField.d.ts +2 -2
  370. package/dist/esm/components/DateField/DateField.js +6 -5
  371. package/dist/esm/components/DateField/DateField.js.map +1 -0
  372. package/dist/esm/components/DateField/hooks/useBaseDateFieldState.d.ts +13 -4
  373. package/dist/esm/components/DateField/hooks/useBaseDateFieldState.js +9 -17
  374. package/dist/esm/components/DateField/hooks/useBaseDateFieldState.js.map +1 -0
  375. package/dist/esm/components/DateField/hooks/useDateFieldProps.d.ts +2 -2
  376. package/dist/esm/components/DateField/hooks/useDateFieldProps.js +2 -1
  377. package/dist/esm/components/DateField/hooks/useDateFieldProps.js.map +1 -0
  378. package/dist/esm/components/DateField/hooks/useDateFieldState.d.ts +2 -2
  379. package/dist/esm/components/DateField/hooks/useDateFieldState.js +12 -18
  380. package/dist/esm/components/DateField/hooks/useDateFieldState.js.map +1 -0
  381. package/dist/esm/components/DateField/i18n/en.json +1 -0
  382. package/dist/esm/components/DateField/i18n/index.d.ts +1 -1
  383. package/dist/esm/components/DateField/i18n/index.js +4 -3
  384. package/dist/esm/components/DateField/i18n/index.js.map +1 -0
  385. package/dist/esm/components/DateField/i18n/ru.json +1 -0
  386. package/dist/esm/components/DateField/index.d.ts +4 -4
  387. package/dist/esm/components/DateField/index.js +5 -4
  388. package/dist/esm/components/DateField/index.js.map +1 -0
  389. package/dist/esm/components/DateField/types.d.ts +9 -1
  390. package/dist/esm/components/DateField/types.js +1 -0
  391. package/dist/esm/components/DateField/types.js.map +1 -0
  392. package/dist/esm/components/DateField/utils.d.ts +22 -6
  393. package/dist/esm/components/DateField/utils.js +86 -5
  394. package/dist/esm/components/DateField/utils.js.map +1 -0
  395. package/dist/esm/components/DatePicker/DatePicker.css +2 -1
  396. package/dist/esm/components/DatePicker/DatePicker.css.map +1 -0
  397. package/dist/esm/components/DatePicker/DatePicker.d.ts +4 -4
  398. package/dist/esm/components/DatePicker/DatePicker.js +12 -11
  399. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -0
  400. package/dist/esm/components/DatePicker/MobileCalendar.css +2 -1
  401. package/dist/esm/components/DatePicker/MobileCalendar.css.map +1 -0
  402. package/dist/esm/components/DatePicker/MobileCalendar.d.ts +3 -3
  403. package/dist/esm/components/DatePicker/MobileCalendar.js +8 -7
  404. package/dist/esm/components/DatePicker/MobileCalendar.js.map +1 -0
  405. package/dist/esm/components/DatePicker/StubButton.css +2 -1
  406. package/dist/esm/components/DatePicker/StubButton.css.map +1 -0
  407. package/dist/esm/components/DatePicker/StubButton.d.ts +1 -1
  408. package/dist/esm/components/DatePicker/StubButton.js +3 -2
  409. package/dist/esm/components/DatePicker/StubButton.js.map +1 -0
  410. package/dist/esm/components/DatePicker/hooks/datePickerStateFactory.d.ts +15 -5
  411. package/dist/esm/components/DatePicker/hooks/datePickerStateFactory.js +19 -16
  412. package/dist/esm/components/DatePicker/hooks/datePickerStateFactory.js.map +1 -0
  413. package/dist/esm/components/DatePicker/hooks/useDatePickerProps.d.ts +5 -5
  414. package/dist/esm/components/DatePicker/hooks/useDatePickerProps.js +10 -7
  415. package/dist/esm/components/DatePicker/hooks/useDatePickerProps.js.map +1 -0
  416. package/dist/esm/components/DatePicker/hooks/useDatePickerState.d.ts +3 -3
  417. package/dist/esm/components/DatePicker/hooks/useDatePickerState.js +7 -4
  418. package/dist/esm/components/DatePicker/hooks/useDatePickerState.js.map +1 -0
  419. package/dist/esm/components/DatePicker/i18n/index.js +4 -3
  420. package/dist/esm/components/DatePicker/i18n/index.js.map +1 -0
  421. package/dist/esm/components/DatePicker/index.d.ts +3 -3
  422. package/dist/esm/components/DatePicker/index.js +4 -3
  423. package/dist/esm/components/DatePicker/index.js.map +1 -0
  424. package/dist/esm/components/DatePicker/utils/cn.js +2 -1
  425. package/dist/esm/components/DatePicker/utils/cn.js.map +1 -0
  426. package/dist/esm/components/DatePicker/utils/getCalendarModes.d.ts +5 -0
  427. package/dist/esm/components/DatePicker/utils/getCalendarModes.js +18 -0
  428. package/dist/esm/components/DatePicker/utils/getCalendarModes.js.map +1 -0
  429. package/dist/esm/components/DatePicker/utils/getDateTimeValue.d.ts +1 -1
  430. package/dist/esm/components/DatePicker/utils/getDateTimeValue.js +1 -0
  431. package/dist/esm/components/DatePicker/utils/getDateTimeValue.js.map +1 -0
  432. package/dist/esm/components/DatePicker/utils/index.d.ts +3 -2
  433. package/dist/esm/components/DatePicker/utils/index.js +4 -2
  434. package/dist/esm/components/DatePicker/utils/index.js.map +1 -0
  435. package/dist/esm/components/HiddenInput/HiddenInput.js +1 -0
  436. package/dist/esm/components/HiddenInput/HiddenInput.js.map +1 -0
  437. package/dist/esm/components/RangeCalendar/RangeCalendar.d.ts +4 -4
  438. package/dist/esm/components/RangeCalendar/RangeCalendar.js +4 -3
  439. package/dist/esm/components/RangeCalendar/RangeCalendar.js.map +1 -0
  440. package/dist/esm/components/RangeCalendar/index.d.ts +1 -1
  441. package/dist/esm/components/RangeCalendar/index.js +2 -1
  442. package/dist/esm/components/RangeCalendar/index.js.map +1 -0
  443. package/dist/esm/components/RangeDateField/RangeDateField.css +2 -1
  444. package/dist/esm/components/RangeDateField/RangeDateField.css.map +1 -0
  445. package/dist/esm/components/RangeDateField/RangeDateField.d.ts +3 -3
  446. package/dist/esm/components/RangeDateField/RangeDateField.js +6 -5
  447. package/dist/esm/components/RangeDateField/RangeDateField.js.map +1 -0
  448. package/dist/esm/components/RangeDateField/hooks/useRangeDateFieldState.d.ts +3 -3
  449. package/dist/esm/components/RangeDateField/hooks/useRangeDateFieldState.js +17 -25
  450. package/dist/esm/components/RangeDateField/hooks/useRangeDateFieldState.js.map +1 -0
  451. package/dist/esm/components/RangeDateField/index.d.ts +2 -2
  452. package/dist/esm/components/RangeDateField/index.js +3 -2
  453. package/dist/esm/components/RangeDateField/index.js.map +1 -0
  454. package/dist/esm/components/RangeDateField/utils/createPlaceholderRangeValue.d.ts +1 -1
  455. package/dist/esm/components/RangeDateField/utils/createPlaceholderRangeValue.js +3 -2
  456. package/dist/esm/components/RangeDateField/utils/createPlaceholderRangeValue.js.map +1 -0
  457. package/dist/esm/components/RangeDateField/utils/getRangeEditableSections.d.ts +4 -4
  458. package/dist/esm/components/RangeDateField/utils/getRangeEditableSections.js +2 -1
  459. package/dist/esm/components/RangeDateField/utils/getRangeEditableSections.js.map +1 -0
  460. package/dist/esm/components/RangeDateField/utils/index.d.ts +3 -3
  461. package/dist/esm/components/RangeDateField/utils/index.js +4 -3
  462. package/dist/esm/components/RangeDateField/utils/index.js.map +1 -0
  463. package/dist/esm/components/RangeDateField/utils/isValidRange.d.ts +1 -1
  464. package/dist/esm/components/RangeDateField/utils/isValidRange.js +2 -2
  465. package/dist/esm/components/RangeDateField/utils/isValidRange.js.map +1 -0
  466. package/dist/esm/components/RangeDatePicker/RangeDatePicker.css +2 -1
  467. package/dist/esm/components/RangeDatePicker/RangeDatePicker.css.map +1 -0
  468. package/dist/esm/components/RangeDatePicker/RangeDatePicker.d.ts +3 -3
  469. package/dist/esm/components/RangeDatePicker/RangeDatePicker.js +11 -10
  470. package/dist/esm/components/RangeDatePicker/RangeDatePicker.js.map +1 -0
  471. package/dist/esm/components/RangeDatePicker/hooks/useRangeDatePickerState.d.ts +7 -4
  472. package/dist/esm/components/RangeDatePicker/hooks/useRangeDatePickerState.js +14 -6
  473. package/dist/esm/components/RangeDatePicker/hooks/useRangeDatePickerState.js.map +1 -0
  474. package/dist/esm/components/RangeDatePicker/index.d.ts +2 -2
  475. package/dist/esm/components/RangeDatePicker/index.js +3 -2
  476. package/dist/esm/components/RangeDatePicker/index.js.map +1 -0
  477. package/dist/esm/components/RangeDateSelection/RangeDateSelection.css +2 -1
  478. package/dist/esm/components/RangeDateSelection/RangeDateSelection.css.map +1 -0
  479. package/dist/esm/components/RangeDateSelection/RangeDateSelection.d.ts +4 -4
  480. package/dist/esm/components/RangeDateSelection/RangeDateSelection.js +8 -7
  481. package/dist/esm/components/RangeDateSelection/RangeDateSelection.js.map +1 -0
  482. package/dist/esm/components/RangeDateSelection/components/NowLine/NowLine.css +2 -1
  483. package/dist/esm/components/RangeDateSelection/components/NowLine/NowLine.css.map +1 -0
  484. package/dist/esm/components/RangeDateSelection/components/NowLine/NowLine.d.ts +1 -1
  485. package/dist/esm/components/RangeDateSelection/components/NowLine/NowLine.js +5 -5
  486. package/dist/esm/components/RangeDateSelection/components/NowLine/NowLine.js.map +1 -0
  487. package/dist/esm/components/RangeDateSelection/components/Ruler/Ruler.d.ts +2 -2
  488. package/dist/esm/components/RangeDateSelection/components/Ruler/Ruler.js +9 -8
  489. package/dist/esm/components/RangeDateSelection/components/Ruler/Ruler.js.map +1 -0
  490. package/dist/esm/components/RangeDateSelection/components/RulerViewport/RulerViewport.css +2 -1
  491. package/dist/esm/components/RangeDateSelection/components/RulerViewport/RulerViewport.css.map +1 -0
  492. package/dist/esm/components/RangeDateSelection/components/RulerViewport/RulerViewport.d.ts +2 -2
  493. package/dist/esm/components/RangeDateSelection/components/RulerViewport/RulerViewport.js +4 -3
  494. package/dist/esm/components/RangeDateSelection/components/RulerViewport/RulerViewport.js.map +1 -0
  495. package/dist/esm/components/RangeDateSelection/components/SelectionControl/SelectionControl.css +2 -1
  496. package/dist/esm/components/RangeDateSelection/components/SelectionControl/SelectionControl.css.map +1 -0
  497. package/dist/esm/components/RangeDateSelection/components/SelectionControl/SelectionControl.d.ts +3 -3
  498. package/dist/esm/components/RangeDateSelection/components/SelectionControl/SelectionControl.js +7 -6
  499. package/dist/esm/components/RangeDateSelection/components/SelectionControl/SelectionControl.js.map +1 -0
  500. package/dist/esm/components/RangeDateSelection/components/Ticks/MiddleTicks.js +3 -2
  501. package/dist/esm/components/RangeDateSelection/components/Ticks/MiddleTicks.js.map +1 -0
  502. package/dist/esm/components/RangeDateSelection/components/Ticks/SlitTicks.js +3 -2
  503. package/dist/esm/components/RangeDateSelection/components/Ticks/SlitTicks.js.map +1 -0
  504. package/dist/esm/components/RangeDateSelection/components/Ticks/Ticks.css +2 -1
  505. package/dist/esm/components/RangeDateSelection/components/Ticks/Ticks.css.map +1 -0
  506. package/dist/esm/components/RangeDateSelection/components/Ticks/Ticks.d.ts +3 -3
  507. package/dist/esm/components/RangeDateSelection/components/Ticks/Ticks.js +6 -5
  508. package/dist/esm/components/RangeDateSelection/components/Ticks/Ticks.js.map +1 -0
  509. package/dist/esm/components/RangeDateSelection/components/Ticks/UnavialableTicks.d.ts +3 -3
  510. package/dist/esm/components/RangeDateSelection/components/Ticks/UnavialableTicks.js +5 -4
  511. package/dist/esm/components/RangeDateSelection/components/Ticks/UnavialableTicks.js.map +1 -0
  512. package/dist/esm/components/RangeDateSelection/components/Ticks/utils.d.ts +1 -1
  513. package/dist/esm/components/RangeDateSelection/components/Ticks/utils.js +3 -2
  514. package/dist/esm/components/RangeDateSelection/components/Ticks/utils.js.map +1 -0
  515. package/dist/esm/components/RangeDateSelection/hooks/useRangeDateSelectionState.d.ts +1 -1
  516. package/dist/esm/components/RangeDateSelection/hooks/useRangeDateSelectionState.js +5 -4
  517. package/dist/esm/components/RangeDateSelection/hooks/useRangeDateSelectionState.js.map +1 -0
  518. package/dist/esm/components/RangeDateSelection/i18n/index.js +4 -3
  519. package/dist/esm/components/RangeDateSelection/i18n/index.js.map +1 -0
  520. package/dist/esm/components/RangeDateSelection/index.d.ts +3 -3
  521. package/dist/esm/components/RangeDateSelection/index.js +3 -2
  522. package/dist/esm/components/RangeDateSelection/index.js.map +1 -0
  523. package/dist/esm/components/RangeDateSelection/utils/date.js +2 -1
  524. package/dist/esm/components/RangeDateSelection/utils/date.js.map +1 -0
  525. package/dist/esm/components/RangeDateSelection/utils/span.js +1 -0
  526. package/dist/esm/components/RangeDateSelection/utils/span.js.map +1 -0
  527. package/dist/esm/components/RelativeDateField/RelativeDateField.css +2 -1
  528. package/dist/esm/components/RelativeDateField/RelativeDateField.css.map +1 -0
  529. package/dist/esm/components/RelativeDateField/RelativeDateField.d.ts +3 -3
  530. package/dist/esm/components/RelativeDateField/RelativeDateField.js +8 -7
  531. package/dist/esm/components/RelativeDateField/RelativeDateField.js.map +1 -0
  532. package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldProps.d.ts +4 -4
  533. package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldProps.js +1 -0
  534. package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldProps.js.map +1 -0
  535. package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldState.d.ts +1 -1
  536. package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldState.js +3 -2
  537. package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldState.js.map +1 -0
  538. package/dist/esm/components/RelativeDateField/index.d.ts +3 -3
  539. package/dist/esm/components/RelativeDateField/index.js +4 -3
  540. package/dist/esm/components/RelativeDateField/index.js.map +1 -0
  541. package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.css +2 -1
  542. package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.css.map +1 -0
  543. package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.d.ts +4 -4
  544. package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.js +12 -11
  545. package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.js.map +1 -0
  546. package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.d.ts +4 -4
  547. package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.js +10 -6
  548. package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.js.map +1 -0
  549. package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerState.d.ts +3 -3
  550. package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerState.js +14 -5
  551. package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerState.js.map +1 -0
  552. package/dist/esm/components/RelativeDatePicker/i18n/index.js +4 -3
  553. package/dist/esm/components/RelativeDatePicker/i18n/index.js.map +1 -0
  554. package/dist/esm/components/RelativeDatePicker/index.d.ts +3 -3
  555. package/dist/esm/components/RelativeDatePicker/index.js +4 -3
  556. package/dist/esm/components/RelativeDatePicker/index.js.map +1 -0
  557. package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.css +2 -1
  558. package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.css.map +1 -0
  559. package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.d.ts +2 -2
  560. package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.js +7 -6
  561. package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.js.map +1 -0
  562. package/dist/esm/components/RelativeRangeDatePicker/components/Control/Control.css +2 -1
  563. package/dist/esm/components/RelativeRangeDatePicker/components/Control/Control.css.map +1 -0
  564. package/dist/esm/components/RelativeRangeDatePicker/components/Control/Control.d.ts +3 -3
  565. package/dist/esm/components/RelativeRangeDatePicker/components/Control/Control.js +6 -5
  566. package/dist/esm/components/RelativeRangeDatePicker/components/Control/Control.js.map +1 -0
  567. package/dist/esm/components/RelativeRangeDatePicker/components/Control/i18n/index.js +4 -3
  568. package/dist/esm/components/RelativeRangeDatePicker/components/Control/i18n/index.js.map +1 -0
  569. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.css +2 -1
  570. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.css.map +1 -0
  571. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.d.ts +6 -5
  572. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.js +11 -10
  573. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.js.map +1 -0
  574. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.js +4 -3
  575. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.js.map +1 -0
  576. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.d.ts +5 -5
  577. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.js +3 -2
  578. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.js.map +1 -0
  579. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.css +2 -1
  580. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.css.map +1 -0
  581. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.d.ts +3 -3
  582. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.js +5 -4
  583. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.js.map +1 -0
  584. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.css +2 -1
  585. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.css.map +1 -0
  586. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.d.ts +2 -2
  587. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.js +5 -4
  588. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.js.map +1 -0
  589. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/defaultPresets.js +2 -1
  590. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/defaultPresets.js.map +1 -0
  591. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/i18n/index.js +4 -3
  592. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/i18n/index.js.map +1 -0
  593. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/utils.d.ts +1 -1
  594. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/utils.js +3 -2
  595. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/utils.js.map +1 -0
  596. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.css +2 -1
  597. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.css.map +1 -0
  598. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.d.ts +1 -1
  599. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.js +5 -4
  600. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.js.map +1 -0
  601. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/i18n/index.js +4 -3
  602. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/i18n/index.js.map +1 -0
  603. package/dist/esm/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.d.ts +2 -2
  604. package/dist/esm/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.js +3 -2
  605. package/dist/esm/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.js.map +1 -0
  606. package/dist/esm/components/RelativeRangeDatePicker/i18n/index.js +4 -3
  607. package/dist/esm/components/RelativeRangeDatePicker/i18n/index.js.map +1 -0
  608. package/dist/esm/components/RelativeRangeDatePicker/index.d.ts +9 -9
  609. package/dist/esm/components/RelativeRangeDatePicker/index.js +7 -6
  610. package/dist/esm/components/RelativeRangeDatePicker/index.js.map +1 -0
  611. package/dist/esm/components/RelativeRangeDatePicker/types.d.ts +5 -5
  612. package/dist/esm/components/RelativeRangeDatePicker/types.js +1 -0
  613. package/dist/esm/components/RelativeRangeDatePicker/types.js.map +1 -0
  614. package/dist/esm/components/RelativeRangeDatePicker/utils.d.ts +3 -3
  615. package/dist/esm/components/RelativeRangeDatePicker/utils.js +2 -1
  616. package/dist/esm/components/RelativeRangeDatePicker/utils.js.map +1 -0
  617. package/dist/esm/components/index.d.ts +11 -11
  618. package/dist/esm/components/index.js +11 -10
  619. package/dist/esm/components/index.js.map +1 -0
  620. package/dist/esm/components/mixins.css +2 -0
  621. package/dist/esm/components/mixins.css.map +1 -0
  622. package/dist/esm/components/types/datePicker.d.ts +1 -1
  623. package/dist/esm/components/types/datePicker.js +1 -0
  624. package/dist/esm/components/types/datePicker.js.map +1 -0
  625. package/dist/esm/components/types/events.js +1 -0
  626. package/dist/esm/components/types/events.js.map +1 -0
  627. package/dist/esm/components/types/index.d.ts +4 -4
  628. package/dist/esm/components/types/index.js +1 -0
  629. package/dist/esm/components/types/index.js.map +1 -0
  630. package/dist/esm/components/types/inputs.js +1 -0
  631. package/dist/esm/components/types/inputs.js.map +1 -0
  632. package/dist/esm/components/types/style.js +1 -0
  633. package/dist/esm/components/types/style.js.map +1 -0
  634. package/dist/esm/components/utils/constants.js +1 -0
  635. package/dist/esm/components/utils/constants.js.map +1 -0
  636. package/dist/esm/components/utils/dates.js +2 -1
  637. package/dist/esm/components/utils/dates.js.map +1 -0
  638. package/dist/esm/components/utils/filterDOMProps.d.ts +1 -1
  639. package/dist/esm/components/utils/filterDOMProps.js +1 -0
  640. package/dist/esm/components/utils/filterDOMProps.js.map +1 -0
  641. package/dist/esm/components/utils/getButtonSizeForInput.js +1 -0
  642. package/dist/esm/components/utils/getButtonSizeForInput.js.map +1 -0
  643. package/dist/esm/components/utils/mergeProps.js +1 -0
  644. package/dist/esm/components/utils/mergeProps.js.map +1 -0
  645. package/dist/esm/components/utils/useDefaultTimeZone.js +1 -0
  646. package/dist/esm/components/utils/useDefaultTimeZone.js.map +1 -0
  647. package/dist/esm/components/utils/validation/datePicker.js +2 -1
  648. package/dist/esm/components/utils/validation/datePicker.js.map +1 -0
  649. package/dist/esm/components/utils/validation/i18n/index.js +4 -3
  650. package/dist/esm/components/utils/validation/i18n/index.js.map +1 -0
  651. package/dist/esm/components/variables.css +2 -0
  652. package/dist/esm/components/variables.css.map +1 -0
  653. package/dist/esm/hooks/useEventHandler.js +1 -0
  654. package/dist/esm/hooks/useEventHandler.js.map +1 -0
  655. package/dist/esm/hooks/useMove.js +2 -1
  656. package/dist/esm/hooks/useMove.js.map +1 -0
  657. package/dist/esm/hooks/useResizeObserver.js +1 -0
  658. package/dist/esm/hooks/useResizeObserver.js.map +1 -0
  659. package/dist/esm/index.d.ts +1 -1
  660. package/dist/esm/index.js +2 -1
  661. package/dist/esm/index.js.map +1 -0
  662. package/dist/esm/package.json +1 -0
  663. package/dist/esm/utils/cn.js +1 -0
  664. package/dist/esm/utils/cn.js.map +1 -0
  665. package/package.json +38 -34
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["components/RangeDateField/index.ts"],"names":[],"mappings":"AAAA,oCAAiC;AAEjC,kDAA+C","sourcesContent":["export * from './RangeDateField';\n\nexport * from './hooks/useRangeDateFieldState';\n"]}
@@ -1,4 +1,4 @@
1
- import type { PlaceholderValueOptions } from '../../utils/dates';
1
+ import type { PlaceholderValueOptions } from "../../utils/dates.js";
2
2
  export declare function createPlaceholderRangeValue({ placeholderValue, timeZone }: PlaceholderValueOptions): {
3
3
  start: import("@gravity-ui/date-utils").DateTime;
4
4
  end: import("@gravity-ui/date-utils").DateTime;
@@ -1,5 +1,6 @@
1
- import { createPlaceholderValue } from '../../utils/dates';
1
+ import { createPlaceholderValue } from "../../utils/dates.js";
2
2
  export function createPlaceholderRangeValue({ placeholderValue, timeZone }) {
3
3
  const date = createPlaceholderValue({ placeholderValue, timeZone });
4
- return { start: date, end: date };
4
+ return { start: date.startOf('day'), end: date.endOf('day') };
5
5
  }
6
+ //# sourceMappingURL=createPlaceholderRangeValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPlaceholderRangeValue.js","sourceRoot":"../../../../../src","sources":["components/RangeDateField/utils/createPlaceholderRangeValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAC,6BAA0B;AAGzD,MAAM,UAAU,2BAA2B,CAAC,EAAC,gBAAgB,EAAE,QAAQ,EAA0B;IAC7F,MAAM,IAAI,GAAG,sBAAsB,CAAC,EAAC,gBAAgB,EAAE,QAAQ,EAAC,CAAC,CAAC;IAClE,OAAO,EAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAC,CAAC;AAChE,CAAC","sourcesContent":["import {createPlaceholderValue} from '../../utils/dates';\nimport type {PlaceholderValueOptions} from '../../utils/dates';\n\nexport function createPlaceholderRangeValue({placeholderValue, timeZone}: PlaceholderValueOptions) {\n const date = createPlaceholderValue({placeholderValue, timeZone});\n return {start: date.startOf('day'), end: date.endOf('day')};\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import type { DateTime } from '@gravity-ui/date-utils';
2
- import type { DateFieldSectionWithoutPosition } from '../../DateField/types';
3
- import type { EDITABLE_SEGMENTS } from '../../DateField/utils';
4
- import type { RangeValue } from '../../types';
5
- export declare function getRangeEditableSections(sections: DateFieldSectionWithoutPosition[], value: RangeValue<DateTime>, validSegments: RangeValue<typeof EDITABLE_SEGMENTS>, delimiter: string): import("../../DateField/types").DateFieldSection[];
2
+ import type { DateFieldSectionWithoutPosition } from "../../DateField/types.js";
3
+ import type { EDITABLE_SEGMENTS } from "../../DateField/utils.js";
4
+ import type { RangeValue } from "../../types/index.js";
5
+ export declare function getRangeEditableSections(sections: DateFieldSectionWithoutPosition[], value: RangeValue<DateTime>, validSegments: RangeValue<typeof EDITABLE_SEGMENTS>, delimiter: string): import("../../DateField/types.js").DateFieldSection[];
@@ -1,4 +1,4 @@
1
- import { getEditableSections, isEditableSection, toEditableSection } from '../../DateField/utils';
1
+ import { getEditableSections, isEditableSection, toEditableSection } from "../../DateField/utils.js";
2
2
  export function getRangeEditableSections(sections, value, validSegments, delimiter) {
3
3
  const start = getEditableSections(sections, value.start, validSegments.start);
4
4
  const end = getEditableSections(sections, value.end, validSegments.end);
@@ -36,3 +36,4 @@ export function getRangeEditableSections(sections, value, validSegments, delimit
36
36
  }
37
37
  return [...start, delimiterSection, ...end];
38
38
  }
39
+ //# sourceMappingURL=getRangeEditableSections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getRangeEditableSections.js","sourceRoot":"../../../../../src","sources":["components/RangeDateField/utils/getRangeEditableSections.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAC,iCAA8B;AAIhG,MAAM,UAAU,wBAAwB,CACpC,QAA2C,EAC3C,KAA2B,EAC3B,aAAmD,EACnD,SAAiB;IAEjB,MAAM,KAAK,GAAG,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9E,MAAM,GAAG,GAAG,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;IAExE,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrC,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC;IACxB,MAAM,uBAAuB,GAAG,IAAI,CAAC,mBAAmB,CAAC;IACzD,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAEvC,MAAM,gBAAgB,GAAG,iBAAiB,CACtC;QACI,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,QAAQ;QACrB,MAAM,EAAE,SAAS;QACjB,WAAW,EAAE,SAAS;QACtB,eAAe,EAAE,KAAK;KACzB,EACD,KAAK,CAAC,KAAK,EACX,aAAa,CAAC,KAAK,EACnB,QAAQ,EACR,uBAAuB,CAC1B,CAAC;IAEF,QAAQ,IAAI,gBAAgB,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IAElD,IAAI,mBAAmB,CAAC;IACxB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;QAE3B,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC;QAC1B,OAAO,CAAC,GAAG,IAAI,QAAQ,CAAC;QAExB,IAAI,OAAO,CAAC,uBAAuB,KAAK,CAAC,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YAC7E,OAAO,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QAC9D,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,uBAAuB,IAAI,aAAa,CAAC;QACrD,CAAC;QAED,OAAO,CAAC,mBAAmB,IAAI,aAAa,CAAC;QAE7C,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;YAClE,mBAAmB,GAAG,KAAK,GAAG,aAAa,CAAC;QAChD,CAAC;IACL,CAAC;IAED,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;QACpC,gBAAgB,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAE3D,KAAK,CAAC,uBAAuB,CAAC,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IAC7E,CAAC;IAED,OAAO,CAAC,GAAG,KAAK,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC,CAAC;AAChD,CAAC","sourcesContent":["import type {DateTime} from '@gravity-ui/date-utils';\n\nimport type {DateFieldSectionWithoutPosition} from '../../DateField/types';\nimport {getEditableSections, isEditableSection, toEditableSection} from '../../DateField/utils';\nimport type {EDITABLE_SEGMENTS} from '../../DateField/utils';\nimport type {RangeValue} from '../../types';\n\nexport function getRangeEditableSections(\n sections: DateFieldSectionWithoutPosition[],\n value: RangeValue<DateTime>,\n validSegments: RangeValue<typeof EDITABLE_SEGMENTS>,\n delimiter: string,\n) {\n const start = getEditableSections(sections, value.start, validSegments.start);\n const end = getEditableSections(sections, value.end, validSegments.end);\n\n const last = start[start.length - 1];\n let position = last.end;\n const previousEditableSection = last.nextEditableSection;\n const sectionsCount = start.length + 1;\n\n const delimiterSection = toEditableSection(\n {\n type: 'literal',\n contentType: 'letter',\n format: delimiter,\n placeholder: delimiter,\n hasLeadingZeros: false,\n },\n value.start,\n validSegments.start,\n position,\n previousEditableSection,\n );\n\n position += delimiterSection.textValue.length - 1;\n\n let nextEditableSection;\n for (let index = 0; index < end.length; index++) {\n const section = end[index];\n\n section.start += position;\n section.end += position;\n\n if (section.previousEditableSection === 0 && nextEditableSection === undefined) {\n section.previousEditableSection = previousEditableSection;\n } else {\n section.previousEditableSection += sectionsCount;\n }\n\n section.nextEditableSection += sectionsCount;\n\n if (isEditableSection(section) && nextEditableSection === undefined) {\n nextEditableSection = index + sectionsCount;\n }\n }\n\n if (nextEditableSection !== undefined) {\n delimiterSection.nextEditableSection = nextEditableSection;\n\n start[previousEditableSection].nextEditableSection = nextEditableSection;\n }\n\n return [...start, delimiterSection, ...end];\n}\n"]}
@@ -1,3 +1,3 @@
1
- export * from './getRangeEditableSections';
2
- export * from './isValidRange';
3
- export * from './createPlaceholderRangeValue';
1
+ export * from "./getRangeEditableSections.js";
2
+ export * from "./isValidRange.js";
3
+ export * from "./createPlaceholderRangeValue.js";
@@ -1,3 +1,4 @@
1
- export * from './getRangeEditableSections';
2
- export * from './isValidRange';
3
- export * from './createPlaceholderRangeValue';
1
+ export * from "./getRangeEditableSections.js";
2
+ export * from "./isValidRange.js";
3
+ export * from "./createPlaceholderRangeValue.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../../../src","sources":["components/RangeDateField/utils/index.ts"],"names":[],"mappings":"AAAA,8CAA2C;AAC3C,kCAA+B;AAC/B,iDAA8C","sourcesContent":["export * from './getRangeEditableSections';\nexport * from './isValidRange';\nexport * from './createPlaceholderRangeValue';\n"]}
@@ -1,3 +1,3 @@
1
1
  import type { DateTime } from '@gravity-ui/date-utils';
2
- import type { RangeValue } from '../../types';
2
+ import type { RangeValue } from "../../types/index.js";
3
3
  export declare function isValidRange({ start, end }: RangeValue<DateTime>): boolean;
@@ -1,4 +1,4 @@
1
- import { isValid } from '@gravity-ui/date-utils';
2
1
  export function isValidRange({ start, end }) {
3
- return isValid(start) && isValid(end) && (start.isSame(end) || start.isBefore(end));
2
+ return start.isValid() && end.isValid() && (start.isSame(end) || start.isBefore(end));
4
3
  }
4
+ //# sourceMappingURL=isValidRange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isValidRange.js","sourceRoot":"../../../../../src","sources":["components/RangeDateField/utils/isValidRange.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,YAAY,CAAC,EAAC,KAAK,EAAE,GAAG,EAAuB;IAC3D,OAAO,KAAK,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1F,CAAC","sourcesContent":["import type {DateTime} from '@gravity-ui/date-utils';\n\nimport type {RangeValue} from '../../types';\n\nexport function isValidRange({start, end}: RangeValue<DateTime>): boolean {\n return start.isValid() && end.isValid() && (start.isSame(end) || start.isBefore(end));\n}\n"]}
@@ -19,4 +19,5 @@
19
19
  }
20
20
  .g-date-range-date-picker__time-field-wrapper {
21
21
  padding: 10px;
22
- }
22
+ }
23
+ /*# sourceMappingURL=RangeDatePicker.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/RangeDatePicker/data:;charset=utf-8,@use%20'../variables';%0A%0A$block:%20'.%23%7Bvariables.$ns%7Drange-date-picker';%0A%0A%23%7B$block%7D%20%7B%0A%20%20%20%20position:%20relative;%0A%0A%20%20%20%20display:%20inline-block;%0A%0A%20%20%20%20outline:%20none;%0A%0A%20%20%20%20&__field%20%7B%0A%20%20%20%20%20%20%20%20width:%20100%25;%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__popup-anchor%20%7B%0A%20%20%20%20%20%20%20%20position:%20absolute;%0A%20%20%20%20%20%20%20%20z-index:%20-1;%0A%20%20%20%20%20%20%20%20inset:%200;%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__popup-content%20%7B%0A%20%20%20%20%20%20%20%20outline:%20none;%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__time-field%20%7B%0A%20%20%20%20%20%20%20%20width:%20100%25;%0A%0A%20%20%20%20%20%20%20%20&-wrapper%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20padding:%2010px;%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%7D%0A"],"names":[],"mappings":"AAIA;EACI;EAEA;EAEA;;AAEA;EACI;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;;AAEA;EACI","sourcesContent":["@use '../variables';\n\n$block: '.#{variables.$ns}range-date-picker';\n\n#{$block} {\n position: relative;\n\n display: inline-block;\n\n outline: none;\n\n &__field {\n width: 100%;\n }\n\n &__popup-anchor {\n position: absolute;\n z-index: -1;\n inset: 0;\n }\n\n &__popup-content {\n outline: none;\n }\n\n &__time-field {\n width: 100%;\n\n &-wrapper {\n padding: 10px;\n }\n }\n}\n"],"file":"RangeDatePicker.css"}
@@ -1,6 +1,6 @@
1
1
  import type { DateTime } from '@gravity-ui/date-utils';
2
- import type { DatePickerProps } from '../DatePicker';
3
- import type { RangeValue } from '../types';
4
- import './RangeDatePicker.css';
2
+ import type { DatePickerProps } from "../DatePicker/index.js";
3
+ import type { RangeValue } from "../types/index.js";
4
+ import "./RangeDatePicker.css";
5
5
  export type RangeDatePickerProps = DatePickerProps<RangeValue<DateTime>>;
6
6
  export declare function RangeDatePicker({ className, ...props }: RangeDatePickerProps): import("react/jsx-runtime").JSX.Element;
@@ -4,22 +4,23 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  import React from 'react';
5
5
  import { Calendar as CalendarIcon, Clock as ClockIcon } from '@gravity-ui/icons';
6
6
  import { Button, Icon, Popup, TextInput } from '@gravity-ui/uikit';
7
- import { block } from '../../utils/cn';
8
- import { RangeCalendar } from '../Calendar';
9
- import { useDatePickerProps } from '../DatePicker';
10
- import { StubButton } from '../DatePicker/StubButton';
11
- import { HiddenInput } from '../HiddenInput/HiddenInput';
12
- import { RangeDateField } from '../RangeDateField';
13
- import { useRangeDatePickerState } from './hooks/useRangeDatePickerState';
14
- import './RangeDatePicker.css';
7
+ import { block } from "../../utils/cn.js";
8
+ import { RangeCalendar } from "../Calendar/index.js";
9
+ import { useDatePickerProps } from "../DatePicker/index.js";
10
+ import { StubButton } from "../DatePicker/StubButton.js";
11
+ import { HiddenInput } from "../HiddenInput/HiddenInput.js";
12
+ import { RangeDateField } from "../RangeDateField/index.js";
13
+ import { useRangeDatePickerState } from "./hooks/useRangeDatePickerState.js";
14
+ import "./RangeDatePicker.css";
15
15
  const b = block('range-date-picker');
16
16
  export function RangeDatePicker(_a) {
17
17
  var { className } = _a, props = __rest(_a, ["className"]);
18
18
  const anchorRef = React.useRef(null);
19
19
  const state = useRangeDatePickerState(props);
20
20
  const { groupProps, fieldProps, calendarButtonProps, popupProps, calendarProps, timeInputProps } = useDatePickerProps(state, props);
21
- const isOnlyTime = state.hasTime && !state.hasDate;
22
- return (_jsxs("div", Object.assign({ className: b(null, className) }, groupProps, { children: [!isOnlyTime && (_jsx("div", { ref: anchorRef, className: b('popup-anchor'), children: _jsx(Popup, Object.assign({ anchorRef: anchorRef }, popupProps, { children: _jsxs("div", { className: b('popup-content'), children: [typeof props.children === 'function' ? (props.children(Object.assign(Object.assign({}, calendarProps), { value: state.value }))) : (_jsx(RangeCalendar, Object.assign({}, calendarProps, { value: state.value }))), state.hasTime && (_jsx("div", { className: b('time-field-wrapper'), children: _jsx(RangeDateField, Object.assign({}, timeInputProps)) }))] }) })) })), _jsx(TextInput, Object.assign({}, fieldProps, { className: b('field'), endContent: _jsxs(React.Fragment, { children: [!isOnlyTime && (_jsx(Button, Object.assign({}, calendarButtonProps, { children: _jsx(Icon, { data: CalendarIcon }) }))), isOnlyTime && (_jsx(StubButton, { size: calendarButtonProps.size, icon: ClockIcon }))] }) })), _jsx(HiddenInput, { name: props.name, form: props.form, onReset: (v) => {
21
+ const isOnlyTime = state.formatInfo.hasTime && !state.formatInfo.hasDate;
22
+ return (_jsxs("div", Object.assign({ className: b(null, className) }, groupProps, { children: [!isOnlyTime && (_jsx("div", { ref: anchorRef, className: b('popup-anchor'), children: _jsx(Popup, Object.assign({ anchorRef: anchorRef }, popupProps, { children: _jsxs("div", { className: b('popup-content'), children: [typeof props.children === 'function' ? (props.children(Object.assign(Object.assign({}, calendarProps), { value: state.value }))) : (_jsx(RangeCalendar, Object.assign({}, calendarProps, { value: state.value }))), state.formatInfo.hasTime && (_jsx("div", { className: b('time-field-wrapper'), children: _jsx(RangeDateField, Object.assign({}, timeInputProps)) }))] }) })) })), _jsx(TextInput, Object.assign({}, fieldProps, { className: b('field'), endContent: _jsxs(React.Fragment, { children: [!isOnlyTime && (_jsx(Button, Object.assign({}, calendarButtonProps, { children: _jsx(Icon, { data: CalendarIcon }) }))), isOnlyTime && (_jsx(StubButton, { size: calendarButtonProps.size, icon: ClockIcon }))] }) })), _jsx(HiddenInput, { name: props.name, form: props.form, onReset: (v) => {
23
23
  state.dateFieldState.setDate(v);
24
24
  }, value: state.value, toStringValue: (v) => (v ? v.start.toISOString() : ''), disabled: state.disabled }), _jsx(HiddenInput, { name: props.name, form: props.form, value: state.value, toStringValue: (v) => (v ? v.end.toISOString() : ''), disabled: state.disabled })] })));
25
25
  }
26
+ //# sourceMappingURL=RangeDatePicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RangeDatePicker.js","sourceRoot":"../../../../src","sources":["components/RangeDatePicker/RangeDatePicker.tsx"],"names":[],"mappings":"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","sourcesContent":["'use client';\n\nimport React from 'react';\n\nimport type {DateTime} from '@gravity-ui/date-utils';\nimport {Calendar as CalendarIcon, Clock as ClockIcon} from '@gravity-ui/icons';\nimport {Button, Icon, Popup, TextInput} from '@gravity-ui/uikit';\n\nimport {block} from '../../utils/cn';\nimport {RangeCalendar} from '../Calendar';\nimport {useDatePickerProps} from '../DatePicker';\nimport type {DatePickerProps} from '../DatePicker';\nimport {StubButton} from '../DatePicker/StubButton';\nimport {HiddenInput} from '../HiddenInput/HiddenInput';\nimport {RangeDateField} from '../RangeDateField';\nimport type {RangeValue} from '../types';\n\nimport {useRangeDatePickerState} from './hooks/useRangeDatePickerState';\n\nimport './RangeDatePicker.scss';\n\nconst b = block('range-date-picker');\n\nexport type RangeDatePickerProps = DatePickerProps<RangeValue<DateTime>>;\n\nexport function RangeDatePicker({className, ...props}: RangeDatePickerProps) {\n const anchorRef = React.useRef<HTMLDivElement>(null);\n\n const state = useRangeDatePickerState(props);\n\n const {groupProps, fieldProps, calendarButtonProps, popupProps, calendarProps, timeInputProps} =\n useDatePickerProps(state, props);\n\n const isOnlyTime = state.formatInfo.hasTime && !state.formatInfo.hasDate;\n\n return (\n <div className={b(null, className)} {...groupProps}>\n {!isOnlyTime && (\n <div ref={anchorRef} className={b('popup-anchor')}>\n <Popup anchorRef={anchorRef} {...popupProps}>\n <div className={b('popup-content')}>\n {typeof props.children === 'function' ? (\n props.children({...calendarProps, value: state.value})\n ) : (\n <RangeCalendar {...calendarProps} value={state.value} />\n )}\n {state.formatInfo.hasTime && (\n <div className={b('time-field-wrapper')}>\n <RangeDateField {...timeInputProps} />\n </div>\n )}\n </div>\n </Popup>\n </div>\n )}\n <TextInput\n {...fieldProps}\n className={b('field')}\n endContent={\n <React.Fragment>\n {!isOnlyTime && (\n <Button {...calendarButtonProps}>\n <Icon data={CalendarIcon} />\n </Button>\n )}\n {isOnlyTime && (\n <StubButton size={calendarButtonProps.size} icon={ClockIcon} />\n )}\n </React.Fragment>\n }\n />\n <HiddenInput\n name={props.name}\n form={props.form}\n onReset={(v) => {\n state.dateFieldState.setDate(v);\n }}\n value={state.value}\n toStringValue={(v) => (v ? v.start.toISOString() : '')}\n disabled={state.disabled}\n />\n <HiddenInput\n name={props.name}\n form={props.form}\n value={state.value}\n toStringValue={(v) => (v ? v.end.toISOString() : '')}\n disabled={state.disabled}\n />\n </div>\n );\n}\n"]}
@@ -1,7 +1,10 @@
1
1
  import type { DateTime } from '@gravity-ui/date-utils';
2
- import type { DatePickerState } from '../../DatePicker';
3
- import type { RangeDateFieldStateOptions } from '../../RangeDateField';
4
- import type { RangeValue } from '../../types';
2
+ import type { DatePickerState } from "../../DatePicker/index.js";
3
+ import type { RangeDateFieldStateOptions } from "../../RangeDateField/index.js";
4
+ import type { RangeValue } from "../../types/index.js";
5
5
  export type RangeDatePickerState = DatePickerState<RangeValue<DateTime>>;
6
6
  export type RangeDatePickerStateOptions = RangeDateFieldStateOptions;
7
- export declare const useRangeDatePickerState: (props: RangeDateFieldStateOptions) => DatePickerState<RangeValue<DateTime>>;
7
+ export declare const useRangeDatePickerState: (props: RangeDateFieldStateOptions) => DatePickerState<{
8
+ start: DateTime;
9
+ end: DateTime;
10
+ }>;
@@ -1,17 +1,19 @@
1
- import { datePickerStateFactory } from '../../DatePicker/hooks/datePickerStateFactory';
2
- import { getDateTimeValue } from '../../DatePicker/utils';
3
- import { useRangeDateFieldState } from '../../RangeDateField';
4
- import { createPlaceholderValue, mergeDateTime } from '../../utils/dates';
1
+ import { adjustDateToFormat } from "../../DateField/utils.js";
2
+ import { datePickerStateFactory } from "../../DatePicker/hooks/datePickerStateFactory.js";
3
+ import { getDateTimeValue } from "../../DatePicker/utils/index.js";
4
+ import { useRangeDateFieldState } from "../../RangeDateField/index.js";
5
+ import { createPlaceholderRangeValue } from "../../RangeDateField/utils/index.js";
6
+ import { mergeDateTime } from "../../utils/dates.js";
5
7
  export const useRangeDatePickerState = datePickerStateFactory({
6
8
  getPlaceholderTime,
7
9
  mergeDateTime: mergeRangeDateTime,
8
10
  setTimezone,
9
11
  getDateTime: getDateTimeValue,
10
12
  useDateFieldState: useRangeDateFieldState,
13
+ adjustDateToFormat: adjustRangeToFormat,
11
14
  });
12
15
  function getPlaceholderTime(placeholderValue, timeZone) {
13
- const date = createPlaceholderValue({ placeholderValue, timeZone });
14
- return { start: date, end: date };
16
+ return createPlaceholderRangeValue({ placeholderValue, timeZone });
15
17
  }
16
18
  function mergeRangeDateTime(date, time) {
17
19
  const start = mergeDateTime(date.start, time.start);
@@ -23,3 +25,9 @@ function setTimezone(date, timeZone) {
23
25
  const end = date.end.timeZone(timeZone);
24
26
  return { start, end };
25
27
  }
28
+ function adjustRangeToFormat(date, sectionsInfo) {
29
+ const start = adjustDateToFormat(date.start, sectionsInfo, 'startOf');
30
+ const end = adjustDateToFormat(date.end, sectionsInfo, 'endOf');
31
+ return { start, end };
32
+ }
33
+ //# sourceMappingURL=useRangeDatePickerState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRangeDatePickerState.js","sourceRoot":"../../../../../src","sources":["components/RangeDatePicker/hooks/useRangeDatePickerState.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,kBAAkB,EAAC,iCAA8B;AAEzD,OAAO,EAAC,sBAAsB,EAAC,yDAAsD;AACrF,OAAO,EAAC,gBAAgB,EAAC,wCAA+B;AACxD,OAAO,EAAC,sBAAsB,EAAC,sCAA6B;AAE5D,OAAO,EAAC,2BAA2B,EAAC,4CAAmC;AAEvE,OAAO,EAAC,aAAa,EAAC,6BAA0B;AAMhD,MAAM,CAAC,MAAM,uBAAuB,GAAG,sBAAsB,CAAC;IAC1D,kBAAkB;IAClB,aAAa,EAAE,kBAAkB;IACjC,WAAW;IACX,WAAW,EAAE,gBAAgB;IAC7B,iBAAiB,EAAE,sBAAsB;IACzC,kBAAkB,EAAE,mBAAmB;CAC1C,CAAC,CAAC;AAEH,SAAS,kBAAkB,CACvB,gBAAsC,EACtC,QAAiB;IAEjB,OAAO,2BAA2B,CAAC,EAAC,gBAAgB,EAAE,QAAQ,EAAC,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,kBAAkB,CACvB,IAA0B,EAC1B,IAA0B;IAE1B,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9C,OAAO,EAAC,KAAK,EAAE,GAAG,EAAC,CAAC;AACxB,CAAC;AAED,SAAS,WAAW,CAAC,IAA0B,EAAE,QAAgB;IAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACxC,OAAO,EAAC,KAAK,EAAE,GAAG,EAAC,CAAC;AACxB,CAAC;AAED,SAAS,mBAAmB,CAAC,IAA0B,EAAE,YAAwB;IAC7E,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;IACtE,MAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IAChE,OAAO,EAAC,KAAK,EAAE,GAAG,EAAC,CAAC;AACxB,CAAC","sourcesContent":["import type {DateTime} from '@gravity-ui/date-utils';\n\nimport type {FormatInfo} from '../../DateField/types';\nimport {adjustDateToFormat} from '../../DateField/utils';\nimport type {DatePickerState} from '../../DatePicker';\nimport {datePickerStateFactory} from '../../DatePicker/hooks/datePickerStateFactory';\nimport {getDateTimeValue} from '../../DatePicker/utils';\nimport {useRangeDateFieldState} from '../../RangeDateField';\nimport type {RangeDateFieldStateOptions} from '../../RangeDateField';\nimport {createPlaceholderRangeValue} from '../../RangeDateField/utils';\nimport type {RangeValue} from '../../types';\nimport {mergeDateTime} from '../../utils/dates';\n\nexport type RangeDatePickerState = DatePickerState<RangeValue<DateTime>>;\n\nexport type RangeDatePickerStateOptions = RangeDateFieldStateOptions;\n\nexport const useRangeDatePickerState = datePickerStateFactory({\n getPlaceholderTime,\n mergeDateTime: mergeRangeDateTime,\n setTimezone,\n getDateTime: getDateTimeValue,\n useDateFieldState: useRangeDateFieldState,\n adjustDateToFormat: adjustRangeToFormat,\n});\n\nfunction getPlaceholderTime(\n placeholderValue: DateTime | undefined,\n timeZone?: string,\n): RangeValue<DateTime> {\n return createPlaceholderRangeValue({placeholderValue, timeZone});\n}\n\nfunction mergeRangeDateTime(\n date: RangeValue<DateTime>,\n time: RangeValue<DateTime>,\n): RangeValue<DateTime> {\n const start = mergeDateTime(date.start, time.start);\n const end = mergeDateTime(date.end, time.end);\n return {start, end};\n}\n\nfunction setTimezone(date: RangeValue<DateTime>, timeZone: string): RangeValue<DateTime> {\n const start = date.start.timeZone(timeZone);\n const end = date.end.timeZone(timeZone);\n return {start, end};\n}\n\nfunction adjustRangeToFormat(date: RangeValue<DateTime>, sectionsInfo: FormatInfo) {\n const start = adjustDateToFormat(date.start, sectionsInfo, 'startOf');\n const end = adjustDateToFormat(date.end, sectionsInfo, 'endOf');\n return {start, end};\n}\n"]}
@@ -1,2 +1,2 @@
1
- export * from './RangeDatePicker';
2
- export * from './hooks/useRangeDatePickerState';
1
+ export * from "./RangeDatePicker.js";
2
+ export * from "./hooks/useRangeDatePickerState.js";
@@ -1,2 +1,3 @@
1
- export * from './RangeDatePicker';
2
- export * from './hooks/useRangeDatePickerState';
1
+ export * from "./RangeDatePicker.js";
2
+ export * from "./hooks/useRangeDatePickerState.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["components/RangeDatePicker/index.ts"],"names":[],"mappings":"AAAA,qCAAkC;AAElC,mDAAgD","sourcesContent":["export * from './RangeDatePicker';\n\nexport * from './hooks/useRangeDatePickerState';\n"]}
@@ -25,4 +25,5 @@
25
25
  grid-area: buttons-end;
26
26
  padding-inline-start: var(--g-spacing-half);
27
27
  border-inline-start: 1px solid var(--g-color-line-generic);
28
- }
28
+ }
29
+ /*# sourceMappingURL=RangeDateSelection.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/RangeDateSelection/data:;charset=utf-8,@use%20'../variables';%0A@use%20'../mixins';%0A%0A$block:%20'.%23%7Bvariables.$ns%7Drange-date-selection';%0A%0A%23%7B$block%7D%20%7B%0A%20%20%20%20display:%20grid;%0A%20%20%20%20align-items:%20center;%0A%20%20%20%20grid-template-areas:%20'buttons-start%20ruler%20buttons-end';%0A%20%20%20%20grid-template-columns:%20auto%201fr%20auto;%0A%0A%20%20%20%20border-block:%201px%20solid%20var(--g-color-line-generic);%0A%0A%20%20%20%20&__ruler%20%7B%0A%20%20%20%20%20%20%20%20grid-area:%20ruler;%0A%0A%20%20%20%20%20%20%20%20&_dragging%20%23%7B$block%7D__selection%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20pointer-events:%20none;%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__buttons%20%7B%0A%20%20%20%20%20%20%20%20display:%20flex;%0A%20%20%20%20%20%20%20%20align-items:%20center;%0A%0A%20%20%20%20%20%20%20%20height:%2022px;%0A%0A%20%20%20%20%20%20%20%20&_position_start%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20grid-area:%20buttons-start;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20padding-inline-end:%20var(--g-spacing-half);%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20border-inline-end:%201px%20solid%20var(--g-color-line-generic);%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_position_end%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20grid-area:%20buttons-end;%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20padding-inline-start:%20var(--g-spacing-half);%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20border-inline-start:%201px%20solid%20var(--g-color-line-generic);%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%7D%0A"],"names":[],"mappings":"AAKA;EACI;EACA;EACA;EACA;EAEA;;AAEA;EACI;;AAEA;EACI;;AAIR;EACI;EACA;EAEA;;AAEA;EACI;EAEA;EAEA;;AAGJ;EACI;EAEA;EAEA","sourcesContent":["@use '../variables';\n@use '../mixins';\n\n$block: '.#{variables.$ns}range-date-selection';\n\n#{$block} {\n display: grid;\n align-items: center;\n grid-template-areas: 'buttons-start ruler buttons-end';\n grid-template-columns: auto 1fr auto;\n\n border-block: 1px solid var(--g-color-line-generic);\n\n &__ruler {\n grid-area: ruler;\n\n &_dragging #{$block}__selection {\n pointer-events: none;\n }\n }\n\n &__buttons {\n display: flex;\n align-items: center;\n\n height: 22px;\n\n &_position_start {\n grid-area: buttons-start;\n\n padding-inline-end: var(--g-spacing-half);\n\n border-inline-end: 1px solid var(--g-color-line-generic);\n }\n\n &_position_end {\n grid-area: buttons-end;\n\n padding-inline-start: var(--g-spacing-half);\n\n border-inline-start: 1px solid var(--g-color-line-generic);\n }\n }\n}\n"],"file":"RangeDateSelection.css"}
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import type { DateTime } from '@gravity-ui/date-utils';
3
- import type { AccessibilityProps, DomProps, StyleProps } from '../types';
4
- import type { ViewportDimensions, ViewportInterval } from './components/Ruler/Ruler';
5
- import type { RangeDateSelectionOptions } from './hooks/useRangeDateSelectionState';
6
- import './RangeDateSelection.css';
3
+ import type { AccessibilityProps, DomProps, StyleProps } from "../types/index.js";
4
+ import type { ViewportDimensions, ViewportInterval } from "./components/Ruler/Ruler.js";
5
+ import type { RangeDateSelectionOptions } from "./hooks/useRangeDateSelectionState.js";
6
+ import "./RangeDateSelection.css";
7
7
  export interface RangeDateSelectionProps extends RangeDateSelectionOptions, DomProps, StyleProps, AccessibilityProps {
8
8
  /** Formats time ticks */
9
9
  formatTime?: (time: DateTime) => string;
@@ -3,13 +3,13 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import React from 'react';
4
4
  import { Minus, Plus } from '@gravity-ui/icons';
5
5
  import { Button, Icon } from '@gravity-ui/uikit';
6
- import { block } from '../../utils/cn';
7
- import { filterDOMProps } from '../utils/filterDOMProps';
8
- import { DateTimeRuler } from './components/Ruler/Ruler';
9
- import { SelectionControl } from './components/SelectionControl/SelectionControl';
10
- import { useRangeDateSelectionState } from './hooks/useRangeDateSelectionState';
11
- import { i18n } from './i18n';
12
- import './RangeDateSelection.css';
6
+ import { block } from "../../utils/cn.js";
7
+ import { filterDOMProps } from "../utils/filterDOMProps.js";
8
+ import { DateTimeRuler } from "./components/Ruler/Ruler.js";
9
+ import { SelectionControl } from "./components/SelectionControl/SelectionControl.js";
10
+ import { useRangeDateSelectionState } from "./hooks/useRangeDateSelectionState.js";
11
+ import { i18n } from "./i18n/index.js";
12
+ import "./RangeDateSelection.css";
13
13
  const b = block('range-date-selection');
14
14
  export function RangeDateSelection(props) {
15
15
  var _a, _b;
@@ -41,3 +41,4 @@ export function RangeDateSelection(props) {
41
41
  state.endDragging();
42
42
  }, extraProps: { 'aria-label': i18n('Increase range') }, children: _jsx(Icon, { data: Plus }) })] })) : null] })));
43
43
  }
44
+ //# sourceMappingURL=RangeDateSelection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RangeDateSelection.js","sourceRoot":"../../../../src","sources":["components/RangeDateSelection/RangeDateSelection.tsx"],"names":[],"mappings":"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","sourcesContent":["'use client';\n\nimport React from 'react';\n\nimport type {DateTime} from '@gravity-ui/date-utils';\nimport {Minus, Plus} from '@gravity-ui/icons';\nimport {Button, Icon} from '@gravity-ui/uikit';\n\nimport {block} from '../../utils/cn';\nimport type {AccessibilityProps, DomProps, StyleProps} from '../types';\nimport {filterDOMProps} from '../utils/filterDOMProps';\n\nimport {DateTimeRuler} from './components/Ruler/Ruler';\nimport type {ViewportDimensions, ViewportInterval} from './components/Ruler/Ruler';\nimport {SelectionControl} from './components/SelectionControl/SelectionControl';\nimport {useRangeDateSelectionState} from './hooks/useRangeDateSelectionState';\nimport type {RangeDateSelectionOptions} from './hooks/useRangeDateSelectionState';\nimport {i18n} from './i18n';\n\nimport './RangeDateSelection.scss';\n\nconst b = block('range-date-selection');\n\nexport interface RangeDateSelectionProps\n extends RangeDateSelectionOptions,\n DomProps,\n StyleProps,\n AccessibilityProps {\n /** Formats time ticks */\n formatTime?: (time: DateTime) => string;\n /** Displays now line */\n displayNow?: boolean;\n /** Enables dragging ruler */\n draggableRuler?: boolean;\n /** Displays buttons to scale selection */\n hasScaleButtons?: boolean;\n /** Position of scale buttons */\n scaleButtonsPosition?: 'start' | 'end';\n /** Renders additional svg content in the ruler */\n renderAdditionalRulerContent?: (props: {\n interval: ViewportInterval;\n dimensions: ViewportDimensions;\n }) => React.ReactNode;\n}\n\nexport function RangeDateSelection(props: RangeDateSelectionProps) {\n const state = useRangeDateSelectionState(props);\n\n const [isDraggingRuler, setDraggingRuler] = React.useState(false);\n\n const handleRulerMoveStart = () => {\n state.setDraggingValue(state.value);\n setDraggingRuler(true);\n };\n const handleRulerMove = (d: number) => {\n const intervalWidth = state.viewportInterval.end.diff(state.viewportInterval.start);\n const delta = -Math.floor((d * intervalWidth) / 100);\n state.move(delta);\n };\n const handleRulerMoveEnd = () => {\n setDraggingRuler(false);\n state.endDragging();\n };\n\n let id = React.useId();\n id = props.id ?? id;\n\n return (\n <div\n {...filterDOMProps(props, {labelable: true})}\n id={id}\n className={b(null, props.className)}\n style={props.style}\n dir=\"ltr\" // TODO: RTL support\n >\n <DateTimeRuler\n className={b('ruler', {dragging: isDraggingRuler})}\n {...state.viewportInterval}\n onMoveStart={handleRulerMoveStart}\n onMove={props.draggableRuler ? handleRulerMove : undefined}\n onMoveEnd={handleRulerMoveEnd}\n dragDisabled={state.isDragging}\n displayNow={props.displayNow}\n minValue={props.minValue}\n maxValue={props.maxValue}\n formatTime={props.formatTime}\n timeZone={state.timeZone}\n renderAdditionalRulerContent={props.renderAdditionalRulerContent}\n >\n <SelectionControl className={b('selection')} state={state} aria-labelledby={id} />\n </DateTimeRuler>\n {props.hasScaleButtons ? (\n <div className={b('buttons', {position: props.scaleButtonsPosition ?? 'start'})}>\n <Button\n view=\"flat-secondary\"\n size=\"xs\"\n onClick={() => {\n state.startDragging();\n state.scale(0.5);\n state.endDragging();\n }}\n extraProps={{'aria-label': i18n('Decrease range')}}\n >\n <Icon data={Minus} />\n </Button>\n <Button\n view=\"flat-secondary\"\n size=\"xs\"\n onClick={() => {\n state.startDragging();\n state.scale(1.5);\n state.endDragging();\n }}\n extraProps={{'aria-label': i18n('Increase range')}}\n >\n <Icon data={Plus} />\n </Button>\n </div>\n ) : null}\n </div>\n );\n}\n"]}
@@ -1,4 +1,5 @@
1
1
  .g-date-timeline-now-line {
2
2
  stroke: var(--g-date-thin-timeline-now-color);
3
3
  stroke-width: 2px;
4
- }
4
+ }
5
+ /*# sourceMappingURL=NowLine.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/RangeDateSelection/components/variables';%0A%0A$block:%20'.%23%7Bvariables.$ns%7Dtimeline-now-line';%0A%0A%23%7B$block%7D%20%7B%0A%20%20%20%20stroke:%20var(--g-date-thin-timeline-now-color);%0A%20%20%20%20stroke-width:%202px;%0A%7D%0A"],"names":[],"mappings":"AAIA;EACI;EACA","sourcesContent":["@use '../../../variables';\n\n$block: '.#{variables.$ns}timeline-now-line';\n\n#{$block} {\n stroke: var(--g-date-thin-timeline-now-color);\n stroke-width: 2px;\n}\n"],"file":"NowLine.css"}
@@ -1,2 +1,2 @@
1
- import './NowLine.css';
1
+ import "./NowLine.css";
2
2
  export declare function NowLine(): import("react/jsx-runtime").JSX.Element | null;
@@ -1,11 +1,10 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- // import {dateTime} from '@gravity-ui/date-utils';
3
2
  import React from 'react';
4
- import { block } from '../../../../utils/cn';
5
- import { SECOND } from '../../../utils/constants';
6
- import { useViewportDimensions, useViewportInterval } from '../Ruler/Ruler';
3
+ import { block } from "../../../../utils/cn.js";
4
+ import { SECOND } from "../../../utils/constants.js";
5
+ import { useViewportDimensions, useViewportInterval } from "../Ruler/Ruler.js";
7
6
  const MIN_UPDATE_DISTANCE = 4; // in px
8
- import './NowLine.css';
7
+ import "./NowLine.css";
9
8
  const b = block('timeline-now-line');
10
9
  export function NowLine() {
11
10
  const viewport = useViewportDimensions();
@@ -35,3 +34,4 @@ export function NowLine() {
35
34
  viewport.width;
36
35
  return _jsx("path", { d: `M${nowX},0l0,${viewport.height}`, className: b() });
37
36
  }
37
+ //# sourceMappingURL=NowLine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NowLine.js","sourceRoot":"../../../../../../src","sources":["components/RangeDateSelection/components/NowLine/NowLine.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,KAAK,EAAC,gCAA6B;AAC3C,OAAO,EAAC,MAAM,EAAC,oCAAiC;AAChD,OAAO,EAAC,qBAAqB,EAAE,mBAAmB,EAAC,0BAAuB;AAE1E,MAAM,mBAAmB,GAAG,CAAC,CAAC,CAAC,QAAQ;AAEvC,uBAAwB;AAExB,MAAM,CAAC,GAAG,KAAK,CAAC,mBAAmB,CAAC,CAAC;AAErC,MAAM,UAAU,OAAO;IACnB,MAAM,QAAQ,GAAG,qBAAqB,EAAE,CAAC;IACzC,MAAM,EAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAC,GAAG,mBAAmB,EAAE,CAAC;IAC/D,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAExC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC;IAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CACrB,MAAM,EACN,CAAC,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,EAChE,SAAS,CAAC,OAAO,EAAE,GAAG,OAAO,CAChC,CAAC;IAEF,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,KAAK,GAAkB,IAAI,CAAC;QAChC,IAAI,aAAa,EAAE,CAAC;YAChB,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE;gBAC5B,QAAQ,CAAC,EAAE,CAAC,CAAC;YACjB,CAAC,EAAE,QAAQ,CAAC,CAAC;QACjB,CAAC;QACD,OAAO,GAAG,EAAE;YACR,IAAI,KAAK,EAAE,CAAC;gBACR,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAC5B,KAAK,GAAG,IAAI,CAAC;YACjB,CAAC;QACL,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE9B,IAAI,OAAO,GAAG,SAAS,CAAC,OAAO,EAAE,IAAI,OAAO,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;QAC/D,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,IAAI,GACN,CAAC,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7E,QAAQ,CAAC,KAAK,CAAC;IAEnB,OAAO,eAAM,CAAC,EAAE,IAAI,IAAI,QAAQ,QAAQ,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,GAAI,CAAC;AAC1E,CAAC","sourcesContent":["import React from 'react';\n\nimport {block} from '../../../../utils/cn';\nimport {SECOND} from '../../../utils/constants';\nimport {useViewportDimensions, useViewportInterval} from '../Ruler/Ruler';\n\nconst MIN_UPDATE_DISTANCE = 4; // in px\n\nimport './NowLine.scss';\n\nconst b = block('timeline-now-line');\n\nexport function NowLine() {\n const viewport = useViewportDimensions();\n const {start: startDate, end: endDate} = useViewportInterval();\n const [, rerender] = React.useState({});\n\n const nowTime = Date.now();\n const needUpdateNow = endDate.valueOf() > nowTime;\n const interval = Math.max(\n SECOND,\n (MIN_UPDATE_DISTANCE * endDate.diff(startDate)) / viewport.width,\n startDate.valueOf() - nowTime,\n );\n\n React.useEffect(() => {\n let timer: number | null = null;\n if (needUpdateNow) {\n timer = window.setInterval(() => {\n rerender({});\n }, interval);\n }\n return () => {\n if (timer) {\n window.clearInterval(timer);\n timer = null;\n }\n };\n }, [needUpdateNow, interval]);\n\n if (nowTime < startDate.valueOf() || endDate.valueOf() < nowTime) {\n return null;\n }\n\n const nowX =\n ((nowTime - startDate.valueOf()) / (endDate.valueOf() - startDate.valueOf())) *\n viewport.width;\n\n return <path d={`M${nowX},0l0,${viewport.height}`} className={b()} />;\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import type { DateTime } from '@gravity-ui/date-utils';
3
- import type { MoveEndEvent, MoveMoveEvent, MoveStartEvent } from '../../../../hooks/useMove';
4
- import type { RangeValue } from '../../../types';
3
+ import type { MoveEndEvent, MoveMoveEvent, MoveStartEvent } from "../../../../hooks/useMove.js";
4
+ import type { RangeValue } from "../../../types/index.js";
5
5
  interface RulerProps {
6
6
  className?: string;
7
7
  children?: React.ReactNode;
@@ -1,14 +1,14 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import React from 'react';
3
3
  import ReactDOM from 'react-dom';
4
- import { useResizeObserver } from '../../../../hooks/useResizeObserver';
5
- import { block } from '../../../../utils/cn';
6
- import { NowLine } from '../NowLine/NowLine';
7
- import { RulerViewport } from '../RulerViewport/RulerViewport';
8
- import { MiddleTicks } from '../Ticks/MiddleTicks';
9
- import { SlitTicks } from '../Ticks/SlitTicks';
10
- import { UnavailableTicks } from '../Ticks/UnavialableTicks';
11
- import { makeUnavailableTicksGeometry } from '../Ticks/utils';
4
+ import { useResizeObserver } from "../../../../hooks/useResizeObserver.js";
5
+ import { block } from "../../../../utils/cn.js";
6
+ import { NowLine } from "../NowLine/NowLine.js";
7
+ import { RulerViewport } from "../RulerViewport/RulerViewport.js";
8
+ import { MiddleTicks } from "../Ticks/MiddleTicks.js";
9
+ import { SlitTicks } from "../Ticks/SlitTicks.js";
10
+ import { UnavailableTicks } from "../Ticks/UnavialableTicks.js";
11
+ import { makeUnavailableTicksGeometry } from "../Ticks/utils.js";
12
12
  const b = block('ruler');
13
13
  const viewportDimensionsContext = React.createContext(null);
14
14
  const viewportIntervalContext = React.createContext(null);
@@ -51,3 +51,4 @@ export function useViewportInterval() {
51
51
  }
52
52
  return viewport;
53
53
  }
54
+ //# sourceMappingURL=Ruler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Ruler.js","sourceRoot":"../../../../../../src","sources":["components/RangeDateSelection/components/Ruler/Ruler.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nimport type {DateTime} from '@gravity-ui/date-utils';\nimport ReactDOM from 'react-dom';\n\nimport type {MoveEndEvent, MoveMoveEvent, MoveStartEvent} from '../../../../hooks/useMove';\nimport {useResizeObserver} from '../../../../hooks/useResizeObserver';\nimport {block} from '../../../../utils/cn';\nimport type {RangeValue} from '../../../types';\nimport {NowLine} from '../NowLine/NowLine';\nimport {RulerViewport} from '../RulerViewport/RulerViewport';\nimport {MiddleTicks} from '../Ticks/MiddleTicks';\nimport {SlitTicks} from '../Ticks/SlitTicks';\nimport {UnavailableTicks} from '../Ticks/UnavialableTicks';\nimport {makeUnavailableTicksGeometry} from '../Ticks/utils';\n\nconst b = block('ruler');\n\ninterface RulerProps {\n className?: string;\n children?: React.ReactNode;\n start: DateTime;\n end: DateTime;\n minValue?: DateTime;\n maxValue?: DateTime;\n onMoveStart?: (event: MoveStartEvent) => void;\n onMove?: (delta: number, event: MoveMoveEvent) => void;\n onMoveEnd?: (event: MoveEndEvent) => void;\n displayNow?: boolean;\n formatTime?: (time: DateTime) => string;\n timeZone?: string;\n dragDisabled?: boolean;\n renderAdditionalRulerContent?: (props: {\n interval: ViewportInterval;\n dimensions: ViewportDimensions;\n }) => React.ReactNode;\n}\n\nexport interface ViewportDimensions {\n width: number;\n height: number;\n}\n\nexport type ViewportInterval = RangeValue<DateTime>;\n\nconst viewportDimensionsContext = React.createContext<ViewportDimensions | null>(null);\nconst viewportIntervalContext = React.createContext<ViewportInterval | null>(null);\n\nexport function DateTimeRuler({\n className,\n children,\n start,\n end,\n minValue,\n maxValue,\n onMove,\n onMoveStart,\n onMoveEnd,\n displayNow,\n formatTime,\n timeZone,\n dragDisabled,\n renderAdditionalRulerContent,\n}: RulerProps) {\n const [container, setContainer] = React.useState<HTMLDivElement | null>(null);\n const viewportInterval = React.useMemo(() => ({start, end}), [start, end]);\n const [viewportDimensions, setViewportDimensions] = React.useState<ViewportDimensions>({\n width: 0,\n height: 0,\n });\n const onResize = React.useCallback(() => {\n if (!container) {\n return;\n }\n const {width, height} = container.getBoundingClientRect();\n setViewportDimensions({width, height});\n }, [container]);\n\n const containerRef = React.useMemo(() => ({current: container}), [container]);\n\n useResizeObserver({ref: containerRef, onResize});\n\n const hasConstrains = Boolean(minValue || maxValue);\n\n return (\n <div className={b(null, className)}>\n <viewportIntervalContext.Provider value={viewportInterval}>\n <viewportDimensionsContext.Provider value={viewportDimensions}>\n <RulerViewport\n ref={setContainer}\n onMove={onMove}\n onMoveStart={onMoveStart}\n onMoveEnd={onMoveEnd}\n dragDisabled={dragDisabled}\n >\n <MiddleTicks timeZone={timeZone} />\n <SlitTicks formatTime={formatTime} timeZone={timeZone} />\n {hasConstrains ? (\n <UnavailableTicks\n theme=\"dim\"\n minValue={minValue}\n maxValue={maxValue}\n geometry={makeUnavailableTicksGeometry({\n tickHeight: 10,\n viewportHeight: viewportDimensions.height,\n })}\n tickWidth={viewportDimensions.height + 10}\n />\n ) : null}\n {displayNow ? <NowLine /> : null}\n {renderAdditionalRulerContent?.({\n interval: viewportInterval,\n dimensions: viewportDimensions,\n })}\n </RulerViewport>\n {container ? ReactDOM.createPortal(children, container) : null}\n </viewportDimensionsContext.Provider>\n </viewportIntervalContext.Provider>\n </div>\n );\n}\n\nexport function useViewportDimensions() {\n const viewport = React.useContext(viewportDimensionsContext);\n if (!viewport) {\n throw new Error('useViewportDimensions must be used within a RulerViewport');\n }\n return viewport;\n}\n\nexport function useViewportInterval() {\n const viewport = React.useContext(viewportIntervalContext);\n if (!viewport) {\n throw new Error('useViewportInterval must be used within a RulerViewport');\n }\n return viewport;\n}\n"]}
@@ -22,4 +22,5 @@
22
22
  }
23
23
  .g-date-ruler-viewport__svg {
24
24
  pointer-events: none;
25
- }
25
+ }
26
+ /*# sourceMappingURL=RulerViewport.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/RangeDateSelection/components/variables';%0A%0A$block:%20'.%23%7Bvariables.$ns%7Druler-viewport';%0A%0A%23%7B$block%7D%20%7B%0A%20%20%20%20--_--g-date-ruler-viewport-background:%20var(%0A%20%20%20%20%20%20%20%20--g-date-ruler-viewport-background,%0A%20%20%20%20%20%20%20%20var(--g-color-base-background)%0A%20%20%20%20);%0A%0A%20%20%20%20--g-date-thin-timeline-height:%2022px;%0A%20%20%20%20--g-date-thin-timeline-now-color:%20var(--g-color-line-danger);%0A%0A%20%20%20%20position:%20relative;%0A%0A%20%20%20%20box-sizing:%20border-box;%0A%20%20%20%20height:%20var(--g-date-thin-timeline-height);%0A%0A%20%20%20%20&__dragger%20%7B%0A%20%20%20%20%20%20%20%20position:%20absolute;%0A%20%20%20%20%20%20%20%20inset:%200;%0A%0A%20%20%20%20%20%20%20%20cursor:%20grab;%0A%0A%20%20%20%20%20%20%20%20&:focus-visible%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20outline:%202px%20solid%20var(--g-color-line-focus);%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_disabled%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20pointer-events:%20none;%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__svg%20%7B%0A%20%20%20%20%20%20%20%20pointer-events:%20none;%0A%20%20%20%20%7D%0A%7D%0A"],"names":[],"mappings":"AAIA;EACI;AAAA;AAAA;AAAA;EAKA;EACA;EAEA;EAEA;EACA;;AAEA;EACI;EACA;EAEA;;AAEA;EACI;;AAGJ;EACI;;AAIR;EACI","sourcesContent":["@use '../../../variables';\n\n$block: '.#{variables.$ns}ruler-viewport';\n\n#{$block} {\n --_--g-date-ruler-viewport-background: var(\n --g-date-ruler-viewport-background,\n var(--g-color-base-background)\n );\n\n --g-date-thin-timeline-height: 22px;\n --g-date-thin-timeline-now-color: var(--g-color-line-danger);\n\n position: relative;\n\n box-sizing: border-box;\n height: var(--g-date-thin-timeline-height);\n\n &__dragger {\n position: absolute;\n inset: 0;\n\n cursor: grab;\n\n &:focus-visible {\n outline: 2px solid var(--g-color-line-focus);\n }\n\n &_disabled {\n pointer-events: none;\n }\n }\n\n &__svg {\n pointer-events: none;\n }\n}\n"],"file":"RulerViewport.css"}
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import type { MoveEndEvent, MoveMoveEvent, MoveStartEvent } from '../../../../hooks/useMove';
3
- import './RulerViewport.css';
2
+ import type { MoveEndEvent, MoveMoveEvent, MoveStartEvent } from "../../../../hooks/useMove.js";
3
+ import "./RulerViewport.css";
4
4
  interface RulerViewportProps {
5
5
  className?: string;
6
6
  children?: React.ReactNode;
@@ -1,9 +1,9 @@
1
1
  'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import React from 'react';
4
- import { useMove } from '../../../../hooks/useMove';
5
- import { block } from '../../../../utils/cn';
6
- import './RulerViewport.css';
4
+ import { useMove } from "../../../../hooks/useMove.js";
5
+ import { block } from "../../../../utils/cn.js";
6
+ import "./RulerViewport.css";
7
7
  const b = block('ruler-viewport');
8
8
  function RulerViewport({ className, children, onMove, onMoveStart, onMoveEnd, dragDisabled }, ref) {
9
9
  const containerRef = React.useRef(null);
@@ -27,3 +27,4 @@ function RulerViewport({ className, children, onMove, onMoveStart, onMoveEnd, dr
27
27
  }
28
28
  const _RulerViewport = React.forwardRef(RulerViewport);
29
29
  export { _RulerViewport as RulerViewport };
30
+ //# sourceMappingURL=RulerViewport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RulerViewport.js","sourceRoot":"../../../../../../src","sources":["components/RangeDateSelection/components/RulerViewport/RulerViewport.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,OAAO,EAAC,qCAAkC;AAElD,OAAO,EAAC,KAAK,EAAC,gCAA6B;AAE3C,6BAA8B;AAE9B,MAAM,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAWlC,SAAS,aAAa,CAClB,EAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAqB,EACvF,GAA8B;IAE9B,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAgB,IAAI,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,OAAO,MAAM,KAAK,UAAU,CAAC;IAC/C,MAAM,EAAC,SAAS,EAAC,GAAG,OAAO,CAAC;QACxB,WAAW,EAAE,WAAW;QACxB,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YACV,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC;YACvC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,EAAE,CAAC;gBAC9B,MAAM,EAAC,KAAK,EAAC,GAAG,SAAS,CAAC,qBAAqB,EAAE,CAAC;gBAClD,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;gBACrC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;gBACtC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;oBACd,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,KAAK,EAAE,CAAC,CAAC,CAAC;gBACvB,CAAC;YACL,CAAC;QACL,CAAC;QACD,SAAS,EAAE,SAAS;KACvB,CAAC,CAAC;IAEH,OAAO,CACH,eAAK,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,aACxC,eACI,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,EACnB,KAAK,EAAC,MAAM,EACZ,MAAM,EAAC,MAAM,EACb,KAAK,EAAC,4BAA4B,EAClC,UAAU,EAAC,8BAA8B,aAEzC,yBAEI,kBAAQ,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,GAAG,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,uBAAuB,aAC/D,kBAAS,UAAU,EAAC,4CAA4C,GAAG,EACnE,sBAAa,EAAE,EAAC,eAAe,GAAG,IAC7B,GACN,EACN,QAAQ,IACP,EACL,SAAS,CAAC,CAAC,CAAC,CACT,4BAAK,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,EAAC,QAAQ,EAAE,YAAY,EAAC,CAAC,IAAM,SAAS,EAAI,CAC5E,CAAC,CAAC,CAAC,IAAI,IACN,CACT,CAAC;AACN,CAAC;AAED,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AACvD,OAAO,EAAC,cAAc,IAAI,aAAa,EAAC,CAAC","sourcesContent":["'use client';\n\nimport React from 'react';\n\nimport {useMove} from '../../../../hooks/useMove';\nimport type {MoveEndEvent, MoveMoveEvent, MoveStartEvent} from '../../../../hooks/useMove';\nimport {block} from '../../../../utils/cn';\n\nimport './RulerViewport.scss';\n\nconst b = block('ruler-viewport');\n\ninterface RulerViewportProps {\n className?: string;\n children?: React.ReactNode;\n onMoveStart?: (event: MoveStartEvent) => void;\n onMove?: (delta: number, event: MoveMoveEvent) => void;\n onMoveEnd?: (event: MoveEndEvent) => void;\n dragDisabled?: boolean;\n}\n\nfunction RulerViewport(\n {className, children, onMove, onMoveStart, onMoveEnd, dragDisabled}: RulerViewportProps,\n ref: React.Ref<HTMLDivElement>,\n) {\n const containerRef = React.useRef<SVGSVGElement>(null);\n const draggable = typeof onMove === 'function';\n const {moveProps} = useMove({\n onMoveStart: onMoveStart,\n onMove: (e) => {\n const container = containerRef.current;\n if (e.deltaX !== 0 && container) {\n const {width} = container.getBoundingClientRect();\n let delta = (e.deltaX * 100) / width;\n delta = Math.round(delta * 100) / 100;\n if (delta !== 0) {\n onMove?.(delta, e);\n }\n }\n },\n onMoveEnd: onMoveEnd,\n });\n\n return (\n <div ref={ref} className={b(null, className)}>\n <svg\n ref={containerRef}\n className={b('svg')}\n width=\"100%\"\n height=\"100%\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlnsXlink=\"http://www.w3.org/1999/xlink\"\n >\n <defs>\n {/* this one allows rendering background under tick labels */}\n <filter x=\"0\" y=\"0\" width=\"1\" height=\"1\" id=\"g-date-tt-ticklabelbg\">\n <feFlood floodColor=\"var(--_--g-date-ruler-viewport-background)\" />\n <feComposite in=\"SourceGraphic\" />\n </filter>\n </defs>\n {children}\n </svg>\n {draggable ? (\n <div className={b('dragger', {disabled: dragDisabled})} {...moveProps} />\n ) : null}\n </div>\n );\n}\n\nconst _RulerViewport = React.forwardRef(RulerViewport);\nexport {_RulerViewport as RulerViewport};\n"]}
@@ -75,4 +75,5 @@
75
75
  white-space: nowrap;
76
76
  border: 0;
77
77
  clip-path: inset(50%);
78
- }
78
+ }
79
+ /*# sourceMappingURL=SelectionControl.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/RangeDateSelection/mixins';%0A%0A$block:%20'.%23%7Bvariables.$ns%7Drange-date-selection-control';%0A%0A%23%7B$block%7D%20%7B%0A%20%20%20%20--_--g-date-timeline-color-selection:%20var(%0A%20%20%20%20%20%20%20%20--g-date-timeline-color-selection,%0A%20%20%20%20%20%20%20%20var(--g-color-base-info-light)%0A%20%20%20%20);%0A%0A%20%20%20%20--_--g-date-timeline-color-selection-hover:%20var(%0A%20%20%20%20%20%20%20%20--g-date-timeline-color-selection-hover,%0A%20%20%20%20%20%20%20%20var(--g-color-base-info-light-hover)%0A%20%20%20%20);%0A%0A%20%20%20%20--_--g-date-timeline-color-selection-handle:%20var(%0A%20%20%20%20%20%20%20%20--g-date-timeline-color-selection-handle,%0A%20%20%20%20%20%20%20%20var(--g-color-base-brand)%0A%20%20%20%20);%0A%0A%20%20%20%20--_--g-date-timeline-color-selection-handle-hover:%20var(%0A%20%20%20%20%20%20%20%20--g-date-timeline-color-selection-handle-hover,%0A%20%20%20%20%20%20%20%20var(--g-color-base-brand-hover)%0A%20%20%20%20);%0A%0A%20%20%20%20position:%20absolute;%0A%20%20%20%20z-index:%201;%0A%20%20%20%20inset-block:%200;%0A%0A%20%20%20%20@supports%20(selector(:has(*)))%20and%20(selector(:focus-visible))%20%7B%0A%20%20%20%20%20%20%20%20&__start:has(&__slider-input:focus-visible),%0A%20%20%20%20%20%20%20%20&__end:has(&__slider-input:focus-visible),%0A%20%20%20%20%20%20%20%20&__dragger:has(&__slider-input:focus-visible)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20border-radius:%20var(--g-border-radius-xs);%0A%20%20%20%20%20%20%20%20%20%20%20%20outline:%20var(--g-color-line-focus)%20solid%202px;%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%0A%20%20%20%20@supports%20not%20(selector(:has(*)))%20%7B%0A%20%20%20%20%20%20%20%20&__start:focus-within,%0A%20%20%20%20%20%20%20%20&__end:focus-within,%0A%20%20%20%20%20%20%20%20&__dragger:focus-within%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20border-radius:%20var(--g-border-radius-xs);%0A%20%20%20%20%20%20%20%20%20%20%20%20outline:%20var(--g-color-line-focus)%20solid%202px;%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__dragger%20%7B%0A%20%20%20%20%20%20%20%20position:%20absolute;%0A%20%20%20%20%20%20%20%20inset-block:%200;%0A%20%20%20%20%20%20%20%20inset-inline:%202px;%0A%0A%20%20%20%20%20%20%20%20cursor:%20move;%0A%0A%20%20%20%20%20%20%20%20background:%20var(--_--g-date-timeline-color-selection);%0A%0A%20%20%20%20%20%20%20%20&:hover,%0A%20%20%20%20%20%20%20%20&_dragging%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20background:%20var(--_--g-date-timeline-color-selection-hover);%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20&_disabled%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20pointer-events:%20none;%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__start%20%7B%0A%20%20%20%20%20%20%20%20position:%20absolute;%0A%20%20%20%20%20%20%20%20inset-block:%200;%0A%20%20%20%20%20%20%20%20inset-inline-start:%200;%0A%0A%20%20%20%20%20%20%20%20width:%204px;%0A%0A%20%20%20%20%20%20%20%20background:%20var(--_--g-date-timeline-color-selection-handle);%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__end%20%7B%0A%20%20%20%20%20%20%20%20position:%20absolute;%0A%20%20%20%20%20%20%20%20inset-inline-end:%200;%0A%0A%20%20%20%20%20%20%20%20width:%204px;%0A%20%20%20%20%20%20%20%20height:%20100%25;%0A%0A%20%20%20%20%20%20%20%20background:%20var(--_--g-date-timeline-color-selection-handle);%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__start,%0A%20%20%20%20&__end%20%7B%0A%20%20%20%20%20%20%20%20cursor:%20ew-resize;%0A%0A%20%20%20%20%20%20%20%20&:hover,%0A%20%20%20%20%20%20%20%20&_dragging%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20background:%20var(--_--g-date-timeline-color-selection-handle-hover);%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%0A%20%20%20%20&__slider-input-wrapper%20%7B%0A%20%20%20%20%20%20%20%20@include%20mixins.visually-hidden();%0A%20%20%20%20%7D%0A%7D%0A","components/RangeDateSelection/components/SelectionControl/file:/home/runner/work/date-components/date-components/src/components/mixins.scss"],"names":[],"mappings":"AAKA;EACI;AAAA;AAAA;AAAA;EAKA;AAAA;AAAA;AAAA;EAKA;AAAA;AAAA;AAAA;EAKA;AAAA;AAAA;AAAA;EAKA;EACA;EACA;;AAEA;EACI;IAGI;IACA;;;AAIR;EACI;IAGI;IACA;;;AAIR;EACI;EACA;EACA;EAEA;EAEA;;AAEA;EAEI;;AAGJ;EACI;;AAIR;EACI;EACA;EACA;EAEA;EAEA;;AAGJ;EACI;EACA;EAEA;EACA;EAEA;;AAGJ;EAEI;;AAEA;EAEI;;AAIR;EChGA;EAEA;EACA;EAEA;EACA;EACA;EACA;EAEA;EAEA;EACA","sourcesContent":["@use '../../../variables';\n@use '../../../mixins';\n\n$block: '.#{variables.$ns}range-date-selection-control';\n\n#{$block} {\n --_--g-date-timeline-color-selection: var(\n --g-date-timeline-color-selection,\n var(--g-color-base-info-light)\n );\n\n --_--g-date-timeline-color-selection-hover: var(\n --g-date-timeline-color-selection-hover,\n var(--g-color-base-info-light-hover)\n );\n\n --_--g-date-timeline-color-selection-handle: var(\n --g-date-timeline-color-selection-handle,\n var(--g-color-base-brand)\n );\n\n --_--g-date-timeline-color-selection-handle-hover: var(\n --g-date-timeline-color-selection-handle-hover,\n var(--g-color-base-brand-hover)\n );\n\n position: absolute;\n z-index: 1;\n inset-block: 0;\n\n @supports (selector(:has(*))) and (selector(:focus-visible)) {\n &__start:has(&__slider-input:focus-visible),\n &__end:has(&__slider-input:focus-visible),\n &__dragger:has(&__slider-input:focus-visible) {\n border-radius: var(--g-border-radius-xs);\n outline: var(--g-color-line-focus) solid 2px;\n }\n }\n\n @supports not (selector(:has(*))) {\n &__start:focus-within,\n &__end:focus-within,\n &__dragger:focus-within {\n border-radius: var(--g-border-radius-xs);\n outline: var(--g-color-line-focus) solid 2px;\n }\n }\n\n &__dragger {\n position: absolute;\n inset-block: 0;\n inset-inline: 2px;\n\n cursor: move;\n\n background: var(--_--g-date-timeline-color-selection);\n\n &:hover,\n &_dragging {\n background: var(--_--g-date-timeline-color-selection-hover);\n }\n\n &_disabled {\n pointer-events: none;\n }\n }\n\n &__start {\n position: absolute;\n inset-block: 0;\n inset-inline-start: 0;\n\n width: 4px;\n\n background: var(--_--g-date-timeline-color-selection-handle);\n }\n\n &__end {\n position: absolute;\n inset-inline-end: 0;\n\n width: 4px;\n height: 100%;\n\n background: var(--_--g-date-timeline-color-selection-handle);\n }\n\n &__start,\n &__end {\n cursor: ew-resize;\n\n &:hover,\n &_dragging {\n background: var(--_--g-date-timeline-color-selection-handle-hover);\n }\n }\n\n &__slider-input-wrapper {\n @include mixins.visually-hidden();\n }\n}\n","@mixin visually-hidden() {\n position: absolute;\n\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n\n white-space: nowrap;\n\n border: 0;\n clip-path: inset(50%);\n}\n"],"file":"SelectionControl.css"}
@@ -1,6 +1,6 @@
1
- import type { AccessibilityProps, DomProps, StyleProps } from '../../../types';
2
- import type { RangeDateSelectionState } from '../../hooks/useRangeDateSelectionState';
3
- import './SelectionControl.css';
1
+ import type { AccessibilityProps, DomProps, StyleProps } from "../../../types/index.js";
2
+ import type { RangeDateSelectionState } from "../../hooks/useRangeDateSelectionState.js";
3
+ import "./SelectionControl.css";
4
4
  interface SelectionControlProps extends DomProps, StyleProps, AccessibilityProps {
5
5
  state: RangeDateSelectionState;
6
6
  }