@gravity-ui/date-components 1.6.0 → 2.1.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 (279) hide show
  1. package/dist/cjs/components/Calendar/Calendar.d.ts +6 -5
  2. package/dist/cjs/components/Calendar/Calendar.js +4 -4
  3. package/dist/cjs/components/Calendar/index.d.ts +6 -6
  4. package/dist/cjs/components/Calendar/index.js +5 -5
  5. package/dist/cjs/components/{CalendarBase → CalendarView}/Calendar.css +9 -6
  6. package/dist/cjs/components/{CalendarBase/CalendarBase.d.ts → CalendarView/CalendarView.d.ts} +2 -2
  7. package/dist/cjs/components/{CalendarBase/CalendarBase.js → CalendarView/CalendarView.js} +4 -3
  8. package/dist/{esm/components/CalendarBase → cjs/components/CalendarView}/hooks/types.d.ts +37 -31
  9. package/dist/cjs/components/{CalendarBase → CalendarView}/hooks/useCalendarCellProps.js +1 -2
  10. package/dist/cjs/components/{CalendarBase → CalendarView}/hooks/useCalendarGridProps.d.ts +2 -2
  11. package/dist/cjs/components/{CalendarBase → CalendarView}/hooks/useCalendarProps.js +17 -0
  12. package/dist/{esm/components/CalendarBase → cjs/components/CalendarView}/hooks/useCalendarState.d.ts +1 -1
  13. package/dist/cjs/components/{CalendarBase → CalendarView}/hooks/useCalendarState.js +45 -23
  14. package/dist/cjs/components/CalendarView/hooks/useRangeCalendarState.d.ts +8 -0
  15. package/dist/cjs/components/{CalendarBase → CalendarView}/hooks/useRangeCalendarState.js +25 -14
  16. package/dist/cjs/components/CalendarView/i18n/en.json +7 -0
  17. package/dist/cjs/components/CalendarView/i18n/index.d.ts +1 -0
  18. package/dist/cjs/components/CalendarView/i18n/ru.json +7 -0
  19. package/dist/cjs/components/DateField/DateField.d.ts +1 -4
  20. package/dist/cjs/components/DateField/DateField.js +3 -1
  21. package/dist/cjs/components/DateField/hooks/useBaseDateFieldState.d.ts +97 -0
  22. package/dist/cjs/components/DateField/hooks/useBaseDateFieldState.js +316 -0
  23. package/dist/cjs/components/DateField/hooks/useDateFieldProps.d.ts +6 -3
  24. package/dist/cjs/components/DateField/hooks/useDateFieldProps.js +14 -12
  25. package/dist/cjs/components/DateField/hooks/useDateFieldState.d.ts +2 -65
  26. package/dist/cjs/components/DateField/hooks/useDateFieldState.js +98 -410
  27. package/dist/cjs/components/DateField/index.d.ts +1 -0
  28. package/dist/cjs/components/DateField/index.js +1 -0
  29. package/dist/cjs/components/DateField/utils.d.ts +10 -1
  30. package/dist/cjs/components/DateField/utils.js +114 -2
  31. package/dist/cjs/components/DatePicker/DatePicker.d.ts +4 -4
  32. package/dist/cjs/components/DatePicker/DatePicker.js +8 -6
  33. package/dist/cjs/components/DatePicker/MobileCalendar.css +7 -32
  34. package/dist/cjs/components/DatePicker/MobileCalendar.d.ts +0 -5
  35. package/dist/cjs/components/DatePicker/MobileCalendar.js +18 -20
  36. package/dist/cjs/components/DatePicker/StubButton.css +26 -0
  37. package/dist/cjs/components/DatePicker/StubButton.d.ts +8 -0
  38. package/dist/cjs/components/DatePicker/StubButton.js +12 -0
  39. package/dist/cjs/components/DatePicker/hooks/useDatePickerProps.js +7 -17
  40. package/dist/cjs/components/DatePicker/hooks/useDatePickerState.d.ts +5 -4
  41. package/dist/cjs/components/DatePicker/hooks/useDatePickerState.js +71 -56
  42. package/dist/cjs/components/RangeCalendar/RangeCalendar.d.ts +3 -3
  43. package/dist/cjs/components/RangeCalendar/RangeCalendar.js +4 -4
  44. package/dist/cjs/components/RangeDateField/RangeDateField.css +4 -0
  45. package/dist/cjs/components/RangeDateField/RangeDateField.d.ts +12 -0
  46. package/dist/cjs/components/RangeDateField/RangeDateField.js +25 -0
  47. package/dist/cjs/components/RangeDateField/hooks/useRangeDateFieldState.d.ts +9 -0
  48. package/dist/cjs/components/RangeDateField/hooks/useRangeDateFieldState.js +227 -0
  49. package/dist/cjs/components/RangeDateField/index.d.ts +2 -0
  50. package/dist/cjs/components/RangeDateField/index.js +5 -0
  51. package/dist/cjs/components/RangeDateField/utils/createPlaceholderRangeValue.d.ts +5 -0
  52. package/dist/cjs/components/RangeDateField/utils/createPlaceholderRangeValue.js +9 -0
  53. package/dist/cjs/components/RangeDateField/utils/getRangeEditableSections.d.ts +5 -0
  54. package/dist/cjs/components/RangeDateField/utils/getRangeEditableSections.js +42 -0
  55. package/dist/cjs/components/RangeDateField/utils/index.d.ts +3 -0
  56. package/dist/cjs/components/RangeDateField/utils/index.js +6 -0
  57. package/dist/cjs/components/RangeDateField/utils/isValidRange.d.ts +3 -0
  58. package/dist/cjs/components/RangeDateField/utils/isValidRange.js +8 -0
  59. package/dist/cjs/components/RelativeDateField/RelativeDateField.d.ts +2 -2
  60. package/dist/cjs/components/RelativeDateField/RelativeDateField.js +5 -2
  61. package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldProps.js +5 -11
  62. package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldState.d.ts +3 -1
  63. package/dist/cjs/components/RelativeDateField/hooks/useRelativeDateFieldState.js +5 -4
  64. package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.css +3 -0
  65. package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.d.ts +2 -2
  66. package/dist/cjs/components/RelativeDatePicker/RelativeDatePicker.js +15 -2
  67. package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.js +35 -27
  68. package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerState.d.ts +2 -2
  69. package/dist/cjs/components/RelativeDatePicker/hooks/useRelativeDatePickerState.js +12 -16
  70. package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.css +56 -0
  71. package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.d.ts +27 -0
  72. package/dist/cjs/components/RelativeRangeDatePicker/RelativeRangeDatePicker.js +90 -0
  73. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.css +32 -0
  74. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.d.ts +14 -0
  75. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.js +43 -0
  76. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/i18n/en.json +8 -0
  77. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.d.ts +1 -0
  78. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.js +9 -0
  79. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/i18n/ru.json +8 -0
  80. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.d.ts +16 -0
  81. package/dist/cjs/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.js +104 -0
  82. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.css +26 -0
  83. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.d.ts +18 -0
  84. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/Presets.js +67 -0
  85. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.css +14 -0
  86. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.d.ts +7 -0
  87. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.js +90 -0
  88. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/defaultPresets.d.ts +9 -0
  89. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/defaultPresets.js +186 -0
  90. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/i18n/en.json +40 -0
  91. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/i18n/index.d.ts +1 -0
  92. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/i18n/index.js +9 -0
  93. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/i18n/ru.json +40 -0
  94. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/utils.d.ts +16 -0
  95. package/dist/cjs/components/RelativeRangeDatePicker/components/Presets/utils.js +85 -0
  96. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.css +3 -0
  97. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.d.ts +9 -0
  98. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/Zones.js +62 -0
  99. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/i18n/en.json +4 -0
  100. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/i18n/index.d.ts +1 -0
  101. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/i18n/index.js +9 -0
  102. package/dist/cjs/components/RelativeRangeDatePicker/components/Zones/i18n/ru.json +4 -0
  103. package/dist/cjs/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.d.ts +26 -0
  104. package/dist/cjs/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.js +58 -0
  105. package/dist/cjs/components/RelativeRangeDatePicker/i18n/en.json +8 -0
  106. package/dist/cjs/components/RelativeRangeDatePicker/i18n/index.d.ts +1 -0
  107. package/dist/cjs/components/RelativeRangeDatePicker/i18n/index.js +9 -0
  108. package/dist/cjs/components/RelativeRangeDatePicker/i18n/ru.json +8 -0
  109. package/dist/cjs/components/RelativeRangeDatePicker/index.d.ts +4 -0
  110. package/dist/cjs/components/RelativeRangeDatePicker/index.js +8 -0
  111. package/dist/cjs/components/RelativeRangeDatePicker/utils.d.ts +15 -0
  112. package/dist/cjs/components/RelativeRangeDatePicker/utils.js +53 -0
  113. package/dist/cjs/components/index.d.ts +3 -0
  114. package/dist/cjs/components/index.js +2 -0
  115. package/dist/cjs/components/types/datePicker.d.ts +5 -2
  116. package/dist/cjs/components/types/events.d.ts +4 -4
  117. package/dist/cjs/components/types/inputs.d.ts +10 -9
  118. package/dist/cjs/components/utils/dates.d.ts +1 -2
  119. package/dist/cjs/components/utils/useDefaultTimeZone.d.ts +2 -0
  120. package/dist/cjs/components/utils/useDefaultTimeZone.js +15 -0
  121. package/dist/cjs/components/utils/validation/datePicker.d.ts +6 -0
  122. package/dist/cjs/components/utils/validation/datePicker.js +30 -0
  123. package/dist/cjs/components/utils/validation/i18n/en.json +6 -0
  124. package/dist/cjs/components/utils/validation/i18n/index.d.ts +1 -0
  125. package/dist/cjs/components/utils/validation/i18n/index.js +9 -0
  126. package/dist/cjs/components/utils/validation/i18n/ru.json +6 -0
  127. package/dist/esm/components/Calendar/Calendar.d.ts +6 -5
  128. package/dist/esm/components/Calendar/Calendar.js +4 -4
  129. package/dist/esm/components/Calendar/index.d.ts +6 -6
  130. package/dist/esm/components/Calendar/index.js +5 -5
  131. package/dist/esm/components/{CalendarBase → CalendarView}/Calendar.css +9 -6
  132. package/dist/esm/components/{CalendarBase/CalendarBase.d.ts → CalendarView/CalendarView.d.ts} +2 -2
  133. package/dist/esm/components/{CalendarBase/CalendarBase.js → CalendarView/CalendarView.js} +3 -2
  134. package/dist/{cjs/components/CalendarBase → esm/components/CalendarView}/hooks/types.d.ts +37 -31
  135. package/dist/esm/components/{CalendarBase → CalendarView}/hooks/useCalendarCellProps.js +1 -2
  136. package/dist/esm/components/{CalendarBase → CalendarView}/hooks/useCalendarGridProps.d.ts +2 -2
  137. package/dist/esm/components/{CalendarBase → CalendarView}/hooks/useCalendarGridProps.js +0 -1
  138. package/dist/esm/components/{CalendarBase → CalendarView}/hooks/useCalendarProps.js +17 -0
  139. package/dist/{cjs/components/CalendarBase → esm/components/CalendarView}/hooks/useCalendarState.d.ts +1 -1
  140. package/dist/esm/components/{CalendarBase → CalendarView}/hooks/useCalendarState.js +46 -24
  141. package/dist/esm/components/CalendarView/hooks/useRangeCalendarState.d.ts +8 -0
  142. package/dist/esm/components/{CalendarBase → CalendarView}/hooks/useRangeCalendarState.js +24 -13
  143. package/dist/esm/components/CalendarView/i18n/en.json +7 -0
  144. package/dist/esm/components/CalendarView/i18n/index.d.ts +1 -0
  145. package/dist/esm/components/CalendarView/i18n/ru.json +7 -0
  146. package/dist/esm/components/DateField/DateField.d.ts +1 -4
  147. package/dist/esm/components/DateField/DateField.js +4 -2
  148. package/dist/esm/components/DateField/hooks/useBaseDateFieldState.d.ts +97 -0
  149. package/dist/esm/components/DateField/hooks/useBaseDateFieldState.js +311 -0
  150. package/dist/esm/components/DateField/hooks/useDateFieldProps.d.ts +6 -3
  151. package/dist/esm/components/DateField/hooks/useDateFieldProps.js +14 -12
  152. package/dist/esm/components/DateField/hooks/useDateFieldState.d.ts +2 -65
  153. package/dist/esm/components/DateField/hooks/useDateFieldState.js +97 -409
  154. package/dist/esm/components/DateField/index.d.ts +1 -0
  155. package/dist/esm/components/DateField/index.js +1 -0
  156. package/dist/esm/components/DateField/utils.d.ts +10 -1
  157. package/dist/esm/components/DateField/utils.js +105 -2
  158. package/dist/esm/components/DatePicker/DatePicker.d.ts +4 -4
  159. package/dist/esm/components/DatePicker/DatePicker.js +10 -8
  160. package/dist/esm/components/DatePicker/MobileCalendar.css +7 -32
  161. package/dist/esm/components/DatePicker/MobileCalendar.d.ts +0 -5
  162. package/dist/esm/components/DatePicker/MobileCalendar.js +17 -18
  163. package/dist/esm/components/DatePicker/StubButton.css +26 -0
  164. package/dist/esm/components/DatePicker/StubButton.d.ts +8 -0
  165. package/dist/esm/components/DatePicker/StubButton.js +8 -0
  166. package/dist/esm/components/DatePicker/hooks/useDatePickerProps.js +7 -17
  167. package/dist/esm/components/DatePicker/hooks/useDatePickerState.d.ts +5 -4
  168. package/dist/esm/components/DatePicker/hooks/useDatePickerState.js +71 -56
  169. package/dist/esm/components/RangeCalendar/RangeCalendar.d.ts +3 -3
  170. package/dist/esm/components/RangeCalendar/RangeCalendar.js +4 -4
  171. package/dist/esm/components/RangeDateField/RangeDateField.css +4 -0
  172. package/dist/esm/components/RangeDateField/RangeDateField.d.ts +12 -0
  173. package/dist/esm/components/RangeDateField/RangeDateField.js +21 -0
  174. package/dist/esm/components/RangeDateField/hooks/useRangeDateFieldState.d.ts +9 -0
  175. package/dist/esm/components/RangeDateField/hooks/useRangeDateFieldState.js +222 -0
  176. package/dist/esm/components/RangeDateField/index.d.ts +2 -0
  177. package/dist/esm/components/RangeDateField/index.js +2 -0
  178. package/dist/esm/components/RangeDateField/utils/createPlaceholderRangeValue.d.ts +5 -0
  179. package/dist/esm/components/RangeDateField/utils/createPlaceholderRangeValue.js +5 -0
  180. package/dist/esm/components/RangeDateField/utils/getRangeEditableSections.d.ts +5 -0
  181. package/dist/esm/components/RangeDateField/utils/getRangeEditableSections.js +38 -0
  182. package/dist/esm/components/RangeDateField/utils/index.d.ts +3 -0
  183. package/dist/esm/components/RangeDateField/utils/index.js +3 -0
  184. package/dist/esm/components/RangeDateField/utils/isValidRange.d.ts +3 -0
  185. package/dist/esm/components/RangeDateField/utils/isValidRange.js +4 -0
  186. package/dist/esm/components/RelativeDateField/RelativeDateField.d.ts +2 -2
  187. package/dist/esm/components/RelativeDateField/RelativeDateField.js +5 -2
  188. package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldProps.js +5 -11
  189. package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldState.d.ts +3 -1
  190. package/dist/esm/components/RelativeDateField/hooks/useRelativeDateFieldState.js +5 -4
  191. package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.css +3 -0
  192. package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.d.ts +2 -2
  193. package/dist/esm/components/RelativeDatePicker/RelativeDatePicker.js +17 -4
  194. package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerProps.js +35 -27
  195. package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerState.d.ts +2 -2
  196. package/dist/esm/components/RelativeDatePicker/hooks/useRelativeDatePickerState.js +12 -16
  197. package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.css +56 -0
  198. package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.d.ts +27 -0
  199. package/dist/esm/components/RelativeRangeDatePicker/RelativeRangeDatePicker.js +85 -0
  200. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.css +32 -0
  201. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.d.ts +14 -0
  202. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/PickerDialog.js +39 -0
  203. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/i18n/en.json +8 -0
  204. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.d.ts +1 -0
  205. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/i18n/index.js +5 -0
  206. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/i18n/ru.json +8 -0
  207. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.d.ts +16 -0
  208. package/dist/esm/components/RelativeRangeDatePicker/components/PickerDialog/useRelativeRangeDatePickerDialogState.js +99 -0
  209. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.css +26 -0
  210. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.d.ts +18 -0
  211. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/Presets.js +62 -0
  212. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.css +14 -0
  213. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.d.ts +7 -0
  214. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/PresetsDoc.js +85 -0
  215. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/defaultPresets.d.ts +9 -0
  216. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/defaultPresets.js +183 -0
  217. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/i18n/en.json +40 -0
  218. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/i18n/index.d.ts +1 -0
  219. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/i18n/index.js +5 -0
  220. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/i18n/ru.json +40 -0
  221. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/utils.d.ts +16 -0
  222. package/dist/esm/components/RelativeRangeDatePicker/components/Presets/utils.js +78 -0
  223. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.css +3 -0
  224. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.d.ts +9 -0
  225. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/Zones.js +58 -0
  226. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/i18n/en.json +4 -0
  227. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/i18n/index.d.ts +1 -0
  228. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/i18n/index.js +5 -0
  229. package/dist/esm/components/RelativeRangeDatePicker/components/Zones/i18n/ru.json +4 -0
  230. package/dist/esm/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.d.ts +26 -0
  231. package/dist/esm/components/RelativeRangeDatePicker/hooks/useRelativeRangeDatePickerState.js +53 -0
  232. package/dist/esm/components/RelativeRangeDatePicker/i18n/en.json +8 -0
  233. package/dist/esm/components/RelativeRangeDatePicker/i18n/index.d.ts +1 -0
  234. package/dist/esm/components/RelativeRangeDatePicker/i18n/index.js +5 -0
  235. package/dist/esm/components/RelativeRangeDatePicker/i18n/ru.json +8 -0
  236. package/dist/esm/components/RelativeRangeDatePicker/index.d.ts +4 -0
  237. package/dist/esm/components/RelativeRangeDatePicker/index.js +3 -0
  238. package/dist/esm/components/RelativeRangeDatePicker/utils.d.ts +15 -0
  239. package/dist/esm/components/RelativeRangeDatePicker/utils.js +46 -0
  240. package/dist/esm/components/index.d.ts +3 -0
  241. package/dist/esm/components/index.js +2 -0
  242. package/dist/esm/components/types/datePicker.d.ts +5 -2
  243. package/dist/esm/components/types/events.d.ts +4 -4
  244. package/dist/esm/components/types/inputs.d.ts +10 -9
  245. package/dist/esm/components/utils/dates.d.ts +1 -2
  246. package/dist/esm/components/utils/useDefaultTimeZone.d.ts +2 -0
  247. package/dist/esm/components/utils/useDefaultTimeZone.js +10 -0
  248. package/dist/esm/components/utils/validation/datePicker.d.ts +6 -0
  249. package/dist/esm/components/utils/validation/datePicker.js +26 -0
  250. package/dist/esm/components/utils/validation/i18n/en.json +6 -0
  251. package/dist/esm/components/utils/validation/i18n/index.d.ts +1 -0
  252. package/dist/esm/components/utils/validation/i18n/index.js +5 -0
  253. package/dist/esm/components/utils/validation/i18n/ru.json +6 -0
  254. package/package.json +28 -28
  255. package/dist/cjs/components/CalendarBase/hooks/useRangeCalendarState.d.ts +0 -7
  256. package/dist/cjs/components/CalendarBase/i18n/en.json +0 -4
  257. package/dist/cjs/components/CalendarBase/i18n/index.d.ts +0 -1
  258. package/dist/cjs/components/CalendarBase/i18n/ru.json +0 -4
  259. package/dist/cjs/components/hooks/useControlledState.d.ts +0 -1
  260. package/dist/cjs/components/hooks/useControlledState.js +0 -28
  261. package/dist/esm/components/CalendarBase/hooks/useRangeCalendarState.d.ts +0 -7
  262. package/dist/esm/components/CalendarBase/i18n/en.json +0 -4
  263. package/dist/esm/components/CalendarBase/i18n/index.d.ts +0 -1
  264. package/dist/esm/components/CalendarBase/i18n/ru.json +0 -4
  265. package/dist/esm/components/hooks/useControlledState.d.ts +0 -1
  266. package/dist/esm/components/hooks/useControlledState.js +0 -23
  267. /package/dist/cjs/components/{CalendarBase → CalendarView}/hooks/types.js +0 -0
  268. /package/dist/cjs/components/{CalendarBase → CalendarView}/hooks/useCalendarCellProps.d.ts +0 -0
  269. /package/dist/cjs/components/{CalendarBase → CalendarView}/hooks/useCalendarGridProps.js +0 -0
  270. /package/dist/cjs/components/{CalendarBase → CalendarView}/hooks/useCalendarProps.d.ts +0 -0
  271. /package/dist/cjs/components/{CalendarBase → CalendarView}/i18n/index.js +0 -0
  272. /package/dist/cjs/components/{CalendarBase → CalendarView}/utils.d.ts +0 -0
  273. /package/dist/cjs/components/{CalendarBase → CalendarView}/utils.js +0 -0
  274. /package/dist/esm/components/{CalendarBase → CalendarView}/hooks/types.js +0 -0
  275. /package/dist/esm/components/{CalendarBase → CalendarView}/hooks/useCalendarCellProps.d.ts +0 -0
  276. /package/dist/esm/components/{CalendarBase → CalendarView}/hooks/useCalendarProps.d.ts +0 -0
  277. /package/dist/esm/components/{CalendarBase → CalendarView}/i18n/index.js +0 -0
  278. /package/dist/esm/components/{CalendarBase → CalendarView}/utils.d.ts +0 -0
  279. /package/dist/esm/components/{CalendarBase → CalendarView}/utils.js +0 -0
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.i18n = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const i18n_1 = require("@gravity-ui/uikit/i18n");
6
+ const cn_1 = require("../../../../../utils/cn");
7
+ const en_json_1 = tslib_1.__importDefault(require("./en.json"));
8
+ const ru_json_1 = tslib_1.__importDefault(require("./ru.json"));
9
+ exports.i18n = (0, i18n_1.addComponentKeysets)({ en: en_json_1.default, ru: ru_json_1.default }, `${cn_1.NAMESPACE}relative-range-date-picker-dialog`);
@@ -0,0 +1,8 @@
1
+ {
2
+ "Value is incorrect.": "Значение некорректно.",
3
+ "Value is required.": "Value is required.",
4
+ "\"From\" can't be after \"To\".": "Значение «От» не может быть позже чем «До».",
5
+ "From": "От",
6
+ "To": "Дo",
7
+ "Apply": "Применить"
8
+ }
@@ -0,0 +1,16 @@
1
+ import type { Value } from '../../../RelativeDatePicker';
2
+ import type { RelativeRangeDatePickerProps } from '../../RelativeRangeDatePicker';
3
+ import type { RelativeRangeDatePickerState } from '../../hooks/useRelativeRangeDatePickerState';
4
+ export declare function useRelativeRangeDatePickerDialogState(state: RelativeRangeDatePickerState, props: RelativeRangeDatePickerProps): {
5
+ start: Value | null;
6
+ end: Value | null;
7
+ timeZone: string;
8
+ setStart: (newValue: Value | null) => void;
9
+ setEnd: (newValue: Value | null) => void;
10
+ setRange: (newStart: Value, newEnd: Value) => void;
11
+ setTimeZone: (newTimeZone: string) => void;
12
+ applyValue: () => void;
13
+ isInvalid: boolean;
14
+ startValidation: import("../../../utils/validation/datePicker").ValidationResult | undefined;
15
+ endValidation: import("../../../utils/validation/datePicker").ValidationResult | undefined;
16
+ };
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useRelativeRangeDatePickerDialogState = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const date_utils_1 = require("@gravity-ui/date-utils");
7
+ const datePicker_1 = require("../../../utils/validation/datePicker");
8
+ const i18n_1 = require("./i18n");
9
+ function useRelativeRangeDatePickerDialogState(state, props) {
10
+ var _a, _b, _c, _d;
11
+ const { withApplyButton, allowNullableValues } = props;
12
+ const [start, setStart] = react_1.default.useState((_b = (_a = state.value) === null || _a === void 0 ? void 0 : _a.start) !== null && _b !== void 0 ? _b : null);
13
+ const [end, setEnd] = react_1.default.useState((_d = (_c = state.value) === null || _c === void 0 ? void 0 : _c.end) !== null && _d !== void 0 ? _d : null);
14
+ const [innerTimeZone, setTimeZone] = react_1.default.useState(state.timeZone);
15
+ const timeZone = withApplyButton ? innerTimeZone : state.timeZone;
16
+ function setStartValue(newValue) {
17
+ setStart(newValue);
18
+ if (!withApplyButton) {
19
+ state.setValue(getRangeValue(newValue, end, Object.assign(Object.assign({}, props), { timeZone })), timeZone);
20
+ }
21
+ }
22
+ function setEndValue(newValue) {
23
+ setEnd(newValue);
24
+ if (!withApplyButton) {
25
+ state.setValue(getRangeValue(start, newValue, Object.assign(Object.assign({}, props), { timeZone })), timeZone);
26
+ }
27
+ }
28
+ function setTimeZoneValue(newTimeZone) {
29
+ setTimeZone(newTimeZone);
30
+ if (!withApplyButton) {
31
+ state.setValue(getRangeValue(start, end, Object.assign(Object.assign({}, props), { timeZone: newTimeZone })), newTimeZone);
32
+ }
33
+ }
34
+ function setRange(newStart, newEnd) {
35
+ setStart(newStart);
36
+ setEnd(newEnd);
37
+ if (!withApplyButton) {
38
+ state.setValue(getRangeValue(newStart, newEnd, Object.assign(Object.assign({}, props), { timeZone })), timeZone);
39
+ }
40
+ }
41
+ function applyValue() {
42
+ state.setValue(getRangeValue(start, end, Object.assign(Object.assign({}, props), { timeZone })), timeZone);
43
+ }
44
+ const validation = react_1.default.useMemo(() => getRangeValidationResult(start, end, allowNullableValues, props.minValue, props.maxValue, props.isDateUnavailable, timeZone), [
45
+ allowNullableValues,
46
+ end,
47
+ props.isDateUnavailable,
48
+ props.maxValue,
49
+ props.minValue,
50
+ start,
51
+ timeZone,
52
+ ]);
53
+ return {
54
+ start,
55
+ end,
56
+ timeZone,
57
+ setStart: setStartValue,
58
+ setEnd: setEndValue,
59
+ setRange,
60
+ setTimeZone: setTimeZoneValue,
61
+ applyValue,
62
+ isInvalid: validation.isInvalid,
63
+ startValidation: validation.startValidationResult,
64
+ endValidation: validation.endValidationResult,
65
+ };
66
+ }
67
+ exports.useRelativeRangeDatePickerDialogState = useRelativeRangeDatePickerDialogState;
68
+ function getRangeValue(start, end, options = {}) {
69
+ var _a;
70
+ if (!start && !end) {
71
+ return null;
72
+ }
73
+ const { isInvalid } = getRangeValidationResult(start, end, options.allowNullableValues, options.minValue, options.maxValue, options.isDateUnavailable, (_a = options.timeZone) !== null && _a !== void 0 ? _a : 'default');
74
+ if (isInvalid) {
75
+ return null;
76
+ }
77
+ return { start, end };
78
+ }
79
+ function getRangeValidationResult(start, end, allowNullableValues, minValue, maxValue, isDateUnavailable, timeZone) {
80
+ if (!start && !end) {
81
+ return { isInvalid: false };
82
+ }
83
+ const startDate = start ? (0, date_utils_1.dateTimeParse)(start.value, { timeZone }) : null;
84
+ const endDate = end ? (0, date_utils_1.dateTimeParse)(end.value, { timeZone, roundUp: true }) : null;
85
+ const startValidationResult = (0, datePicker_1.getValidationResult)(startDate, minValue, maxValue, isDateUnavailable, timeZone);
86
+ if (!startDate && !allowNullableValues) {
87
+ startValidationResult.isInvalid = true;
88
+ startValidationResult.errors.push((0, i18n_1.i18n)('Value is required.'));
89
+ }
90
+ const endValidationResult = (0, datePicker_1.getValidationResult)(endDate, minValue, maxValue, isDateUnavailable, timeZone);
91
+ if (!endDate && !allowNullableValues) {
92
+ endValidationResult.isInvalid = true;
93
+ endValidationResult.errors.push((0, i18n_1.i18n)('Value is required.'));
94
+ }
95
+ if (startDate && endDate && endDate.isBefore(startDate)) {
96
+ startValidationResult.isInvalid = true;
97
+ startValidationResult.errors.push((0, i18n_1.i18n)(`"From" can't be after "To".`));
98
+ }
99
+ return {
100
+ isInvalid: startValidationResult.isInvalid || endValidationResult.isInvalid,
101
+ startValidationResult,
102
+ endValidationResult,
103
+ };
104
+ }
@@ -0,0 +1,26 @@
1
+ .g-date-relative-range-date-picker-presets__tabs {
2
+ --g-tabs-border-width: 0;
3
+ display: flex;
4
+ align-items: center;
5
+ gap: var(--g-spacing-2);
6
+ box-shadow: inset 0 -1px var(--g-color-line-generic);
7
+ }
8
+ .g-date-relative-range-date-picker-presets__list-container {
9
+ outline: none;
10
+ }
11
+ .g-date-relative-range-date-picker-presets__doc {
12
+ margin-inline-start: auto;
13
+ }
14
+ .g-date-relative-range-date-picker-presets__content {
15
+ overflow: auto;
16
+ height: 128px;
17
+ }
18
+ .g-date-relative-range-date-picker-presets_size_l .g-date-relative-range-date-picker-presets__content {
19
+ height: 144px;
20
+ }
21
+ .g-date-relative-range-date-picker-presets_size_xl .g-date-relative-range-date-picker-presets__content {
22
+ height: 162px;
23
+ font-size: var(--g-text-body-2-font-size);
24
+ line-height: var(--g-text-body-2-line-height);
25
+ font-weight: var(--g-text-body-font-weight);
26
+ }
@@ -0,0 +1,18 @@
1
+ import type { DateTime } from '@gravity-ui/date-utils';
2
+ import type { PresetTab } from './utils';
3
+ import './Presets.css';
4
+ export interface PresetProps {
5
+ className?: string;
6
+ onChoosePreset: (start: string, end: string) => void;
7
+ withTime?: boolean;
8
+ minValue?: DateTime;
9
+ size?: 's' | 'm' | 'l' | 'xl';
10
+ presetTabs?: PresetTab[];
11
+ }
12
+ export declare function Presets({ className, size, minValue, withTime, onChoosePreset, presetTabs, }: PresetProps): import("react/jsx-runtime").JSX.Element | null;
13
+ export declare const SIZE_TO_ITEM_HEIGHT: {
14
+ s: number;
15
+ m: number;
16
+ l: number;
17
+ xl: number;
18
+ };
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SIZE_TO_ITEM_HEIGHT = exports.Presets = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const react_1 = tslib_1.__importDefault(require("react"));
7
+ const uikit_1 = require("@gravity-ui/uikit");
8
+ const cn_1 = require("../../../../utils/cn");
9
+ const PresetsDoc_1 = require("./PresetsDoc");
10
+ const utils_1 = require("./utils");
11
+ require("./Presets.css");
12
+ const b = (0, cn_1.block)('relative-range-date-picker-presets');
13
+ function Presets({ className, size = 'm', minValue, withTime, onChoosePreset, presetTabs, }) {
14
+ var _a, _b;
15
+ const tabs = react_1.default.useMemo(() => {
16
+ return (0, utils_1.filterPresetTabs)(presetTabs !== null && presetTabs !== void 0 ? presetTabs : (0, utils_1.getDefaultPresetTabs)({ withTime }), { minValue });
17
+ }, [withTime, minValue, presetTabs]);
18
+ const [activeTabId, setActiveTab] = react_1.default.useState((_a = tabs[0]) === null || _a === void 0 ? void 0 : _a.id);
19
+ if (tabs.length === 0) {
20
+ return null;
21
+ }
22
+ const activeTab = (_b = tabs.find((tab) => tab.id === activeTabId)) !== null && _b !== void 0 ? _b : tabs[0];
23
+ if (!activeTab) {
24
+ return null;
25
+ }
26
+ if (activeTab.id !== activeTabId) {
27
+ setActiveTab(activeTab.id);
28
+ }
29
+ return ((0, jsx_runtime_1.jsxs)("div", { className: b({ size }, className), children: [(0, jsx_runtime_1.jsxs)("div", { className: b('tabs'), children: [(0, jsx_runtime_1.jsx)(uikit_1.Tabs, { activeTab: activeTabId, onSelectTab: setActiveTab, items: tabs, size: size === 's' ? 'm' : size }), (0, jsx_runtime_1.jsx)(PresetsDoc_1.PresetsDoc, { className: b('doc'), size: size })] }), (0, jsx_runtime_1.jsx)("div", { className: b('content'), children: (0, jsx_runtime_1.jsx)(PresetsList, { presets: activeTab.presets, onChoosePreset: onChoosePreset, size: size }) })] }));
30
+ }
31
+ exports.Presets = Presets;
32
+ exports.SIZE_TO_ITEM_HEIGHT = {
33
+ s: 28,
34
+ m: 28,
35
+ l: 32,
36
+ xl: 36,
37
+ };
38
+ function PresetsList({ presets, onChoosePreset, size = 'm' }) {
39
+ const ref = react_1.default.useRef(null);
40
+ react_1.default.useEffect(() => {
41
+ var _a, _b;
42
+ const list = ref.current;
43
+ const container = (_b = (_a = ref.current) === null || _a === void 0 ? void 0 : _a.refContainer.current) === null || _b === void 0 ? void 0 : _b.node;
44
+ if (list && container) {
45
+ try {
46
+ container.setAttribute('tabindex', '0');
47
+ container.setAttribute('class', b('list-container'));
48
+ const handleFocus = () => {
49
+ if (list.getActiveItem() === null) {
50
+ list.activateItem(0, true);
51
+ }
52
+ };
53
+ container.addEventListener('focus', handleFocus);
54
+ return () => {
55
+ container.removeEventListener('focus', handleFocus);
56
+ };
57
+ }
58
+ catch (_c) {
59
+ // Oooops
60
+ }
61
+ }
62
+ return undefined;
63
+ }, []);
64
+ return ((0, jsx_runtime_1.jsx)(uikit_1.List, { ref: ref, className: b('list'), itemClassName: b('item'), items: presets, filterable: false, virtualized: false, renderItem: (item) => item.title, itemHeight: exports.SIZE_TO_ITEM_HEIGHT[size], onItemClick: (item) => {
65
+ onChoosePreset(item.from, item.to);
66
+ } }));
67
+ }
@@ -0,0 +1,14 @@
1
+ .g-date-relative-range-date-picker-presets-doc__button {
2
+ --g-button-background-color-hover: transparent;
3
+ }
4
+ .g-date-relative-range-date-picker-presets-doc__content {
5
+ --g-popover-max-width: "none";
6
+ }
7
+ .g-date-relative-range-date-picker-presets-doc__table_size_xl {
8
+ font-size: var(--g-text-body-2-font-size);
9
+ line-height: var(--g-text-body-2-line-height);
10
+ font-weight: var(--g-text-body-font-weight);
11
+ }
12
+ .g-date-relative-range-date-picker-presets-doc__table > table {
13
+ width: 100%;
14
+ }
@@ -0,0 +1,7 @@
1
+ import './PresetsDoc.css';
2
+ interface PresetsDocProps {
3
+ className?: string;
4
+ size?: 's' | 'm' | 'l' | 'xl';
5
+ }
6
+ export declare function PresetsDoc({ className, size }: PresetsDocProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PresetsDoc = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const react_1 = tslib_1.__importDefault(require("react"));
7
+ const icons_1 = require("@gravity-ui/icons");
8
+ const uikit_1 = require("@gravity-ui/uikit");
9
+ const cn_1 = require("../../../../utils/cn");
10
+ const getButtonSizeForInput_1 = require("../../../utils/getButtonSizeForInput");
11
+ const i18n_1 = require("./i18n");
12
+ require("./PresetsDoc.css");
13
+ const b = (0, cn_1.block)('relative-range-date-picker-presets-doc');
14
+ const columns = [
15
+ {
16
+ id: 'title',
17
+ name: () => {
18
+ return (0, i18n_1.i18n)('Range');
19
+ },
20
+ },
21
+ {
22
+ id: 'from',
23
+ name: () => {
24
+ return (0, i18n_1.i18n)('From');
25
+ },
26
+ },
27
+ {
28
+ id: 'to',
29
+ name: () => {
30
+ return (0, i18n_1.i18n)('To');
31
+ },
32
+ },
33
+ ];
34
+ const data = [
35
+ {
36
+ get title() {
37
+ return (0, i18n_1.i18n)('Last 5 minutes');
38
+ },
39
+ from: 'now - 5m',
40
+ to: 'now',
41
+ },
42
+ {
43
+ get title() {
44
+ return (0, i18n_1.i18n)('From start of day');
45
+ },
46
+ from: 'now/d',
47
+ to: 'now',
48
+ },
49
+ {
50
+ get title() {
51
+ return (0, i18n_1.i18n)('This week');
52
+ },
53
+ from: 'now/w',
54
+ to: 'now/w',
55
+ },
56
+ {
57
+ get title() {
58
+ return (0, i18n_1.i18n)('From start of week');
59
+ },
60
+ from: 'now/w',
61
+ to: 'now',
62
+ },
63
+ {
64
+ get title() {
65
+ return (0, i18n_1.i18n)('Previous month');
66
+ },
67
+ from: 'now - 1M/M',
68
+ to: 'now - 1M/M',
69
+ },
70
+ ];
71
+ function PresetsExamples({ size }) {
72
+ return (0, jsx_runtime_1.jsx)(uikit_1.Table, { columns: columns, data: data, className: b('table', { size }) });
73
+ }
74
+ function DesktopDoc({ className, size }) {
75
+ return ((0, jsx_runtime_1.jsx)(uikit_1.Popover, { className: b(null, className), tooltipContentClassName: b('content'), hasArrow: false, content: (0, jsx_runtime_1.jsx)(PresetsExamples, { size: size }), children: (0, jsx_runtime_1.jsx)(uikit_1.Button, { className: b('button'), view: "flat-secondary", size: (0, getButtonSizeForInput_1.getButtonSizeForInput)(size), children: (0, jsx_runtime_1.jsx)(uikit_1.Icon, { data: icons_1.CircleQuestion }) }) }));
76
+ }
77
+ function MobileDoc({ className, size }) {
78
+ const [open, setOpen] = react_1.default.useState(false);
79
+ return ((0, jsx_runtime_1.jsxs)("div", { className: b(null, className), children: [(0, jsx_runtime_1.jsx)(uikit_1.Button, { className: b('button'), view: "flat-secondary", size: "l", onClick: () => {
80
+ setOpen(true);
81
+ }, children: (0, jsx_runtime_1.jsx)(uikit_1.Icon, { data: icons_1.CircleQuestion }) }), (0, jsx_runtime_1.jsx)(uikit_1.Sheet, { visible: open, onClose: () => setOpen(false), children: (0, jsx_runtime_1.jsx)(PresetsExamples, { size: size }) })] }));
82
+ }
83
+ function PresetsDoc({ className, size }) {
84
+ const isMobile = (0, uikit_1.useMobile)();
85
+ if (isMobile) {
86
+ return (0, jsx_runtime_1.jsx)(MobileDoc, { className: className, size: size });
87
+ }
88
+ return (0, jsx_runtime_1.jsx)(DesktopDoc, { className: className, size: size });
89
+ }
90
+ exports.PresetsDoc = PresetsDoc;
@@ -0,0 +1,9 @@
1
+ export interface Preset {
2
+ from: string;
3
+ to: string;
4
+ title: string;
5
+ }
6
+ export declare const DEFAULT_DATE_PRESETS: Preset[];
7
+ export declare const DEFAULT_TIME_PRESETS: Preset[];
8
+ export declare const DEFAULT_OTHERS_PRESETS: Preset[];
9
+ export declare const allPresets: Preset[];
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.allPresets = exports.DEFAULT_OTHERS_PRESETS = exports.DEFAULT_TIME_PRESETS = exports.DEFAULT_DATE_PRESETS = void 0;
4
+ const i18n_1 = require("./i18n");
5
+ exports.DEFAULT_DATE_PRESETS = [
6
+ {
7
+ from: 'now-1d',
8
+ to: 'now',
9
+ get title() {
10
+ return (0, i18n_1.i18n)('Last day');
11
+ },
12
+ },
13
+ {
14
+ from: 'now-3d',
15
+ to: 'now',
16
+ get title() {
17
+ return (0, i18n_1.i18n)('Last 3 days');
18
+ },
19
+ },
20
+ {
21
+ from: 'now-1w',
22
+ to: 'now',
23
+ get title() {
24
+ return (0, i18n_1.i18n)('Last week');
25
+ },
26
+ },
27
+ {
28
+ from: 'now-1M',
29
+ to: 'now',
30
+ get title() {
31
+ return (0, i18n_1.i18n)('Last month');
32
+ },
33
+ },
34
+ {
35
+ from: 'now-3M',
36
+ to: 'now',
37
+ get title() {
38
+ return (0, i18n_1.i18n)('Last 3 months');
39
+ },
40
+ },
41
+ {
42
+ from: 'now-6M',
43
+ to: 'now',
44
+ get title() {
45
+ return (0, i18n_1.i18n)('Last 6 months');
46
+ },
47
+ },
48
+ {
49
+ from: 'now-1y',
50
+ to: 'now',
51
+ get title() {
52
+ return (0, i18n_1.i18n)('Last year');
53
+ },
54
+ },
55
+ {
56
+ from: 'now-3y',
57
+ to: 'now',
58
+ get title() {
59
+ return (0, i18n_1.i18n)('Last 3 years');
60
+ },
61
+ },
62
+ ];
63
+ exports.DEFAULT_TIME_PRESETS = [
64
+ {
65
+ from: 'now-5m',
66
+ to: 'now',
67
+ get title() {
68
+ return (0, i18n_1.i18n)('Last 5 minutes');
69
+ },
70
+ },
71
+ {
72
+ from: 'now-15m',
73
+ to: 'now',
74
+ get title() {
75
+ return (0, i18n_1.i18n)('Last 15 minutes');
76
+ },
77
+ },
78
+ {
79
+ from: 'now-30m',
80
+ to: 'now',
81
+ get title() {
82
+ return (0, i18n_1.i18n)('Last 30 minutes');
83
+ },
84
+ },
85
+ {
86
+ from: 'now-1h',
87
+ to: 'now',
88
+ get title() {
89
+ return (0, i18n_1.i18n)('Last hour');
90
+ },
91
+ },
92
+ {
93
+ from: 'now-3h',
94
+ to: 'now',
95
+ get title() {
96
+ return (0, i18n_1.i18n)('Last 3 hours');
97
+ },
98
+ },
99
+ {
100
+ from: 'now-6h',
101
+ to: 'now',
102
+ get title() {
103
+ return (0, i18n_1.i18n)('Last 6 hours');
104
+ },
105
+ },
106
+ {
107
+ from: 'now-12h',
108
+ to: 'now',
109
+ get title() {
110
+ return (0, i18n_1.i18n)('Last 12 hours');
111
+ },
112
+ },
113
+ ];
114
+ exports.DEFAULT_OTHERS_PRESETS = [
115
+ {
116
+ from: 'now/d',
117
+ to: 'now/d',
118
+ get title() {
119
+ return (0, i18n_1.i18n)('Today');
120
+ },
121
+ },
122
+ {
123
+ from: 'now-1d/d',
124
+ to: 'now-1d/d',
125
+ get title() {
126
+ return (0, i18n_1.i18n)('Yesterday');
127
+ },
128
+ },
129
+ {
130
+ from: 'now-2d/d',
131
+ to: 'now-2d/d',
132
+ get title() {
133
+ return (0, i18n_1.i18n)('Day before yesterday');
134
+ },
135
+ },
136
+ {
137
+ from: 'now/w',
138
+ to: 'now/w',
139
+ get title() {
140
+ return (0, i18n_1.i18n)('This week');
141
+ },
142
+ },
143
+ {
144
+ from: 'now/M',
145
+ to: 'now/M',
146
+ get title() {
147
+ return (0, i18n_1.i18n)('This month');
148
+ },
149
+ },
150
+ {
151
+ from: 'now/y',
152
+ to: 'now/y',
153
+ get title() {
154
+ return (0, i18n_1.i18n)('This year');
155
+ },
156
+ },
157
+ {
158
+ from: 'now/d',
159
+ to: 'now',
160
+ get title() {
161
+ return (0, i18n_1.i18n)('From start of day');
162
+ },
163
+ },
164
+ {
165
+ from: 'now/w',
166
+ to: 'now',
167
+ get title() {
168
+ return (0, i18n_1.i18n)('From start of week');
169
+ },
170
+ },
171
+ {
172
+ from: 'now/M',
173
+ to: 'now',
174
+ get title() {
175
+ return (0, i18n_1.i18n)('From start of month');
176
+ },
177
+ },
178
+ {
179
+ from: 'now/y',
180
+ to: 'now',
181
+ get title() {
182
+ return (0, i18n_1.i18n)('From start of year');
183
+ },
184
+ },
185
+ ];
186
+ exports.allPresets = exports.DEFAULT_TIME_PRESETS.concat(exports.DEFAULT_DATE_PRESETS, exports.DEFAULT_OTHERS_PRESETS);
@@ -0,0 +1,40 @@
1
+ {
2
+ "Last 5 minutes": "Last 5 minutes",
3
+ "Last 15 minutes": "Last 15 minutes",
4
+ "Last 30 minutes": "Last 30 minutes",
5
+ "Last hour": "Last hour",
6
+ "Last 3 hours": "Last 3 hours",
7
+ "Last 6 hours": "Last 6 hours",
8
+ "Last 12 hours": "Last 12 hours",
9
+ "Last day": "Last day",
10
+ "Last 3 days": "Last 3 days",
11
+ "Last week": "Last week",
12
+ "Last month": "Last month",
13
+ "Last 3 months": "Last 3 months",
14
+ "Last 6 months": "Last 6 months",
15
+ "Last year": "Last year",
16
+ "Last 3 years": "Last 3 years",
17
+ "Today": "Today",
18
+ "Yesterday": "Yesterday",
19
+ "Day before yesterday": "Day before yesterday",
20
+ "This week": "This week",
21
+ "This month": "This month",
22
+ "This year": "This year",
23
+ "From start of day": "From start of day",
24
+ "From start of week": "From start of week",
25
+ "From start of month": "From start of month",
26
+ "From start of year": "From start of year",
27
+ "Previous month": "Previous month",
28
+ "Last {count} {unit}": "Last {{count}} {{unit}}",
29
+ "m": ["minute", "minutes", "minutes"],
30
+ "h": ["hour", "hours", "hours"],
31
+ "d": ["day", "days", "days"],
32
+ "w": ["week", "weeks", "weeks"],
33
+ "M": ["month", "months", "months"],
34
+ "y": ["year", "years", "years"],
35
+ "Main": "Main",
36
+ "Other": "Other",
37
+ "Range": "Range",
38
+ "From": "From",
39
+ "To": "To"
40
+ }
@@ -0,0 +1 @@
1
+ export declare const i18n: (key: "m" | "y" | "M" | "d" | "h" | "w" | "Last 5 minutes" | "Last 15 minutes" | "Last 30 minutes" | "Last hour" | "Last 3 hours" | "Last 6 hours" | "Last 12 hours" | "Last day" | "Last 3 days" | "Last week" | "Last month" | "Last 3 months" | "Last 6 months" | "Last year" | "Last 3 years" | "Today" | "Yesterday" | "Day before yesterday" | "This week" | "This month" | "This year" | "From start of day" | "From start of week" | "From start of month" | "From start of year" | "Previous month" | "Main" | "Other" | "Range" | "From" | "To" | "Last {count} {unit}", params?: import("@gravity-ui/i18n").Params | undefined) => string;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.i18n = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const i18n_1 = require("@gravity-ui/uikit/i18n");
6
+ const cn_1 = require("../../../../../utils/cn");
7
+ const en_json_1 = tslib_1.__importDefault(require("./en.json"));
8
+ const ru_json_1 = tslib_1.__importDefault(require("./ru.json"));
9
+ exports.i18n = (0, i18n_1.addComponentKeysets)({ en: en_json_1.default, ru: ru_json_1.default }, `${cn_1.NAMESPACE}relative-range-date-picker-presets`);
@@ -0,0 +1,40 @@
1
+ {
2
+ "Last 5 minutes": "Последние 5 минут",
3
+ "Last 15 minutes": "Последние 15 минут",
4
+ "Last 30 minutes": "Последние 30 минут",
5
+ "Last hour": "Последний час",
6
+ "Last 3 hours": "Последние 3 часа",
7
+ "Last 6 hours": "Последние 6 часов",
8
+ "Last 12 hours": "Последние 12 часов",
9
+ "Last day": "Последний день",
10
+ "Last 3 days": "Последние 3 дня",
11
+ "Last week": "Последняя неделя",
12
+ "Last month": "Последний месяц",
13
+ "Last 3 months": "Последние 3 месяца",
14
+ "Last 6 months": "Последние 6 месяцев",
15
+ "Last year": "Последний год",
16
+ "Last 3 years": "Последние 3 года",
17
+ "Today": "Сегодня",
18
+ "Yesterday": "Вчера",
19
+ "Day before yesterday": "Позавчера",
20
+ "This week": "Эта неделя",
21
+ "This month": "Этот месяц",
22
+ "This year": "Этот год",
23
+ "From start of day": "С начала дня",
24
+ "From start of week": "С начала недели",
25
+ "From start of month": "С начала месяца",
26
+ "From start of year": "С начала года",
27
+ "Previous month": "Предыдущий месяц",
28
+ "Last {count} {unit}": "Last {{count}} {{unit}}",
29
+ "m": ["minute", "minutes", "minutes"],
30
+ "h": ["hour", "hours", "hours"],
31
+ "d": ["day", "days", "days"],
32
+ "w": ["week", "weeks", "weeks"],
33
+ "M": ["month", "months", "months"],
34
+ "y": ["year", "years", "years"],
35
+ "Main": "Основные",
36
+ "Other": "Другие",
37
+ "Range": "Период",
38
+ "From": "От",
39
+ "To": "До"
40
+ }